@esengine/ecs-framework 2.1.4 → 2.1.6

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.
Files changed (201) hide show
  1. package/README.md +385 -0
  2. package/{bin/index.d.ts → index.d.ts} +9 -6
  3. package/index.js +7 -0
  4. package/index.js.map +7 -0
  5. package/package.json +21 -46
  6. package/{bin/wasm → wasm}/ecs_wasm_core_bg.wasm +0 -0
  7. package/bin/Core.d.ts +0 -198
  8. package/bin/Core.d.ts.map +0 -1
  9. package/bin/Core.js +0 -247
  10. package/bin/Core.js.map +0 -1
  11. package/bin/ECS/Component.d.ts +0 -119
  12. package/bin/ECS/Component.d.ts.map +0 -1
  13. package/bin/ECS/Component.js +0 -129
  14. package/bin/ECS/Component.js.map +0 -1
  15. package/bin/ECS/Components/IUpdatable.d.ts +0 -22
  16. package/bin/ECS/Components/IUpdatable.d.ts.map +0 -1
  17. package/bin/ECS/Components/IUpdatable.js +0 -22
  18. package/bin/ECS/Components/IUpdatable.js.map +0 -1
  19. package/bin/ECS/Components/SceneComponent.d.ts +0 -40
  20. package/bin/ECS/Components/SceneComponent.d.ts.map +0 -1
  21. package/bin/ECS/Components/SceneComponent.js +0 -61
  22. package/bin/ECS/Components/SceneComponent.js.map +0 -1
  23. package/bin/ECS/Core/BitMaskOptimizer.d.ts +0 -75
  24. package/bin/ECS/Core/BitMaskOptimizer.d.ts.map +0 -1
  25. package/bin/ECS/Core/BitMaskOptimizer.js +0 -161
  26. package/bin/ECS/Core/BitMaskOptimizer.js.map +0 -1
  27. package/bin/ECS/Core/ComponentPool.d.ts +0 -72
  28. package/bin/ECS/Core/ComponentPool.d.ts.map +0 -1
  29. package/bin/ECS/Core/ComponentPool.js +0 -123
  30. package/bin/ECS/Core/ComponentPool.js.map +0 -1
  31. package/bin/ECS/Core/ComponentStorage.d.ts +0 -182
  32. package/bin/ECS/Core/ComponentStorage.d.ts.map +0 -1
  33. package/bin/ECS/Core/ComponentStorage.js +0 -346
  34. package/bin/ECS/Core/ComponentStorage.js.map +0 -1
  35. package/bin/ECS/Core/EventSystem.d.ts +0 -236
  36. package/bin/ECS/Core/EventSystem.d.ts.map +0 -1
  37. package/bin/ECS/Core/EventSystem.js +0 -476
  38. package/bin/ECS/Core/EventSystem.js.map +0 -1
  39. package/bin/ECS/Core/FluentAPI.d.ts +0 -371
  40. package/bin/ECS/Core/FluentAPI.d.ts.map +0 -1
  41. package/bin/ECS/Core/FluentAPI.js +0 -543
  42. package/bin/ECS/Core/FluentAPI.js.map +0 -1
  43. package/bin/ECS/Core/IndexUpdateBatcher.d.ts +0 -100
  44. package/bin/ECS/Core/IndexUpdateBatcher.d.ts.map +0 -1
  45. package/bin/ECS/Core/IndexUpdateBatcher.js +0 -219
  46. package/bin/ECS/Core/IndexUpdateBatcher.js.map +0 -1
  47. package/bin/ECS/Core/QuerySystem.d.ts +0 -422
  48. package/bin/ECS/Core/QuerySystem.d.ts.map +0 -1
  49. package/bin/ECS/Core/QuerySystem.js +0 -937
  50. package/bin/ECS/Core/QuerySystem.js.map +0 -1
  51. package/bin/ECS/CoreEvents.d.ts +0 -19
  52. package/bin/ECS/CoreEvents.d.ts.map +0 -1
  53. package/bin/ECS/CoreEvents.js +0 -20
  54. package/bin/ECS/CoreEvents.js.map +0 -1
  55. package/bin/ECS/Entity.d.ts +0 -538
  56. package/bin/ECS/Entity.d.ts.map +0 -1
  57. package/bin/ECS/Entity.js +0 -1030
  58. package/bin/ECS/Entity.js.map +0 -1
  59. package/bin/ECS/Scene.d.ts +0 -226
  60. package/bin/ECS/Scene.d.ts.map +0 -1
  61. package/bin/ECS/Scene.js +0 -308
  62. package/bin/ECS/Scene.js.map +0 -1
  63. package/bin/ECS/Systems/EntitySystem.d.ts +0 -185
  64. package/bin/ECS/Systems/EntitySystem.d.ts.map +0 -1
  65. package/bin/ECS/Systems/EntitySystem.js +0 -278
  66. package/bin/ECS/Systems/EntitySystem.js.map +0 -1
  67. package/bin/ECS/Systems/IntervalSystem.d.ts +0 -33
  68. package/bin/ECS/Systems/IntervalSystem.d.ts.map +0 -1
  69. package/bin/ECS/Systems/IntervalSystem.js +0 -50
  70. package/bin/ECS/Systems/IntervalSystem.js.map +0 -1
  71. package/bin/ECS/Systems/PassiveSystem.d.ts +0 -20
  72. package/bin/ECS/Systems/PassiveSystem.d.ts.map +0 -1
  73. package/bin/ECS/Systems/PassiveSystem.js +0 -21
  74. package/bin/ECS/Systems/PassiveSystem.js.map +0 -1
  75. package/bin/ECS/Systems/ProcessingSystem.d.ts +0 -24
  76. package/bin/ECS/Systems/ProcessingSystem.d.ts.map +0 -1
  77. package/bin/ECS/Systems/ProcessingSystem.js +0 -22
  78. package/bin/ECS/Systems/ProcessingSystem.js.map +0 -1
  79. package/bin/ECS/Systems/index.d.ts +0 -5
  80. package/bin/ECS/Systems/index.d.ts.map +0 -1
  81. package/bin/ECS/Systems/index.js +0 -6
  82. package/bin/ECS/Systems/index.js.map +0 -1
  83. package/bin/ECS/Utils/Bits.d.ts +0 -74
  84. package/bin/ECS/Utils/Bits.d.ts.map +0 -1
  85. package/bin/ECS/Utils/Bits.js +0 -142
  86. package/bin/ECS/Utils/Bits.js.map +0 -1
  87. package/bin/ECS/Utils/ComponentTypeManager.d.ts +0 -50
  88. package/bin/ECS/Utils/ComponentTypeManager.d.ts.map +0 -1
  89. package/bin/ECS/Utils/ComponentTypeManager.js +0 -84
  90. package/bin/ECS/Utils/ComponentTypeManager.js.map +0 -1
  91. package/bin/ECS/Utils/EntityList.d.ts +0 -108
  92. package/bin/ECS/Utils/EntityList.d.ts.map +0 -1
  93. package/bin/ECS/Utils/EntityList.js +0 -249
  94. package/bin/ECS/Utils/EntityList.js.map +0 -1
  95. package/bin/ECS/Utils/EntityProcessorList.d.ts +0 -53
  96. package/bin/ECS/Utils/EntityProcessorList.d.ts.map +0 -1
  97. package/bin/ECS/Utils/EntityProcessorList.js +0 -96
  98. package/bin/ECS/Utils/EntityProcessorList.js.map +0 -1
  99. package/bin/ECS/Utils/IdentifierPool.d.ts +0 -18
  100. package/bin/ECS/Utils/IdentifierPool.d.ts.map +0 -1
  101. package/bin/ECS/Utils/IdentifierPool.js +0 -27
  102. package/bin/ECS/Utils/IdentifierPool.js.map +0 -1
  103. package/bin/ECS/Utils/Matcher.d.ts +0 -63
  104. package/bin/ECS/Utils/Matcher.d.ts.map +0 -1
  105. package/bin/ECS/Utils/Matcher.js +0 -140
  106. package/bin/ECS/Utils/Matcher.js.map +0 -1
  107. package/bin/ECS/Utils/index.d.ts +0 -7
  108. package/bin/ECS/Utils/index.d.ts.map +0 -1
  109. package/bin/ECS/Utils/index.js +0 -8
  110. package/bin/ECS/Utils/index.js.map +0 -1
  111. package/bin/ECS/index.d.ts +0 -7
  112. package/bin/ECS/index.d.ts.map +0 -1
  113. package/bin/ECS/index.js +0 -29
  114. package/bin/ECS/index.js.map +0 -1
  115. package/bin/Testing/Performance/benchmark.d.ts +0 -6
  116. package/bin/Testing/Performance/benchmark.d.ts.map +0 -1
  117. package/bin/Testing/Performance/benchmark.js +0 -639
  118. package/bin/Testing/Performance/benchmark.js.map +0 -1
  119. package/bin/Testing/Performance/component-performance.d.ts +0 -2
  120. package/bin/Testing/Performance/component-performance.d.ts.map +0 -1
  121. package/bin/Testing/Performance/component-performance.js +0 -43
  122. package/bin/Testing/Performance/component-performance.js.map +0 -1
  123. package/bin/Testing/Unit/bitmask-optimizer.test.d.ts +0 -2
  124. package/bin/Testing/Unit/bitmask-optimizer.test.d.ts.map +0 -1
  125. package/bin/Testing/Unit/bitmask-optimizer.test.js +0 -164
  126. package/bin/Testing/Unit/bitmask-optimizer.test.js.map +0 -1
  127. package/bin/Testing/Unit/component-pool.test.d.ts +0 -5
  128. package/bin/Testing/Unit/component-pool.test.d.ts.map +0 -1
  129. package/bin/Testing/Unit/component-pool.test.js +0 -149
  130. package/bin/Testing/Unit/component-pool.test.js.map +0 -1
  131. package/bin/Testing/test-runner.d.ts +0 -51
  132. package/bin/Testing/test-runner.d.ts.map +0 -1
  133. package/bin/Testing/test-runner.js +0 -159
  134. package/bin/Testing/test-runner.js.map +0 -1
  135. package/bin/Types/index.d.ts +0 -22
  136. package/bin/Types/index.d.ts.map +0 -1
  137. package/bin/Types/index.js +0 -20
  138. package/bin/Types/index.js.map +0 -1
  139. package/bin/Utils/Emitter.d.ts +0 -43
  140. package/bin/Utils/Emitter.d.ts.map +0 -1
  141. package/bin/Utils/Emitter.js +0 -69
  142. package/bin/Utils/Emitter.js.map +0 -1
  143. package/bin/Utils/Extensions/NumberExtension.d.ts +0 -13
  144. package/bin/Utils/Extensions/NumberExtension.d.ts.map +0 -1
  145. package/bin/Utils/Extensions/NumberExtension.js +0 -17
  146. package/bin/Utils/Extensions/NumberExtension.js.map +0 -1
  147. package/bin/Utils/Extensions/TypeUtils.d.ts +0 -13
  148. package/bin/Utils/Extensions/TypeUtils.d.ts.map +0 -1
  149. package/bin/Utils/Extensions/TypeUtils.js +0 -15
  150. package/bin/Utils/Extensions/TypeUtils.js.map +0 -1
  151. package/bin/Utils/Extensions/index.d.ts +0 -3
  152. package/bin/Utils/Extensions/index.d.ts.map +0 -1
  153. package/bin/Utils/Extensions/index.js +0 -4
  154. package/bin/Utils/Extensions/index.js.map +0 -1
  155. package/bin/Utils/GlobalManager.d.ts +0 -32
  156. package/bin/Utils/GlobalManager.d.ts.map +0 -1
  157. package/bin/Utils/GlobalManager.js +0 -53
  158. package/bin/Utils/GlobalManager.js.map +0 -1
  159. package/bin/Utils/PerformanceMonitor.d.ts +0 -211
  160. package/bin/Utils/PerformanceMonitor.d.ts.map +0 -1
  161. package/bin/Utils/PerformanceMonitor.js +0 -270
  162. package/bin/Utils/PerformanceMonitor.js.map +0 -1
  163. package/bin/Utils/Pool.d.ts +0 -239
  164. package/bin/Utils/Pool.d.ts.map +0 -1
  165. package/bin/Utils/Pool.js +0 -449
  166. package/bin/Utils/Pool.js.map +0 -1
  167. package/bin/Utils/Time.d.ts +0 -55
  168. package/bin/Utils/Time.d.ts.map +0 -1
  169. package/bin/Utils/Time.js +0 -78
  170. package/bin/Utils/Time.js.map +0 -1
  171. package/bin/Utils/Timers/ITimer.d.ts +0 -16
  172. package/bin/Utils/Timers/ITimer.d.ts.map +0 -1
  173. package/bin/Utils/Timers/ITimer.js +0 -2
  174. package/bin/Utils/Timers/ITimer.js.map +0 -1
  175. package/bin/Utils/Timers/Timer.d.ts +0 -22
  176. package/bin/Utils/Timers/Timer.d.ts.map +0 -1
  177. package/bin/Utils/Timers/Timer.js +0 -46
  178. package/bin/Utils/Timers/Timer.js.map +0 -1
  179. package/bin/Utils/Timers/TimerManager.d.ts +0 -19
  180. package/bin/Utils/Timers/TimerManager.d.ts.map +0 -1
  181. package/bin/Utils/Timers/TimerManager.js +0 -33
  182. package/bin/Utils/Timers/TimerManager.js.map +0 -1
  183. package/bin/Utils/WasmCore.d.ts +0 -234
  184. package/bin/Utils/WasmCore.d.ts.map +0 -1
  185. package/bin/Utils/WasmCore.js +0 -596
  186. package/bin/Utils/WasmCore.js.map +0 -1
  187. package/bin/Utils/index.d.ts +0 -16
  188. package/bin/Utils/index.d.ts.map +0 -1
  189. package/bin/Utils/index.js +0 -37
  190. package/bin/Utils/index.js.map +0 -1
  191. package/bin/index.cjs +0 -51
  192. package/bin/index.d.ts.map +0 -1
  193. package/bin/index.esm.d.ts +0 -45
  194. package/bin/index.esm.d.ts.map +0 -1
  195. package/bin/index.esm.js +0 -46
  196. package/bin/index.esm.js.map +0 -1
  197. package/bin/index.js.map +0 -1
  198. /package/{bin/wasm → wasm}/ecs_wasm_core.d.ts +0 -0
  199. /package/{bin/wasm → wasm}/ecs_wasm_core.js +0 -0
  200. /package/{bin/wasm → wasm}/ecs_wasm_core_bg.wasm.d.ts +0 -0
  201. /package/{bin/wasm → wasm}/package.json +0 -0
@@ -1,371 +0,0 @@
1
- import { Entity } from '../Entity';
2
- import { Component } from '../Component';
3
- import { Scene } from '../Scene';
4
- import { ComponentType, ComponentStorageManager } from './ComponentStorage';
5
- import { QuerySystem, QueryBuilder } from './QuerySystem';
6
- import { TypeSafeEventSystem } from './EventSystem';
7
- /**
8
- * 实体构建器 - 提供流式API创建和配置实体
9
- */
10
- export declare class EntityBuilder {
11
- private entity;
12
- private scene;
13
- private storageManager;
14
- constructor(scene: Scene, storageManager: ComponentStorageManager);
15
- /**
16
- * 设置实体名称
17
- * @param name 实体名称
18
- * @returns 实体构建器
19
- */
20
- named(name: string): EntityBuilder;
21
- /**
22
- * 设置实体标签
23
- * @param tag 标签
24
- * @returns 实体构建器
25
- */
26
- tagged(tag: number): EntityBuilder;
27
- /**
28
- * 添加组件
29
- * @param component 组件实例
30
- * @returns 实体构建器
31
- */
32
- with<T extends Component>(component: T): EntityBuilder;
33
- /**
34
- * 添加多个组件
35
- * @param components 组件数组
36
- * @returns 实体构建器
37
- */
38
- withComponents(...components: Component[]): EntityBuilder;
39
- /**
40
- * 条件性添加组件
41
- * @param condition 条件
42
- * @param component 组件实例
43
- * @returns 实体构建器
44
- */
45
- withIf<T extends Component>(condition: boolean, component: T): EntityBuilder;
46
- /**
47
- * 使用工厂函数创建并添加组件
48
- * @param factory 组件工厂函数
49
- * @returns 实体构建器
50
- */
51
- withFactory<T extends Component>(factory: () => T): EntityBuilder;
52
- /**
53
- * 配置组件属性
54
- * @param componentType 组件类型
55
- * @param configurator 配置函数
56
- * @returns 实体构建器
57
- */
58
- configure<T extends Component>(componentType: ComponentType<T>, configurator: (component: T) => void): EntityBuilder;
59
- /**
60
- * 设置实体为启用状态
61
- * @param enabled 是否启用
62
- * @returns 实体构建器
63
- */
64
- enabled(enabled?: boolean): EntityBuilder;
65
- /**
66
- * 设置实体为活跃状态
67
- * @param active 是否活跃
68
- * @returns 实体构建器
69
- */
70
- active(active?: boolean): EntityBuilder;
71
- /**
72
- * 添加子实体
73
- * @param childBuilder 子实体构建器
74
- * @returns 实体构建器
75
- */
76
- withChild(childBuilder: EntityBuilder): EntityBuilder;
77
- /**
78
- * 批量添加子实体
79
- * @param childBuilders 子实体构建器数组
80
- * @returns 实体构建器
81
- */
82
- withChildren(...childBuilders: EntityBuilder[]): EntityBuilder;
83
- /**
84
- * 使用工厂函数创建子实体
85
- * @param childFactory 子实体工厂函数
86
- * @returns 实体构建器
87
- */
88
- withChildFactory(childFactory: (parent: Entity) => EntityBuilder): EntityBuilder;
89
- /**
90
- * 条件性添加子实体
91
- * @param condition 条件
92
- * @param childBuilder 子实体构建器
93
- * @returns 实体构建器
94
- */
95
- withChildIf(condition: boolean, childBuilder: EntityBuilder): EntityBuilder;
96
- /**
97
- * 构建并返回实体
98
- * @returns 构建的实体
99
- */
100
- build(): Entity;
101
- /**
102
- * 构建实体并添加到场景
103
- * @returns 构建的实体
104
- */
105
- spawn(): Entity;
106
- /**
107
- * 克隆当前构建器
108
- * @returns 新的实体构建器
109
- */
110
- clone(): EntityBuilder;
111
- }
112
- /**
113
- * 场景构建器 - 提供流式API创建和配置场景
114
- */
115
- export declare class SceneBuilder {
116
- private scene;
117
- constructor();
118
- /**
119
- * 设置场景名称
120
- * @param name 场景名称
121
- * @returns 场景构建器
122
- */
123
- named(name: string): SceneBuilder;
124
- /**
125
- * 添加实体
126
- * @param entity 实体
127
- * @returns 场景构建器
128
- */
129
- withEntity(entity: Entity): SceneBuilder;
130
- /**
131
- * 使用实体构建器添加实体
132
- * @param builderFn 实体构建器函数
133
- * @returns 场景构建器
134
- */
135
- withEntityBuilder(builderFn: (builder: EntityBuilder) => EntityBuilder): SceneBuilder;
136
- /**
137
- * 批量添加实体
138
- * @param entities 实体数组
139
- * @returns 场景构建器
140
- */
141
- withEntities(...entities: Entity[]): SceneBuilder;
142
- /**
143
- * 添加系统
144
- * @param system 系统实例
145
- * @returns 场景构建器
146
- */
147
- withSystem(system: any): SceneBuilder;
148
- /**
149
- * 批量添加系统
150
- * @param systems 系统数组
151
- * @returns 场景构建器
152
- */
153
- withSystems(...systems: any[]): SceneBuilder;
154
- /**
155
- * 构建并返回场景
156
- * @returns 构建的场景
157
- */
158
- build(): Scene;
159
- }
160
- /**
161
- * 组件构建器 - 提供流式API创建组件
162
- */
163
- export declare class ComponentBuilder<T extends Component> {
164
- private component;
165
- constructor(componentClass: new (...args: any[]) => T, ...args: any[]);
166
- /**
167
- * 设置组件属性
168
- * @param property 属性名
169
- * @param value 属性值
170
- * @returns 组件构建器
171
- */
172
- set<K extends keyof T>(property: K, value: T[K]): ComponentBuilder<T>;
173
- /**
174
- * 使用配置函数设置组件
175
- * @param configurator 配置函数
176
- * @returns 组件构建器
177
- */
178
- configure(configurator: (component: T) => void): ComponentBuilder<T>;
179
- /**
180
- * 条件性设置属性
181
- * @param condition 条件
182
- * @param property 属性名
183
- * @param value 属性值
184
- * @returns 组件构建器
185
- */
186
- setIf<K extends keyof T>(condition: boolean, property: K, value: T[K]): ComponentBuilder<T>;
187
- /**
188
- * 构建并返回组件
189
- * @returns 构建的组件
190
- */
191
- build(): T;
192
- }
193
- /**
194
- * ECS流式API主入口
195
- * 提供统一的流式接口
196
- */
197
- export declare class ECSFluentAPI {
198
- private scene;
199
- private querySystem;
200
- private eventSystem;
201
- constructor(scene: Scene, querySystem: QuerySystem, eventSystem: TypeSafeEventSystem);
202
- /**
203
- * 创建实体构建器
204
- * @returns 实体构建器
205
- */
206
- createEntity(): EntityBuilder;
207
- /**
208
- * 创建场景构建器
209
- * @returns 场景构建器
210
- */
211
- createScene(): SceneBuilder;
212
- /**
213
- * 创建组件构建器
214
- * @param componentClass 组件类
215
- * @param args 构造参数
216
- * @returns 组件构建器
217
- */
218
- createComponent<T extends Component>(componentClass: new (...args: any[]) => T, ...args: any[]): ComponentBuilder<T>;
219
- /**
220
- * 创建查询构建器
221
- * @returns 查询构建器
222
- */
223
- query(): QueryBuilder;
224
- /**
225
- * 查找实体(简化版)
226
- * @param componentTypes 组件类型
227
- * @returns 实体数组
228
- */
229
- find(...componentTypes: ComponentType[]): Entity[];
230
- /**
231
- * 查找第一个匹配的实体
232
- * @param componentTypes 组件类型
233
- * @returns 实体或null
234
- */
235
- findFirst(...componentTypes: ComponentType[]): Entity | null;
236
- /**
237
- * 按名称查找实体
238
- * @param name 实体名称
239
- * @returns 实体或null
240
- */
241
- findByName(name: string): Entity | null;
242
- /**
243
- * 按标签查找实体
244
- * @param tag 标签
245
- * @returns 实体数组
246
- */
247
- findByTag(tag: number): Entity[];
248
- /**
249
- * 触发事件
250
- * @param eventType 事件类型
251
- * @param event 事件数据
252
- */
253
- emit<T>(eventType: string, event: T): void;
254
- /**
255
- * 异步触发事件
256
- * @param eventType 事件类型
257
- * @param event 事件数据
258
- */
259
- emitAsync<T>(eventType: string, event: T): Promise<void>;
260
- /**
261
- * 监听事件
262
- * @param eventType 事件类型
263
- * @param handler 事件处理器
264
- * @returns 监听器ID
265
- */
266
- on<T>(eventType: string, handler: (event: T) => void): string;
267
- /**
268
- * 一次性监听事件
269
- * @param eventType 事件类型
270
- * @param handler 事件处理器
271
- * @returns 监听器ID
272
- */
273
- once<T>(eventType: string, handler: (event: T) => void): string;
274
- /**
275
- * 移除事件监听器
276
- * @param eventType 事件类型
277
- * @param listenerId 监听器ID
278
- */
279
- off(eventType: string, listenerId: string): void;
280
- /**
281
- * 批量操作实体
282
- * @param entities 实体数组
283
- * @returns 批量操作器
284
- */
285
- batch(entities: Entity[]): EntityBatchOperator;
286
- /**
287
- * 获取场景统计信息
288
- * @returns 统计信息
289
- */
290
- getStats(): {
291
- entityCount: number;
292
- systemCount: number;
293
- componentStats: Map<string, any>;
294
- queryStats: any;
295
- eventStats: Map<string, any>;
296
- };
297
- }
298
- /**
299
- * 实体批量操作器
300
- * 提供对多个实体的批量操作
301
- */
302
- export declare class EntityBatchOperator {
303
- private entities;
304
- constructor(entities: Entity[]);
305
- /**
306
- * 批量添加组件
307
- * @param component 组件实例
308
- * @returns 批量操作器
309
- */
310
- addComponent<T extends Component>(component: T): EntityBatchOperator;
311
- /**
312
- * 批量移除组件
313
- * @param componentType 组件类型
314
- * @returns 批量操作器
315
- */
316
- removeComponent<T extends Component>(componentType: ComponentType<T>): EntityBatchOperator;
317
- /**
318
- * 批量设置活跃状态
319
- * @param active 是否活跃
320
- * @returns 批量操作器
321
- */
322
- setActive(active: boolean): EntityBatchOperator;
323
- /**
324
- * 批量设置标签
325
- * @param tag 标签
326
- * @returns 批量操作器
327
- */
328
- setTag(tag: number): EntityBatchOperator;
329
- /**
330
- * 批量执行操作
331
- * @param operation 操作函数
332
- * @returns 批量操作器
333
- */
334
- forEach(operation: (entity: Entity, index: number) => void): EntityBatchOperator;
335
- /**
336
- * 过滤实体
337
- * @param predicate 过滤条件
338
- * @returns 新的批量操作器
339
- */
340
- filter(predicate: (entity: Entity) => boolean): EntityBatchOperator;
341
- /**
342
- * 获取实体数组
343
- * @returns 实体数组
344
- */
345
- toArray(): Entity[];
346
- /**
347
- * 获取实体数量
348
- * @returns 实体数量
349
- */
350
- count(): number;
351
- }
352
- /**
353
- * 创建ECS流式API实例
354
- * @param scene 场景
355
- * @param querySystem 查询系统
356
- * @param eventSystem 事件系统
357
- * @returns ECS流式API实例
358
- */
359
- export declare function createECSAPI(scene: Scene, querySystem: QuerySystem, eventSystem: TypeSafeEventSystem): ECSFluentAPI;
360
- /**
361
- * 全局ECS流式API实例(需要在使用前初始化)
362
- */
363
- export declare let ECS: ECSFluentAPI;
364
- /**
365
- * 初始化全局ECS API
366
- * @param scene 场景
367
- * @param querySystem 查询系统
368
- * @param eventSystem 事件系统
369
- */
370
- export declare function initializeECS(scene: Scene, querySystem: QuerySystem, eventSystem: TypeSafeEventSystem): void;
371
- //# sourceMappingURL=FluentAPI.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FluentAPI.d.ts","sourceRoot":"","sources":["../../../src/ECS/Core/FluentAPI.ts"],"names":[],"mappings":"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"}