@nice2dev/game-engine 1.3.12 → 1.3.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/package.json +2 -2
- package/dist/types/accessibility/index.d.ts +0 -1
- package/dist/types/ai/index.d.ts +0 -1
- package/dist/types/animation/index.d.ts +0 -1
- package/dist/types/audio/HRTFAudio.d.ts +0 -180
- package/dist/types/audio/index.d.ts +0 -2
- package/dist/types/community/Community.d.ts +0 -112
- package/dist/types/community/index.d.ts +0 -1
- package/dist/types/core/TypeSafety.d.ts +0 -190
- package/dist/types/core/index.d.ts +0 -7
- package/dist/types/devtools/AssetStore.d.ts +0 -133
- package/dist/types/devtools/index.d.ts +0 -3
- package/dist/types/dialogue/index.d.ts +0 -2
- package/dist/types/docs/APIPlayground.d.ts +0 -26
- package/dist/types/docs/Cookbook.d.ts +0 -18
- package/dist/types/docs/Guides.d.ts +0 -18
- package/dist/types/docs/index.d.ts +0 -4
- package/dist/types/ecs/ECSOptimized.d.ts +0 -131
- package/dist/types/ecs/index.d.ts +0 -2
- package/dist/types/editor/NiceAnimationTimeline.d.ts +0 -114
- package/dist/types/editor/NiceLevelEditor.d.ts +0 -232
- package/dist/types/editor/NiceMaterialEditor.d.ts +0 -105
- package/dist/types/editor/NiceNodeGraph.d.ts +0 -87
- package/dist/types/editor/NiceParticleEditor.d.ts +0 -127
- package/dist/types/editor/behavior-tree/BTDebugPanel.d.ts +0 -102
- package/dist/types/editor/behavior-tree/BTEditorCanvas.d.ts +0 -79
- package/dist/types/editor/behavior-tree/BTEditorNode.d.ts +0 -58
- package/dist/types/editor/behavior-tree/BTEditorToolbar.d.ts +0 -75
- package/dist/types/editor/behavior-tree/BTNodePalette.d.ts +0 -72
- package/dist/types/editor/behavior-tree/BTPropertyPanel.d.ts +0 -66
- package/dist/types/editor/behavior-tree/BehaviorTreeEditor.d.ts +0 -186
- package/dist/types/editor/behavior-tree/index.d.ts +0 -14
- package/dist/types/editor/behavior-tree/serialization.d.ts +0 -30
- package/dist/types/editor/behavior-tree/types.d.ts +0 -299
- package/dist/types/editor/index.d.ts +0 -20
- package/dist/types/editor/state-machine/SMEditorCanvas.d.ts +0 -61
- package/dist/types/editor/state-machine/StateMachineEditor.d.ts +0 -139
- package/dist/types/editor/state-machine/index.d.ts +0 -11
- package/dist/types/editor/state-machine/serialization.d.ts +0 -23
- package/dist/types/editor/state-machine/types.d.ts +0 -241
- package/dist/types/engine/index.d.ts +0 -2
- package/dist/types/enterprise/index.d.ts +0 -1
- package/dist/types/epic/index.d.ts +0 -10
- package/dist/types/i18n/index.d.ts +0 -2
- package/dist/types/input/index.d.ts +0 -3
- package/dist/types/kids/index.d.ts +0 -2
- package/dist/types/legendary/index.d.ts +0 -57
- package/dist/types/monetization/index.d.ts +0 -1
- package/dist/types/multiplayer/NiceNetcode.d.ts +0 -434
- package/dist/types/multiplayer/index.d.ts +0 -5
- package/dist/types/network/index.d.ts +0 -2
- package/dist/types/pathfinding/index.d.ts +0 -1
- package/dist/types/performance/AssetCompression.d.ts +0 -137
- package/dist/types/performance/WASMModules.d.ts +0 -65
- package/dist/types/performance/WebGPUCompute.d.ts +0 -71
- package/dist/types/performance/index.d.ts +0 -1
- package/dist/types/physics/RapierIntegration.d.ts +0 -404
- package/dist/types/physics/index.d.ts +0 -2
- package/dist/types/plugins/index.d.ts +0 -2
- package/dist/types/procedural/index.d.ts +0 -2
- package/dist/types/release/index.d.ts +0 -1
- package/dist/types/rendering/WebGPUv2.d.ts +0 -173
- package/dist/types/rendering/index.d.ts +0 -3
- package/dist/types/runtime3d/index.d.ts +0 -2
- package/dist/types/scene/index.d.ts +0 -2
- package/dist/types/scripting/WasmCompiler.d.ts +0 -182
- package/dist/types/scripting/index.d.ts +0 -19
- package/dist/types/social/index.d.ts +0 -1
- package/dist/types/systems/NiceAI.d.ts +0 -637
- package/dist/types/systems/NiceAbility.d.ts +0 -225
- package/dist/types/systems/NiceAccessibility.d.ts +0 -230
- package/dist/types/systems/NiceAchievement.d.ts +0 -153
- package/dist/types/systems/NiceAchievementUI.d.ts +0 -196
- package/dist/types/systems/NiceAchievements.d.ts +0 -230
- package/dist/types/systems/NiceAction.d.ts +0 -81
- package/dist/types/systems/NiceAlchemy.d.ts +0 -195
- package/dist/types/systems/NiceAnalytics.d.ts +0 -493
- package/dist/types/systems/NiceAnimation.d.ts +0 -350
- package/dist/types/systems/NiceArena.d.ts +0 -215
- package/dist/types/systems/NiceAssetLoader.d.ts +0 -136
- package/dist/types/systems/NiceAuction.d.ts +0 -157
- package/dist/types/systems/NiceAudio.d.ts +0 -224
- package/dist/types/systems/NiceAugment.d.ts +0 -187
- package/dist/types/systems/NiceAura.d.ts +0 -193
- package/dist/types/systems/NiceBank.d.ts +0 -158
- package/dist/types/systems/NiceBattlePass.d.ts +0 -150
- package/dist/types/systems/NiceBehavior.d.ts +0 -160
- package/dist/types/systems/NiceBinding.d.ts +0 -96
- package/dist/types/systems/NiceBlacksmith.d.ts +0 -221
- package/dist/types/systems/NiceBuff.d.ts +0 -177
- package/dist/types/systems/NiceBuilding.d.ts +0 -207
- package/dist/types/systems/NiceBullet.d.ts +0 -167
- package/dist/types/systems/NiceCamera.d.ts +0 -252
- package/dist/types/systems/NiceCard.d.ts +0 -171
- package/dist/types/systems/NiceChat.d.ts +0 -148
- package/dist/types/systems/NiceCheat.d.ts +0 -375
- package/dist/types/systems/NiceClimbing.d.ts +0 -186
- package/dist/types/systems/NiceCloud.d.ts +0 -422
- package/dist/types/systems/NiceCollision.d.ts +0 -238
- package/dist/types/systems/NiceCombo.d.ts +0 -131
- package/dist/types/systems/NiceCommand.d.ts +0 -112
- package/dist/types/systems/NiceCompanion.d.ts +0 -182
- package/dist/types/systems/NiceController.d.ts +0 -144
- package/dist/types/systems/NiceCooking.d.ts +0 -193
- package/dist/types/systems/NiceCoroutine.d.ts +0 -101
- package/dist/types/systems/NiceCrafting.d.ts +0 -228
- package/dist/types/systems/NiceCutscene.d.ts +0 -437
- package/dist/types/systems/NiceDaily.d.ts +0 -133
- package/dist/types/systems/NiceDamage.d.ts +0 -271
- package/dist/types/systems/NiceDayNight.d.ts +0 -126
- package/dist/types/systems/NiceDebug.d.ts +0 -255
- package/dist/types/systems/NiceDestructible.d.ts +0 -150
- package/dist/types/systems/NiceDialogue.d.ts +0 -629
- package/dist/types/systems/NiceDungeon.d.ts +0 -202
- package/dist/types/systems/NiceECS.d.ts +0 -151
- package/dist/types/systems/NiceEnchant.d.ts +0 -148
- package/dist/types/systems/NiceEntityPool.d.ts +0 -127
- package/dist/types/systems/NiceEquipment.d.ts +0 -137
- package/dist/types/systems/NiceEvent.d.ts +0 -202
- package/dist/types/systems/NiceEventBus.d.ts +0 -164
- package/dist/types/systems/NiceFaction.d.ts +0 -173
- package/dist/types/systems/NiceFarming.d.ts +0 -163
- package/dist/types/systems/NiceFishing.d.ts +0 -196
- package/dist/types/systems/NiceFlocking.d.ts +0 -156
- package/dist/types/systems/NiceFog.d.ts +0 -137
- package/dist/types/systems/NiceFormation.d.ts +0 -140
- package/dist/types/systems/NiceGacha.d.ts +0 -134
- package/dist/types/systems/NiceGambling.d.ts +0 -175
- package/dist/types/systems/NiceGem.d.ts +0 -165
- package/dist/types/systems/NiceGesture.d.ts +0 -502
- package/dist/types/systems/NiceGrappling.d.ts +0 -154
- package/dist/types/systems/NiceGrid.d.ts +0 -142
- package/dist/types/systems/NiceGuild.d.ts +0 -162
- package/dist/types/systems/NiceHaptics.d.ts +0 -112
- package/dist/types/systems/NiceHousing.d.ts +0 -197
- package/dist/types/systems/NiceInput.d.ts +0 -280
- package/dist/types/systems/NiceInventory.d.ts +0 -534
- package/dist/types/systems/NiceLOD.d.ts +0 -144
- package/dist/types/systems/NiceLeaderboard.d.ts +0 -191
- package/dist/types/systems/NiceLevel.d.ts +0 -304
- package/dist/types/systems/NiceLighting.d.ts +0 -214
- package/dist/types/systems/NiceLocalization.d.ts +0 -148
- package/dist/types/systems/NiceLocomotion.d.ts +0 -398
- package/dist/types/systems/NiceLogger.d.ts +0 -117
- package/dist/types/systems/NiceLoot.d.ts +0 -176
- package/dist/types/systems/NiceMail.d.ts +0 -164
- package/dist/types/systems/NiceMap.d.ts +0 -234
- package/dist/types/systems/NiceMarriage.d.ts +0 -150
- package/dist/types/systems/NiceMastery.d.ts +0 -171
- package/dist/types/systems/NiceMatch.d.ts +0 -196
- package/dist/types/systems/NiceMatch3.d.ts +0 -118
- package/dist/types/systems/NiceMessageBus.d.ts +0 -115
- package/dist/types/systems/NiceMinimap.d.ts +0 -258
- package/dist/types/systems/NiceMining.d.ts +0 -175
- package/dist/types/systems/NiceModding.d.ts +0 -452
- package/dist/types/systems/NiceMount.d.ts +0 -152
- package/dist/types/systems/NiceNavigation.d.ts +0 -307
- package/dist/types/systems/NiceNetwork.d.ts +0 -568
- package/dist/types/systems/NiceNotification.d.ts +0 -438
- package/dist/types/systems/NiceObjective.d.ts +0 -395
- package/dist/types/systems/NiceParticle.d.ts +0 -639
- package/dist/types/systems/NiceParty.d.ts +0 -168
- package/dist/types/systems/NicePerformance.d.ts +0 -144
- package/dist/types/systems/NicePet.d.ts +0 -167
- package/dist/types/systems/NicePhotoMode.d.ts +0 -270
- package/dist/types/systems/NicePhysics.d.ts +0 -326
- package/dist/types/systems/NicePlatformer.d.ts +0 -158
- package/dist/types/systems/NicePool.d.ts +0 -128
- package/dist/types/systems/NicePortal.d.ts +0 -178
- package/dist/types/systems/NicePostProcess.d.ts +0 -254
- package/dist/types/systems/NiceProcedural.d.ts +0 -202
- package/dist/types/systems/NiceProfile.d.ts +0 -223
- package/dist/types/systems/NiceProjectile.d.ts +0 -157
- package/dist/types/systems/NicePvP.d.ts +0 -199
- package/dist/types/systems/NiceQTE.d.ts +0 -160
- package/dist/types/systems/NiceQuest.d.ts +0 -620
- package/dist/types/systems/NiceRaid.d.ts +0 -215
- package/dist/types/systems/NiceRanking.d.ts +0 -399
- package/dist/types/systems/NiceReplay.d.ts +0 -180
- package/dist/types/systems/NiceReputation.d.ts +0 -151
- package/dist/types/systems/NiceResource.d.ts +0 -200
- package/dist/types/systems/NiceRhythm.d.ts +0 -148
- package/dist/types/systems/NiceRoguelike.d.ts +0 -276
- package/dist/types/systems/NiceRune.d.ts +0 -202
- package/dist/types/systems/NiceSaveSystem.d.ts +0 -194
- package/dist/types/systems/NiceSceneManager.d.ts +0 -112
- package/dist/types/systems/NiceScore.d.ts +0 -186
- package/dist/types/systems/NiceScreenFX.d.ts +0 -235
- package/dist/types/systems/NiceScreenshot.d.ts +0 -443
- package/dist/types/systems/NiceScribe.d.ts +0 -239
- package/dist/types/systems/NiceSeason.d.ts +0 -176
- package/dist/types/systems/NiceSerialization.d.ts +0 -89
- package/dist/types/systems/NiceServiceLocator.d.ts +0 -94
- package/dist/types/systems/NiceShop.d.ts +0 -528
- package/dist/types/systems/NiceSignal.d.ts +0 -112
- package/dist/types/systems/NiceSkillTree.d.ts +0 -237
- package/dist/types/systems/NiceSocial.d.ts +0 -580
- package/dist/types/systems/NiceSpawner.d.ts +0 -237
- package/dist/types/systems/NiceSpell.d.ts +0 -216
- package/dist/types/systems/NiceState.d.ts +0 -224
- package/dist/types/systems/NiceStateMachine.d.ts +0 -108
- package/dist/types/systems/NiceStatus.d.ts +0 -116
- package/dist/types/systems/NiceStealth.d.ts +0 -204
- package/dist/types/systems/NiceSteam.d.ts +0 -255
- package/dist/types/systems/NiceStreaming.d.ts +0 -173
- package/dist/types/systems/NiceSwimming.d.ts +0 -166
- package/dist/types/systems/NiceTalent.d.ts +0 -154
- package/dist/types/systems/NiceTarget.d.ts +0 -121
- package/dist/types/systems/NiceTerrain.d.ts +0 -143
- package/dist/types/systems/NiceTilemap.d.ts +0 -218
- package/dist/types/systems/NiceTimer.d.ts +0 -153
- package/dist/types/systems/NiceTournament.d.ts +0 -190
- package/dist/types/systems/NiceTrading.d.ts +0 -238
- package/dist/types/systems/NiceTransmog.d.ts +0 -142
- package/dist/types/systems/NiceTutorial.d.ts +0 -248
- package/dist/types/systems/NiceTween.d.ts +0 -164
- package/dist/types/systems/NiceUI.d.ts +0 -364
- package/dist/types/systems/NiceVFX.d.ts +0 -333
- package/dist/types/systems/NiceVehicle.d.ts +0 -176
- package/dist/types/systems/NiceVoice.d.ts +0 -502
- package/dist/types/systems/NiceWater.d.ts +0 -162
- package/dist/types/systems/NiceWave.d.ts +0 -174
- package/dist/types/systems/NiceWaypoint.d.ts +0 -165
- package/dist/types/systems/NiceWeather.d.ts +0 -225
- package/dist/types/systems/NiceXR.d.ts +0 -187
- package/dist/types/systems/index.d.ts +0 -182
- package/dist/types/templates/index.d.ts +0 -2
- package/dist/types/tilemap/index.d.ts +0 -1
- package/dist/types/tutorials/TutorialEditor.d.ts +0 -43
- package/dist/types/tutorials/VoiceNarration.d.ts +0 -75
- package/dist/types/tutorials/content/Tutorials_T04.d.ts +0 -3
- package/dist/types/tutorials/content/UITutorials.d.ts +0 -14
- package/dist/types/tutorials/content/index.d.ts +0 -5
- package/dist/types/tutorials/index.d.ts +0 -6
- package/dist/types/ui/index.d.ts +0 -2
- package/dist/types/visual-scripting/VisualScriptDebugger.d.ts +0 -145
- package/dist/types/visual-scripting/VisualScriptExecutor.d.ts +0 -100
- package/dist/types/visual-scripting/VisualScriptGraph.d.ts +0 -173
- package/dist/types/visual-scripting/VisualScriptNode.d.ts +0 -157
- package/dist/types/visual-scripting/index.d.ts +0 -6
- package/dist/types/visual-scripting/nodes/ActionNodes.d.ts +0 -152
- package/dist/types/visual-scripting/nodes/EventNodes.d.ts +0 -95
- package/dist/types/visual-scripting/nodes/FlowControlNodes.d.ts +0 -134
- package/dist/types/visual-scripting/nodes/LogicNodes.d.ts +0 -122
- package/dist/types/visual-scripting/nodes/MathNodes.d.ts +0 -170
- package/dist/types/visual-scripting/nodes/UtilityNodes.d.ts +0 -131
- package/dist/types/visual-scripting/nodes/VariableNodes.d.ts +0 -107
- package/dist/types/visual-scripting/nodes/index.d.ts +0 -21
- package/dist/types/visual-scripting/nodes/registerNodes.d.ts +0 -29
- package/dist/types/visual-scripting/types.d.ts +0 -402
- package/dist/types/xr/WebXRLayers.d.ts +0 -319
- package/dist/types/xr/index.d.ts +0 -2
|
@@ -1,202 +0,0 @@
|
|
|
1
|
-
export type DungeonId = string;
|
|
2
|
-
export type RoomId = string;
|
|
3
|
-
export type EncounterId = string;
|
|
4
|
-
export type LootTableId = string;
|
|
5
|
-
export type DungeonStatus = 'pending' | 'active' | 'completed' | 'failed' | 'abandoned';
|
|
6
|
-
export type RoomType = 'start' | 'normal' | 'elite' | 'treasure' | 'shop' | 'rest' | 'boss' | 'secret';
|
|
7
|
-
export type DifficultyTier = 'normal' | 'hard' | 'nightmare' | 'inferno';
|
|
8
|
-
export interface RoomConnection {
|
|
9
|
-
targetRoomId: RoomId;
|
|
10
|
-
direction: 'north' | 'south' | 'east' | 'west' | 'up' | 'down';
|
|
11
|
-
locked?: boolean;
|
|
12
|
-
keyRequired?: string;
|
|
13
|
-
}
|
|
14
|
-
export interface RoomEncounter {
|
|
15
|
-
enemies: Array<{
|
|
16
|
-
enemyId: string;
|
|
17
|
-
count: number;
|
|
18
|
-
level?: number;
|
|
19
|
-
}>;
|
|
20
|
-
isBoss?: boolean;
|
|
21
|
-
eliteChance?: number;
|
|
22
|
-
}
|
|
23
|
-
export interface RoomReward {
|
|
24
|
-
lootTable?: LootTableId;
|
|
25
|
-
guaranteedItems?: Array<{
|
|
26
|
-
itemId: string;
|
|
27
|
-
quantity: number;
|
|
28
|
-
}>;
|
|
29
|
-
currency?: {
|
|
30
|
-
type: string;
|
|
31
|
-
amount: number;
|
|
32
|
-
};
|
|
33
|
-
experience?: number;
|
|
34
|
-
}
|
|
35
|
-
export interface RoomDefinition {
|
|
36
|
-
id: RoomId;
|
|
37
|
-
name: string;
|
|
38
|
-
description?: string;
|
|
39
|
-
type: RoomType;
|
|
40
|
-
width?: number;
|
|
41
|
-
height?: number;
|
|
42
|
-
tilemap?: string;
|
|
43
|
-
encounter?: RoomEncounter;
|
|
44
|
-
reward?: RoomReward;
|
|
45
|
-
interactables?: Array<{
|
|
46
|
-
type: string;
|
|
47
|
-
position: {
|
|
48
|
-
x: number;
|
|
49
|
-
y: number;
|
|
50
|
-
};
|
|
51
|
-
data?: unknown;
|
|
52
|
-
}>;
|
|
53
|
-
connections: RoomConnection[];
|
|
54
|
-
background?: string;
|
|
55
|
-
ambience?: string;
|
|
56
|
-
}
|
|
57
|
-
export interface RoomInstance {
|
|
58
|
-
roomId: RoomId;
|
|
59
|
-
definition: RoomDefinition;
|
|
60
|
-
status: 'unvisited' | 'active' | 'cleared' | 'failed';
|
|
61
|
-
enemiesRemaining: number;
|
|
62
|
-
rewardCollected: boolean;
|
|
63
|
-
discoveredConnections: RoomId[];
|
|
64
|
-
visitCount: number;
|
|
65
|
-
}
|
|
66
|
-
export interface DungeonDefinition {
|
|
67
|
-
id: DungeonId;
|
|
68
|
-
name: string;
|
|
69
|
-
description: string;
|
|
70
|
-
theme: string;
|
|
71
|
-
recommendedLevel: number;
|
|
72
|
-
difficulty: DifficultyTier;
|
|
73
|
-
rooms: RoomDefinition[];
|
|
74
|
-
startRoomId: RoomId;
|
|
75
|
-
bossRoomId?: RoomId;
|
|
76
|
-
procedural?: {
|
|
77
|
-
minRooms: number;
|
|
78
|
-
maxRooms: number;
|
|
79
|
-
roomTypes: Array<{
|
|
80
|
-
type: RoomType;
|
|
81
|
-
weight: number;
|
|
82
|
-
}>;
|
|
83
|
-
branchChance: number;
|
|
84
|
-
loopChance: number;
|
|
85
|
-
};
|
|
86
|
-
lootTables: Map<LootTableId, LootTable>;
|
|
87
|
-
maxPlayers?: number;
|
|
88
|
-
timeLimit?: number;
|
|
89
|
-
maxDeaths?: number;
|
|
90
|
-
entryCost?: {
|
|
91
|
-
type: string;
|
|
92
|
-
amount: number;
|
|
93
|
-
};
|
|
94
|
-
requiresKey?: string;
|
|
95
|
-
minPlayerLevel?: number;
|
|
96
|
-
icon?: string;
|
|
97
|
-
banner?: string;
|
|
98
|
-
}
|
|
99
|
-
export interface LootTable {
|
|
100
|
-
id: LootTableId;
|
|
101
|
-
entries: Array<{
|
|
102
|
-
itemId: string;
|
|
103
|
-
weight: number;
|
|
104
|
-
minQuantity: number;
|
|
105
|
-
maxQuantity: number;
|
|
106
|
-
dropChance: number;
|
|
107
|
-
}>;
|
|
108
|
-
}
|
|
109
|
-
export interface DungeonInstance {
|
|
110
|
-
instanceId: string;
|
|
111
|
-
dungeonId: DungeonId;
|
|
112
|
-
definition: DungeonDefinition;
|
|
113
|
-
status: DungeonStatus;
|
|
114
|
-
currentRoomId: RoomId;
|
|
115
|
-
rooms: Map<RoomId, RoomInstance>;
|
|
116
|
-
startTime: number;
|
|
117
|
-
endTime?: number;
|
|
118
|
-
roomsCleared: number;
|
|
119
|
-
totalRooms: number;
|
|
120
|
-
bossDefeated: boolean;
|
|
121
|
-
enemiesKilled: number;
|
|
122
|
-
damageTaken: number;
|
|
123
|
-
damageDealt: number;
|
|
124
|
-
itemsCollected: number;
|
|
125
|
-
currencyCollected: Record<string, number>;
|
|
126
|
-
deaths: number;
|
|
127
|
-
players: string[];
|
|
128
|
-
difficultyMultiplier: number;
|
|
129
|
-
lootMultiplier: number;
|
|
130
|
-
}
|
|
131
|
-
export type DungeonEventType = 'dungeon-started' | 'dungeon-completed' | 'dungeon-failed' | 'dungeon-abandoned' | 'room-entered' | 'room-cleared' | 'boss-encountered' | 'boss-defeated' | 'loot-dropped' | 'secret-found' | 'player-died';
|
|
132
|
-
export interface DungeonEvent {
|
|
133
|
-
type: DungeonEventType;
|
|
134
|
-
timestamp: number;
|
|
135
|
-
instanceId: string;
|
|
136
|
-
dungeonId: DungeonId;
|
|
137
|
-
data?: unknown;
|
|
138
|
-
}
|
|
139
|
-
export type DungeonEventCallback = (event: DungeonEvent) => void;
|
|
140
|
-
export interface DungeonConfig {
|
|
141
|
-
difficultyScaling: Record<DifficultyTier, {
|
|
142
|
-
healthMultiplier: number;
|
|
143
|
-
damageMultiplier: number;
|
|
144
|
-
lootMultiplier: number;
|
|
145
|
-
expMultiplier: number;
|
|
146
|
-
}>;
|
|
147
|
-
maxConcurrentInstances: number;
|
|
148
|
-
instanceTimeout: number;
|
|
149
|
-
autoCleanupDelay: number;
|
|
150
|
-
storageKey: string;
|
|
151
|
-
}
|
|
152
|
-
export declare const DEFAULT_DUNGEON_CONFIG: DungeonConfig;
|
|
153
|
-
export declare class NiceDungeon {
|
|
154
|
-
private config;
|
|
155
|
-
private definitions;
|
|
156
|
-
private instances;
|
|
157
|
-
private playerInstances;
|
|
158
|
-
private eventListeners;
|
|
159
|
-
private instanceCounter;
|
|
160
|
-
constructor(config?: Partial<DungeonConfig>);
|
|
161
|
-
on(event: DungeonEventType, callback: DungeonEventCallback): () => void;
|
|
162
|
-
private emit;
|
|
163
|
-
registerDungeon(definition: DungeonDefinition): void;
|
|
164
|
-
getDungeon(dungeonId: DungeonId): DungeonDefinition | undefined;
|
|
165
|
-
getAllDungeons(): DungeonDefinition[];
|
|
166
|
-
createInstance(dungeonId: DungeonId, players: string[], options?: {
|
|
167
|
-
difficulty?: DifficultyTier;
|
|
168
|
-
procedural?: boolean;
|
|
169
|
-
}): DungeonInstance | null;
|
|
170
|
-
private createRoomInstance;
|
|
171
|
-
private generateProceduralRooms;
|
|
172
|
-
startInstance(instanceId: string): boolean;
|
|
173
|
-
abandonInstance(instanceId: string): boolean;
|
|
174
|
-
private cleanupPlayerInstances;
|
|
175
|
-
enterRoom(instanceId: string, roomId: RoomId): boolean;
|
|
176
|
-
killEnemy(instanceId: string, damage?: number): void;
|
|
177
|
-
clearRoom(instanceId: string): void;
|
|
178
|
-
playerDied(instanceId: string, damage?: number): void;
|
|
179
|
-
collectRoomReward(instanceId: string): RoomReward | null;
|
|
180
|
-
rollLootTable(instanceId: string, tableId: LootTableId): Array<{
|
|
181
|
-
itemId: string;
|
|
182
|
-
quantity: number;
|
|
183
|
-
}>;
|
|
184
|
-
private completeDungeon;
|
|
185
|
-
private failDungeon;
|
|
186
|
-
private getCompletionStats;
|
|
187
|
-
getInstance(instanceId: string): DungeonInstance | undefined;
|
|
188
|
-
getPlayerInstance(playerId: string): DungeonInstance | undefined;
|
|
189
|
-
getCurrentRoom(instanceId: string): RoomInstance | undefined;
|
|
190
|
-
getAvailableConnections(instanceId: string): RoomConnection[];
|
|
191
|
-
getProgress(instanceId: string): {
|
|
192
|
-
cleared: number;
|
|
193
|
-
total: number;
|
|
194
|
-
percent: number;
|
|
195
|
-
} | null;
|
|
196
|
-
cleanupCompletedInstances(): number;
|
|
197
|
-
private save;
|
|
198
|
-
private load;
|
|
199
|
-
reset(): void;
|
|
200
|
-
destroy(): void;
|
|
201
|
-
}
|
|
202
|
-
export declare function createDungeonSystem(config?: Partial<DungeonConfig>): NiceDungeon;
|
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
export type EntityId = number;
|
|
2
|
-
export type ComponentType = string;
|
|
3
|
-
export type SystemId = string;
|
|
4
|
-
export type QueryId = string;
|
|
5
|
-
export type TagId = string;
|
|
6
|
-
export type GroupId = string;
|
|
7
|
-
export type PrefabId = string;
|
|
8
|
-
export interface Component {
|
|
9
|
-
type: ComponentType;
|
|
10
|
-
}
|
|
11
|
-
export interface ComponentDefinition<T extends Component = Component> {
|
|
12
|
-
type: ComponentType;
|
|
13
|
-
default: () => Omit<T, 'type'>;
|
|
14
|
-
schema?: Record<string, 'number' | 'string' | 'boolean' | 'object' | 'array'>;
|
|
15
|
-
}
|
|
16
|
-
export interface Entity {
|
|
17
|
-
id: EntityId;
|
|
18
|
-
active: boolean;
|
|
19
|
-
components: Map<ComponentType, Component>;
|
|
20
|
-
tags: Set<TagId>;
|
|
21
|
-
groups: Set<GroupId>;
|
|
22
|
-
parent?: EntityId;
|
|
23
|
-
children: EntityId[];
|
|
24
|
-
}
|
|
25
|
-
export interface EntityData {
|
|
26
|
-
components?: Record<ComponentType, Partial<Component>>;
|
|
27
|
-
tags?: TagId[];
|
|
28
|
-
groups?: GroupId[];
|
|
29
|
-
children?: EntityData[];
|
|
30
|
-
}
|
|
31
|
-
export type SystemPriority = number;
|
|
32
|
-
export interface System {
|
|
33
|
-
id: SystemId;
|
|
34
|
-
priority: SystemPriority;
|
|
35
|
-
enabled: boolean;
|
|
36
|
-
query: QueryDefinition;
|
|
37
|
-
init?: () => void;
|
|
38
|
-
update: (entities: EntityId[], deltaTime: number) => void;
|
|
39
|
-
destroy?: () => void;
|
|
40
|
-
}
|
|
41
|
-
export interface QueryDefinition {
|
|
42
|
-
all?: ComponentType[];
|
|
43
|
-
any?: ComponentType[];
|
|
44
|
-
none?: ComponentType[];
|
|
45
|
-
tags?: {
|
|
46
|
-
all?: TagId[];
|
|
47
|
-
any?: TagId[];
|
|
48
|
-
none?: TagId[];
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
export interface Prefab {
|
|
52
|
-
id: PrefabId;
|
|
53
|
-
name: string;
|
|
54
|
-
data: EntityData;
|
|
55
|
-
}
|
|
56
|
-
export type ECSEventType = 'entity-created' | 'entity-destroyed' | 'component-added' | 'component-removed' | 'tag-added' | 'tag-removed' | 'system-added' | 'system-removed';
|
|
57
|
-
export interface ECSEvent {
|
|
58
|
-
type: ECSEventType;
|
|
59
|
-
timestamp: number;
|
|
60
|
-
entityId?: EntityId;
|
|
61
|
-
data?: unknown;
|
|
62
|
-
}
|
|
63
|
-
export type ECSEventCallback = (event: ECSEvent) => void;
|
|
64
|
-
export interface ECSConfig {
|
|
65
|
-
/** Initial entity pool size */
|
|
66
|
-
initialPoolSize: number;
|
|
67
|
-
/** Max entities */
|
|
68
|
-
maxEntities: number;
|
|
69
|
-
/** Enable entity pooling */
|
|
70
|
-
poolEntities: boolean;
|
|
71
|
-
/** Debug mode */
|
|
72
|
-
debug: boolean;
|
|
73
|
-
}
|
|
74
|
-
export declare const DEFAULT_ECS_CONFIG: ECSConfig;
|
|
75
|
-
export declare class NiceECS {
|
|
76
|
-
private config;
|
|
77
|
-
private entities;
|
|
78
|
-
private entityPool;
|
|
79
|
-
private nextEntityId;
|
|
80
|
-
private componentDefs;
|
|
81
|
-
private componentStorage;
|
|
82
|
-
private systems;
|
|
83
|
-
private queries;
|
|
84
|
-
private queryDefinitions;
|
|
85
|
-
private tags;
|
|
86
|
-
private groups;
|
|
87
|
-
private prefabs;
|
|
88
|
-
private eventListeners;
|
|
89
|
-
private deferredOperations;
|
|
90
|
-
private updating;
|
|
91
|
-
constructor(config?: Partial<ECSConfig>);
|
|
92
|
-
on(event: ECSEventType, callback: ECSEventCallback): () => void;
|
|
93
|
-
private emit;
|
|
94
|
-
registerComponent<T extends Component>(def: ComponentDefinition<T>): void;
|
|
95
|
-
registerComponents(defs: ComponentDefinition[]): void;
|
|
96
|
-
createEntity(data?: EntityData): EntityId;
|
|
97
|
-
destroyEntity(id: EntityId): void;
|
|
98
|
-
getEntity(id: EntityId): Entity | undefined;
|
|
99
|
-
entityExists(id: EntityId): boolean;
|
|
100
|
-
setActive(id: EntityId, active: boolean): void;
|
|
101
|
-
isActive(id: EntityId): boolean;
|
|
102
|
-
addComponent<T extends Component>(entityId: EntityId, type: ComponentType, data?: Partial<Omit<T, 'type'>>): T;
|
|
103
|
-
removeComponent(entityId: EntityId, type: ComponentType): void;
|
|
104
|
-
getComponent<T extends Component>(entityId: EntityId, type: ComponentType): T | undefined;
|
|
105
|
-
hasComponent(entityId: EntityId, type: ComponentType): boolean;
|
|
106
|
-
hasComponents(entityId: EntityId, types: ComponentType[]): boolean;
|
|
107
|
-
getComponentsOfType<T extends Component>(type: ComponentType): Array<[EntityId, T]>;
|
|
108
|
-
addTag(entityId: EntityId, tag: TagId): void;
|
|
109
|
-
removeTag(entityId: EntityId, tag: TagId): void;
|
|
110
|
-
hasTag(entityId: EntityId, tag: TagId): boolean;
|
|
111
|
-
getEntitiesWithTag(tag: TagId): EntityId[];
|
|
112
|
-
addToGroup(entityId: EntityId, group: GroupId): void;
|
|
113
|
-
removeFromGroup(entityId: EntityId, group: GroupId): void;
|
|
114
|
-
getGroup(group: GroupId): EntityId[];
|
|
115
|
-
setParent(entityId: EntityId, parentId: EntityId | undefined): void;
|
|
116
|
-
getParent(entityId: EntityId): EntityId | undefined;
|
|
117
|
-
getChildren(entityId: EntityId): EntityId[];
|
|
118
|
-
getDescendants(entityId: EntityId): EntityId[];
|
|
119
|
-
createQuery(definition: QueryDefinition): QueryId;
|
|
120
|
-
getQueryResults(queryId: QueryId): EntityId[];
|
|
121
|
-
query(definition: QueryDefinition): EntityId[];
|
|
122
|
-
private matchesQuery;
|
|
123
|
-
private updateQueries;
|
|
124
|
-
addSystem(system: System): void;
|
|
125
|
-
removeSystem(systemId: SystemId): void;
|
|
126
|
-
getSystem(systemId: SystemId): System | undefined;
|
|
127
|
-
enableSystem(systemId: SystemId): void;
|
|
128
|
-
disableSystem(systemId: SystemId): void;
|
|
129
|
-
update(deltaTime: number): void;
|
|
130
|
-
registerPrefab(prefab: Prefab): void;
|
|
131
|
-
instantiatePrefab(prefabId: PrefabId, overrides?: Partial<EntityData>): EntityId;
|
|
132
|
-
serialize(): string;
|
|
133
|
-
deserialize(json: string): void;
|
|
134
|
-
getStats(): {
|
|
135
|
-
entityCount: number;
|
|
136
|
-
componentCount: number;
|
|
137
|
-
systemCount: number;
|
|
138
|
-
queryCount: number;
|
|
139
|
-
poolSize: number;
|
|
140
|
-
};
|
|
141
|
-
clear(): void;
|
|
142
|
-
destroy(): void;
|
|
143
|
-
}
|
|
144
|
-
export declare function createECS(config?: Partial<ECSConfig>): NiceECS;
|
|
145
|
-
export declare function defineComponent<T extends object>(type: ComponentType, defaultFn: () => T): ComponentDefinition<T & Component>;
|
|
146
|
-
export declare function defineSystem(id: SystemId, query: QueryDefinition, update: (entities: EntityId[], deltaTime: number) => void, options?: {
|
|
147
|
-
priority?: number;
|
|
148
|
-
enabled?: boolean;
|
|
149
|
-
init?: () => void;
|
|
150
|
-
destroy?: () => void;
|
|
151
|
-
}): System;
|
|
@@ -1,148 +0,0 @@
|
|
|
1
|
-
export type EnchantId = string;
|
|
2
|
-
export type ItemId = string;
|
|
3
|
-
export type MaterialId = string;
|
|
4
|
-
export type ScrollId = string;
|
|
5
|
-
export type EnchantCategory = 'weapon' | 'armor' | 'accessory' | 'tool' | 'any';
|
|
6
|
-
export type EnchantEffect = 'stat' | 'effect' | 'skill' | 'elemental' | 'special';
|
|
7
|
-
export interface EnchantModifier {
|
|
8
|
-
stat: string;
|
|
9
|
-
type: 'flat' | 'percent';
|
|
10
|
-
value: number;
|
|
11
|
-
perLevel?: number;
|
|
12
|
-
}
|
|
13
|
-
export interface EnchantDefinition {
|
|
14
|
-
id: EnchantId;
|
|
15
|
-
name: string;
|
|
16
|
-
description: string;
|
|
17
|
-
category: EnchantCategory;
|
|
18
|
-
effectType: EnchantEffect;
|
|
19
|
-
modifiers: EnchantModifier[];
|
|
20
|
-
maxLevel: number;
|
|
21
|
-
icon?: string;
|
|
22
|
-
particleEffect?: string;
|
|
23
|
-
glowColor?: string;
|
|
24
|
-
minItemLevel?: number;
|
|
25
|
-
maxItemLevel?: number;
|
|
26
|
-
allowedItemTypes?: string[];
|
|
27
|
-
excludedItemTypes?: string[];
|
|
28
|
-
conflictsWith?: EnchantId[];
|
|
29
|
-
rarity: string;
|
|
30
|
-
tags?: string[];
|
|
31
|
-
}
|
|
32
|
-
export interface EnchantInstance {
|
|
33
|
-
enchantId: EnchantId;
|
|
34
|
-
level: number;
|
|
35
|
-
appliedAt: number;
|
|
36
|
-
}
|
|
37
|
-
export interface EnhancementLevel {
|
|
38
|
-
level: number;
|
|
39
|
-
successRate: number;
|
|
40
|
-
destroyRate: number;
|
|
41
|
-
downgradeRate: number;
|
|
42
|
-
materials: Array<{
|
|
43
|
-
materialId: MaterialId;
|
|
44
|
-
quantity: number;
|
|
45
|
-
}>;
|
|
46
|
-
goldCost: number;
|
|
47
|
-
bonusMultiplier: number;
|
|
48
|
-
}
|
|
49
|
-
export interface EnhancementConfig {
|
|
50
|
-
maxLevel: number;
|
|
51
|
-
levels: EnhancementLevel[];
|
|
52
|
-
safeLevel: number;
|
|
53
|
-
useProtection: boolean;
|
|
54
|
-
protectionItemId?: MaterialId;
|
|
55
|
-
}
|
|
56
|
-
export interface EnchantScroll {
|
|
57
|
-
id: ScrollId;
|
|
58
|
-
name: string;
|
|
59
|
-
description: string;
|
|
60
|
-
enchantId: EnchantId;
|
|
61
|
-
targetLevel: number;
|
|
62
|
-
successRateBonus: number;
|
|
63
|
-
isGuaranteed: boolean;
|
|
64
|
-
consumable: boolean;
|
|
65
|
-
}
|
|
66
|
-
export type EnchantResult = 'success' | 'fail' | 'destroy' | 'downgrade' | 'protected';
|
|
67
|
-
export interface EnchantAttemptResult {
|
|
68
|
-
result: EnchantResult;
|
|
69
|
-
newLevel: number;
|
|
70
|
-
previousLevel: number;
|
|
71
|
-
successRate: number;
|
|
72
|
-
materialsConsumed: Array<{
|
|
73
|
-
materialId: MaterialId;
|
|
74
|
-
quantity: number;
|
|
75
|
-
}>;
|
|
76
|
-
goldConsumed: number;
|
|
77
|
-
itemDestroyed: boolean;
|
|
78
|
-
protectionUsed: boolean;
|
|
79
|
-
}
|
|
80
|
-
export type EnchantEventType = 'enchant-applied' | 'enchant-removed' | 'enchant-upgraded' | 'enchant-failed' | 'enchant-destroyed' | 'enchant-downgraded' | 'enchant-protected' | 'enchant-transferred';
|
|
81
|
-
export interface EnchantEvent {
|
|
82
|
-
type: EnchantEventType;
|
|
83
|
-
timestamp: number;
|
|
84
|
-
itemId: ItemId;
|
|
85
|
-
data?: unknown;
|
|
86
|
-
}
|
|
87
|
-
export type EnchantEventCallback = (event: EnchantEvent) => void;
|
|
88
|
-
export interface EnchantSystemConfig {
|
|
89
|
-
maxEnchantsPerItem: number;
|
|
90
|
-
enableDestruction: boolean;
|
|
91
|
-
enableDowngrade: boolean;
|
|
92
|
-
luckyEnhanceChance: number;
|
|
93
|
-
superSuccessMultiplier: number;
|
|
94
|
-
transferCostMultiplier: number;
|
|
95
|
-
storageKey: string;
|
|
96
|
-
}
|
|
97
|
-
export declare const DEFAULT_ENCHANT_CONFIG: EnchantSystemConfig;
|
|
98
|
-
export declare const DEFAULT_ENHANCEMENT_LEVELS: EnhancementLevel[];
|
|
99
|
-
export declare class NiceEnchant {
|
|
100
|
-
private config;
|
|
101
|
-
private definitions;
|
|
102
|
-
private scrolls;
|
|
103
|
-
private enhancementConfigs;
|
|
104
|
-
private itemEnchants;
|
|
105
|
-
private itemLevels;
|
|
106
|
-
private eventListeners;
|
|
107
|
-
constructor(config?: Partial<EnchantSystemConfig>);
|
|
108
|
-
on(event: EnchantEventType, callback: EnchantEventCallback): () => void;
|
|
109
|
-
private emit;
|
|
110
|
-
registerEnchant(definition: EnchantDefinition): void;
|
|
111
|
-
registerScroll(scroll: EnchantScroll): void;
|
|
112
|
-
registerEnhancementConfig(itemType: string, config: EnhancementConfig): void;
|
|
113
|
-
canApplyEnchant(itemId: ItemId, enchantId: EnchantId, itemData?: {
|
|
114
|
-
type?: string;
|
|
115
|
-
level?: number;
|
|
116
|
-
}): {
|
|
117
|
-
can: boolean;
|
|
118
|
-
reason?: string;
|
|
119
|
-
};
|
|
120
|
-
applyEnchant(itemId: ItemId, enchantId: EnchantId, level?: number): boolean;
|
|
121
|
-
removeEnchant(itemId: ItemId, enchantId: EnchantId): boolean;
|
|
122
|
-
getEnhancementInfo(itemId: ItemId, itemType?: string): EnhancementLevel | null;
|
|
123
|
-
enhance(itemId: ItemId, itemType?: string, options?: {
|
|
124
|
-
useProtection?: boolean;
|
|
125
|
-
successRateBonus?: number;
|
|
126
|
-
materials?: Map<MaterialId, number>;
|
|
127
|
-
gold?: number;
|
|
128
|
-
}): EnchantAttemptResult | null;
|
|
129
|
-
useScroll(itemId: ItemId, scrollId: ScrollId): boolean;
|
|
130
|
-
transferEnchant(sourceItemId: ItemId, targetItemId: ItemId, enchantId: EnchantId, targetItemData?: {
|
|
131
|
-
type?: string;
|
|
132
|
-
level?: number;
|
|
133
|
-
}): {
|
|
134
|
-
success: boolean;
|
|
135
|
-
cost: number;
|
|
136
|
-
};
|
|
137
|
-
calculateEnchantStats(itemId: ItemId): Record<string, number>;
|
|
138
|
-
getEnchant(enchantId: EnchantId): EnchantDefinition | undefined;
|
|
139
|
-
getItemEnchants(itemId: ItemId): EnchantInstance[];
|
|
140
|
-
getItemLevel(itemId: ItemId): number;
|
|
141
|
-
getEnchantsByCategory(category: EnchantCategory): EnchantDefinition[];
|
|
142
|
-
getAllEnchants(): EnchantDefinition[];
|
|
143
|
-
private save;
|
|
144
|
-
private load;
|
|
145
|
-
reset(): void;
|
|
146
|
-
destroy(): void;
|
|
147
|
-
}
|
|
148
|
-
export declare function createEnchantSystem(config?: Partial<EnchantSystemConfig>): NiceEnchant;
|
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
import { EventEmitter } from 'events';
|
|
2
|
-
export type EntityId = string;
|
|
3
|
-
export type ComponentType = string;
|
|
4
|
-
export interface PooledComponent {
|
|
5
|
-
readonly type: ComponentType;
|
|
6
|
-
reset(): void;
|
|
7
|
-
}
|
|
8
|
-
export type ComponentFactory<T extends PooledComponent> = () => T;
|
|
9
|
-
export type ComponentInitializer<T extends PooledComponent> = (component: T) => void;
|
|
10
|
-
export interface PooledEntity {
|
|
11
|
-
id: EntityId;
|
|
12
|
-
active: boolean;
|
|
13
|
-
components: Map<ComponentType, PooledComponent>;
|
|
14
|
-
tags: Set<string>;
|
|
15
|
-
prefabId?: string;
|
|
16
|
-
}
|
|
17
|
-
export interface PrefabDefinition {
|
|
18
|
-
id: string;
|
|
19
|
-
name: string;
|
|
20
|
-
components: ComponentType[];
|
|
21
|
-
tags?: string[];
|
|
22
|
-
initializers?: Record<ComponentType, (component: PooledComponent) => void>;
|
|
23
|
-
}
|
|
24
|
-
export interface PoolStatistics {
|
|
25
|
-
totalCreated: number;
|
|
26
|
-
poolSize: number;
|
|
27
|
-
activeCount: number;
|
|
28
|
-
inactiveCount: number;
|
|
29
|
-
peakActive: number;
|
|
30
|
-
acquireCount: number;
|
|
31
|
-
releaseCount: number;
|
|
32
|
-
}
|
|
33
|
-
export type EntityPoolEventType = 'entity-acquired' | 'entity-released' | 'entity-created' | 'prefab-registered' | 'pool-cleared' | 'pool-warmed';
|
|
34
|
-
export interface EntityPoolEvent {
|
|
35
|
-
type: EntityPoolEventType;
|
|
36
|
-
entityId?: EntityId;
|
|
37
|
-
prefabId?: string;
|
|
38
|
-
count?: number;
|
|
39
|
-
}
|
|
40
|
-
export interface EntityPoolConfig {
|
|
41
|
-
initialSize?: number;
|
|
42
|
-
maxSize?: number;
|
|
43
|
-
growSize?: number;
|
|
44
|
-
autoGrow?: boolean;
|
|
45
|
-
warmupOnStart?: boolean;
|
|
46
|
-
}
|
|
47
|
-
export declare const DEFAULT_ENTITY_POOL_CONFIG: EntityPoolConfig;
|
|
48
|
-
export declare class NiceEntityPool extends EventEmitter {
|
|
49
|
-
private pool;
|
|
50
|
-
private active;
|
|
51
|
-
private componentFactories;
|
|
52
|
-
private prefabs;
|
|
53
|
-
private nextId;
|
|
54
|
-
private config;
|
|
55
|
-
private stats;
|
|
56
|
-
constructor(config?: Partial<EntityPoolConfig>);
|
|
57
|
-
registerComponent<T extends PooledComponent>(type: ComponentType, factory: ComponentFactory<T>): void;
|
|
58
|
-
hasComponentFactory(type: ComponentType): boolean;
|
|
59
|
-
registerPrefab(prefab: PrefabDefinition): void;
|
|
60
|
-
getPrefab(id: string): PrefabDefinition | undefined;
|
|
61
|
-
private createEntity;
|
|
62
|
-
private attachComponent;
|
|
63
|
-
acquire(componentTypes?: ComponentType[], tags?: string[]): PooledEntity | null;
|
|
64
|
-
acquireFromPrefab(prefabId: string): PooledEntity | null;
|
|
65
|
-
release(entityOrId: PooledEntity | EntityId): boolean;
|
|
66
|
-
releaseAll(): void;
|
|
67
|
-
get(id: EntityId): PooledEntity | undefined;
|
|
68
|
-
getActive(): PooledEntity[];
|
|
69
|
-
getByTag(tag: string): PooledEntity[];
|
|
70
|
-
getByPrefab(prefabId: string): PooledEntity[];
|
|
71
|
-
getByComponent(type: ComponentType): PooledEntity[];
|
|
72
|
-
warmup(count: number, componentTypes?: ComponentType[]): void;
|
|
73
|
-
warmupPrefab(prefabId: string, count: number): void;
|
|
74
|
-
shrink(targetSize?: number): number;
|
|
75
|
-
clear(): void;
|
|
76
|
-
getStats(): PoolStatistics;
|
|
77
|
-
getActiveCount(): number;
|
|
78
|
-
getInactiveCount(): number;
|
|
79
|
-
}
|
|
80
|
-
export declare abstract class BasePooledComponent implements PooledComponent {
|
|
81
|
-
abstract readonly type: ComponentType;
|
|
82
|
-
abstract reset(): void;
|
|
83
|
-
}
|
|
84
|
-
export declare class TransformComponent extends BasePooledComponent {
|
|
85
|
-
readonly type = "transform";
|
|
86
|
-
x: number;
|
|
87
|
-
y: number;
|
|
88
|
-
z: number;
|
|
89
|
-
rotation: number;
|
|
90
|
-
scaleX: number;
|
|
91
|
-
scaleY: number;
|
|
92
|
-
reset(): void;
|
|
93
|
-
}
|
|
94
|
-
export declare class VelocityComponent extends BasePooledComponent {
|
|
95
|
-
readonly type = "velocity";
|
|
96
|
-
vx: number;
|
|
97
|
-
vy: number;
|
|
98
|
-
vz: number;
|
|
99
|
-
angularVelocity: number;
|
|
100
|
-
reset(): void;
|
|
101
|
-
}
|
|
102
|
-
export declare class SpriteComponent extends BasePooledComponent {
|
|
103
|
-
readonly type = "sprite";
|
|
104
|
-
textureId: string;
|
|
105
|
-
frameIndex: number;
|
|
106
|
-
alpha: number;
|
|
107
|
-
tint: number;
|
|
108
|
-
visible: boolean;
|
|
109
|
-
reset(): void;
|
|
110
|
-
}
|
|
111
|
-
export declare class HealthComponent extends BasePooledComponent {
|
|
112
|
-
readonly type = "health";
|
|
113
|
-
current: number;
|
|
114
|
-
max: number;
|
|
115
|
-
invulnerable: boolean;
|
|
116
|
-
reset(): void;
|
|
117
|
-
}
|
|
118
|
-
export declare class LifetimeComponent extends BasePooledComponent {
|
|
119
|
-
readonly type = "lifetime";
|
|
120
|
-
duration: number;
|
|
121
|
-
elapsed: number;
|
|
122
|
-
expired: boolean;
|
|
123
|
-
reset(): void;
|
|
124
|
-
}
|
|
125
|
-
export declare function createEntityPool(config?: Partial<EntityPoolConfig>): NiceEntityPool;
|
|
126
|
-
export declare function registerCommonComponents(pool: NiceEntityPool): void;
|
|
127
|
-
export default NiceEntityPool;
|