@esengine/ecs-framework 2.3.0 → 2.3.1

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 (491) hide show
  1. package/dist/index.cjs +2 -0
  2. package/dist/index.cjs.map +1 -0
  3. package/dist/index.d.ts +13451 -0
  4. package/dist/index.es5.js +4 -0
  5. package/dist/index.es5.js.map +1 -0
  6. package/dist/index.mjs +2 -0
  7. package/dist/index.mjs.map +1 -0
  8. package/dist/index.umd.js +4 -0
  9. package/dist/index.umd.js.map +1 -0
  10. package/dist/package.json +47 -0
  11. package/package.json +87 -84
  12. package/bin/Core/DI/Decorators.d.ts +0 -206
  13. package/bin/Core/DI/Decorators.d.ts.map +0 -1
  14. package/bin/Core/DI/Decorators.js +0 -253
  15. package/bin/Core/DI/Decorators.js.map +0 -1
  16. package/bin/Core/DI/index.d.ts +0 -8
  17. package/bin/Core/DI/index.d.ts.map +0 -1
  18. package/bin/Core/DI/index.js +0 -7
  19. package/bin/Core/DI/index.js.map +0 -1
  20. package/bin/Core/Plugin.d.ts +0 -112
  21. package/bin/Core/Plugin.d.ts.map +0 -1
  22. package/bin/Core/Plugin.js +0 -19
  23. package/bin/Core/Plugin.js.map +0 -1
  24. package/bin/Core/PluginManager.d.ts +0 -118
  25. package/bin/Core/PluginManager.d.ts.map +0 -1
  26. package/bin/Core/PluginManager.js +0 -229
  27. package/bin/Core/PluginManager.js.map +0 -1
  28. package/bin/Core/ServiceContainer.d.ts +0 -221
  29. package/bin/Core/ServiceContainer.d.ts.map +0 -1
  30. package/bin/Core/ServiceContainer.js +0 -352
  31. package/bin/Core/ServiceContainer.js.map +0 -1
  32. package/bin/Core.d.ts +0 -379
  33. package/bin/Core.d.ts.map +0 -1
  34. package/bin/Core.js +0 -553
  35. package/bin/Core.js.map +0 -1
  36. package/bin/ECS/Component.d.ts +0 -104
  37. package/bin/ECS/Component.d.ts.map +0 -1
  38. package/bin/ECS/Component.js +0 -105
  39. package/bin/ECS/Component.js.map +0 -1
  40. package/bin/ECS/Components/HierarchyComponent.d.ts +0 -46
  41. package/bin/ECS/Components/HierarchyComponent.d.ts.map +0 -1
  42. package/bin/ECS/Components/HierarchyComponent.js +0 -65
  43. package/bin/ECS/Components/HierarchyComponent.js.map +0 -1
  44. package/bin/ECS/Components/index.d.ts +0 -2
  45. package/bin/ECS/Components/index.d.ts.map +0 -1
  46. package/bin/ECS/Components/index.js +0 -2
  47. package/bin/ECS/Components/index.js.map +0 -1
  48. package/bin/ECS/Core/ArchetypeSystem.d.ts +0 -103
  49. package/bin/ECS/Core/ArchetypeSystem.d.ts.map +0 -1
  50. package/bin/ECS/Core/ArchetypeSystem.js +0 -244
  51. package/bin/ECS/Core/ArchetypeSystem.js.map +0 -1
  52. package/bin/ECS/Core/CommandBuffer.d.ts +0 -154
  53. package/bin/ECS/Core/CommandBuffer.d.ts.map +0 -1
  54. package/bin/ECS/Core/CommandBuffer.js +0 -244
  55. package/bin/ECS/Core/CommandBuffer.js.map +0 -1
  56. package/bin/ECS/Core/ComponentPool.d.ts +0 -139
  57. package/bin/ECS/Core/ComponentPool.d.ts.map +0 -1
  58. package/bin/ECS/Core/ComponentPool.js +0 -276
  59. package/bin/ECS/Core/ComponentPool.js.map +0 -1
  60. package/bin/ECS/Core/ComponentStorage/ComponentRegistry.d.ts +0 -127
  61. package/bin/ECS/Core/ComponentStorage/ComponentRegistry.d.ts.map +0 -1
  62. package/bin/ECS/Core/ComponentStorage/ComponentRegistry.js +0 -235
  63. package/bin/ECS/Core/ComponentStorage/ComponentRegistry.js.map +0 -1
  64. package/bin/ECS/Core/ComponentStorage.d.ts +0 -185
  65. package/bin/ECS/Core/ComponentStorage.d.ts.map +0 -1
  66. package/bin/ECS/Core/ComponentStorage.js +0 -321
  67. package/bin/ECS/Core/ComponentStorage.js.map +0 -1
  68. package/bin/ECS/Core/EntityLifecyclePolicy.d.ts +0 -26
  69. package/bin/ECS/Core/EntityLifecyclePolicy.d.ts.map +0 -1
  70. package/bin/ECS/Core/EntityLifecyclePolicy.js +0 -2
  71. package/bin/ECS/Core/EntityLifecyclePolicy.js.map +0 -1
  72. package/bin/ECS/Core/EventBus.d.ts +0 -210
  73. package/bin/ECS/Core/EventBus.d.ts.map +0 -1
  74. package/bin/ECS/Core/EventBus.js +0 -370
  75. package/bin/ECS/Core/EventBus.js.map +0 -1
  76. package/bin/ECS/Core/EventSystem.d.ts +0 -225
  77. package/bin/ECS/Core/EventSystem.d.ts.map +0 -1
  78. package/bin/ECS/Core/EventSystem.js +0 -448
  79. package/bin/ECS/Core/EventSystem.js.map +0 -1
  80. package/bin/ECS/Core/Events/index.d.ts +0 -3
  81. package/bin/ECS/Core/Events/index.d.ts.map +0 -1
  82. package/bin/ECS/Core/Events/index.js +0 -3
  83. package/bin/ECS/Core/Events/index.js.map +0 -1
  84. package/bin/ECS/Core/FluentAPI/ComponentBuilder.d.ts +0 -35
  85. package/bin/ECS/Core/FluentAPI/ComponentBuilder.d.ts.map +0 -1
  86. package/bin/ECS/Core/FluentAPI/ComponentBuilder.js +0 -48
  87. package/bin/ECS/Core/FluentAPI/ComponentBuilder.js.map +0 -1
  88. package/bin/ECS/Core/FluentAPI/ECSFluentAPI.d.ts +0 -135
  89. package/bin/ECS/Core/FluentAPI/ECSFluentAPI.d.ts.map +0 -1
  90. package/bin/ECS/Core/FluentAPI/ECSFluentAPI.js +0 -166
  91. package/bin/ECS/Core/FluentAPI/ECSFluentAPI.js.map +0 -1
  92. package/bin/ECS/Core/FluentAPI/EntityBatchOperator.d.ts +0 -58
  93. package/bin/ECS/Core/FluentAPI/EntityBatchOperator.d.ts.map +0 -1
  94. package/bin/ECS/Core/FluentAPI/EntityBatchOperator.js +0 -85
  95. package/bin/ECS/Core/FluentAPI/EntityBatchOperator.js.map +0 -1
  96. package/bin/ECS/Core/FluentAPI/EntityBuilder.d.ts +0 -110
  97. package/bin/ECS/Core/FluentAPI/EntityBuilder.d.ts.map +0 -1
  98. package/bin/ECS/Core/FluentAPI/EntityBuilder.js +0 -181
  99. package/bin/ECS/Core/FluentAPI/EntityBuilder.js.map +0 -1
  100. package/bin/ECS/Core/FluentAPI/SceneBuilder.d.ts +0 -53
  101. package/bin/ECS/Core/FluentAPI/SceneBuilder.d.ts.map +0 -1
  102. package/bin/ECS/Core/FluentAPI/SceneBuilder.js +0 -79
  103. package/bin/ECS/Core/FluentAPI/SceneBuilder.js.map +0 -1
  104. package/bin/ECS/Core/FluentAPI/index.d.ts +0 -6
  105. package/bin/ECS/Core/FluentAPI/index.d.ts.map +0 -1
  106. package/bin/ECS/Core/FluentAPI/index.js +0 -6
  107. package/bin/ECS/Core/FluentAPI/index.js.map +0 -1
  108. package/bin/ECS/Core/FluentAPI.d.ts +0 -2
  109. package/bin/ECS/Core/FluentAPI.d.ts.map +0 -1
  110. package/bin/ECS/Core/FluentAPI.js +0 -3
  111. package/bin/ECS/Core/FluentAPI.js.map +0 -1
  112. package/bin/ECS/Core/Query/TypedQuery.d.ts +0 -214
  113. package/bin/ECS/Core/Query/TypedQuery.d.ts.map +0 -1
  114. package/bin/ECS/Core/Query/TypedQuery.js +0 -294
  115. package/bin/ECS/Core/Query/TypedQuery.js.map +0 -1
  116. package/bin/ECS/Core/Query/index.d.ts +0 -3
  117. package/bin/ECS/Core/Query/index.d.ts.map +0 -1
  118. package/bin/ECS/Core/Query/index.js +0 -3
  119. package/bin/ECS/Core/Query/index.js.map +0 -1
  120. package/bin/ECS/Core/QuerySystem.d.ts +0 -458
  121. package/bin/ECS/Core/QuerySystem.d.ts.map +0 -1
  122. package/bin/ECS/Core/QuerySystem.js +0 -1069
  123. package/bin/ECS/Core/QuerySystem.js.map +0 -1
  124. package/bin/ECS/Core/QueryTypes.d.ts +0 -34
  125. package/bin/ECS/Core/QueryTypes.d.ts.map +0 -1
  126. package/bin/ECS/Core/QueryTypes.js +0 -13
  127. package/bin/ECS/Core/QueryTypes.js.map +0 -1
  128. package/bin/ECS/Core/ReactiveQuery.d.ts +0 -211
  129. package/bin/ECS/Core/ReactiveQuery.d.ts.map +0 -1
  130. package/bin/ECS/Core/ReactiveQuery.js +0 -401
  131. package/bin/ECS/Core/ReactiveQuery.js.map +0 -1
  132. package/bin/ECS/Core/ReferenceTracker.d.ts +0 -111
  133. package/bin/ECS/Core/ReferenceTracker.d.ts.map +0 -1
  134. package/bin/ECS/Core/ReferenceTracker.js +0 -254
  135. package/bin/ECS/Core/ReferenceTracker.js.map +0 -1
  136. package/bin/ECS/Core/SoASerializer.d.ts +0 -28
  137. package/bin/ECS/Core/SoASerializer.d.ts.map +0 -1
  138. package/bin/ECS/Core/SoASerializer.js +0 -85
  139. package/bin/ECS/Core/SoASerializer.js.map +0 -1
  140. package/bin/ECS/Core/SoAStorage.d.ts +0 -129
  141. package/bin/ECS/Core/SoAStorage.d.ts.map +0 -1
  142. package/bin/ECS/Core/SoAStorage.js +0 -685
  143. package/bin/ECS/Core/SoAStorage.js.map +0 -1
  144. package/bin/ECS/Core/SoATypeRegistry.d.ts +0 -50
  145. package/bin/ECS/Core/SoATypeRegistry.d.ts.map +0 -1
  146. package/bin/ECS/Core/SoATypeRegistry.js +0 -135
  147. package/bin/ECS/Core/SoATypeRegistry.js.map +0 -1
  148. package/bin/ECS/Core/Storage/index.d.ts +0 -4
  149. package/bin/ECS/Core/Storage/index.d.ts.map +0 -1
  150. package/bin/ECS/Core/Storage/index.js +0 -4
  151. package/bin/ECS/Core/Storage/index.js.map +0 -1
  152. package/bin/ECS/Core/StorageDecorators.d.ts +0 -20
  153. package/bin/ECS/Core/StorageDecorators.d.ts.map +0 -1
  154. package/bin/ECS/Core/StorageDecorators.js +0 -27
  155. package/bin/ECS/Core/StorageDecorators.js.map +0 -1
  156. package/bin/ECS/CoreEvents.d.ts +0 -131
  157. package/bin/ECS/CoreEvents.d.ts.map +0 -1
  158. package/bin/ECS/CoreEvents.js +0 -163
  159. package/bin/ECS/CoreEvents.js.map +0 -1
  160. package/bin/ECS/Decorators/EntityRefDecorator.d.ts +0 -46
  161. package/bin/ECS/Decorators/EntityRefDecorator.d.ts.map +0 -1
  162. package/bin/ECS/Decorators/EntityRefDecorator.js +0 -118
  163. package/bin/ECS/Decorators/EntityRefDecorator.js.map +0 -1
  164. package/bin/ECS/Decorators/PropertyDecorator.d.ts +0 -168
  165. package/bin/ECS/Decorators/PropertyDecorator.d.ts.map +0 -1
  166. package/bin/ECS/Decorators/PropertyDecorator.js +0 -40
  167. package/bin/ECS/Decorators/PropertyDecorator.js.map +0 -1
  168. package/bin/ECS/Decorators/TypeDecorators.d.ts +0 -124
  169. package/bin/ECS/Decorators/TypeDecorators.d.ts.map +0 -1
  170. package/bin/ECS/Decorators/TypeDecorators.js +0 -151
  171. package/bin/ECS/Decorators/TypeDecorators.js.map +0 -1
  172. package/bin/ECS/Decorators/index.d.ts +0 -7
  173. package/bin/ECS/Decorators/index.d.ts.map +0 -1
  174. package/bin/ECS/Decorators/index.js +0 -4
  175. package/bin/ECS/Decorators/index.js.map +0 -1
  176. package/bin/ECS/Entity.d.ts +0 -415
  177. package/bin/ECS/Entity.d.ts.map +0 -1
  178. package/bin/ECS/Entity.js +0 -683
  179. package/bin/ECS/Entity.js.map +0 -1
  180. package/bin/ECS/EntityTags.d.ts +0 -71
  181. package/bin/ECS/EntityTags.d.ts.map +0 -1
  182. package/bin/ECS/EntityTags.js +0 -82
  183. package/bin/ECS/EntityTags.js.map +0 -1
  184. package/bin/ECS/IScene.d.ts +0 -308
  185. package/bin/ECS/IScene.d.ts.map +0 -1
  186. package/bin/ECS/IScene.js +0 -2
  187. package/bin/ECS/IScene.js.map +0 -1
  188. package/bin/ECS/Scene.d.ts +0 -799
  189. package/bin/ECS/Scene.d.ts.map +0 -1
  190. package/bin/ECS/Scene.js +0 -1203
  191. package/bin/ECS/Scene.js.map +0 -1
  192. package/bin/ECS/SceneManager.d.ts +0 -197
  193. package/bin/ECS/SceneManager.d.ts.map +0 -1
  194. package/bin/ECS/SceneManager.js +0 -264
  195. package/bin/ECS/SceneManager.js.map +0 -1
  196. package/bin/ECS/Serialization/ComponentSerializer.d.ts +0 -106
  197. package/bin/ECS/Serialization/ComponentSerializer.d.ts.map +0 -1
  198. package/bin/ECS/Serialization/ComponentSerializer.js +0 -251
  199. package/bin/ECS/Serialization/ComponentSerializer.js.map +0 -1
  200. package/bin/ECS/Serialization/EntitySerializer.d.ts +0 -111
  201. package/bin/ECS/Serialization/EntitySerializer.d.ts.map +0 -1
  202. package/bin/ECS/Serialization/EntitySerializer.js +0 -155
  203. package/bin/ECS/Serialization/EntitySerializer.js.map +0 -1
  204. package/bin/ECS/Serialization/IncrementalSerializer.d.ts +0 -259
  205. package/bin/ECS/Serialization/IncrementalSerializer.d.ts.map +0 -1
  206. package/bin/ECS/Serialization/IncrementalSerializer.js +0 -500
  207. package/bin/ECS/Serialization/IncrementalSerializer.js.map +0 -1
  208. package/bin/ECS/Serialization/SceneSerializer.d.ts +0 -213
  209. package/bin/ECS/Serialization/SceneSerializer.d.ts.map +0 -1
  210. package/bin/ECS/Serialization/SceneSerializer.js +0 -387
  211. package/bin/ECS/Serialization/SceneSerializer.js.map +0 -1
  212. package/bin/ECS/Serialization/SerializationDecorators.d.ts +0 -136
  213. package/bin/ECS/Serialization/SerializationDecorators.d.ts.map +0 -1
  214. package/bin/ECS/Serialization/SerializationDecorators.js +0 -216
  215. package/bin/ECS/Serialization/SerializationDecorators.js.map +0 -1
  216. package/bin/ECS/Serialization/VersionMigration.d.ts +0 -156
  217. package/bin/ECS/Serialization/VersionMigration.d.ts.map +0 -1
  218. package/bin/ECS/Serialization/VersionMigration.js +0 -279
  219. package/bin/ECS/Serialization/VersionMigration.js.map +0 -1
  220. package/bin/ECS/Serialization/index.d.ts +0 -18
  221. package/bin/ECS/Serialization/index.d.ts.map +0 -1
  222. package/bin/ECS/Serialization/index.js +0 -18
  223. package/bin/ECS/Serialization/index.js.map +0 -1
  224. package/bin/ECS/Systems/EntityCache.d.ts +0 -114
  225. package/bin/ECS/Systems/EntityCache.d.ts.map +0 -1
  226. package/bin/ECS/Systems/EntityCache.js +0 -145
  227. package/bin/ECS/Systems/EntityCache.js.map +0 -1
  228. package/bin/ECS/Systems/EntitySystem.d.ts +0 -591
  229. package/bin/ECS/Systems/EntitySystem.d.ts.map +0 -1
  230. package/bin/ECS/Systems/EntitySystem.js +0 -1102
  231. package/bin/ECS/Systems/EntitySystem.js.map +0 -1
  232. package/bin/ECS/Systems/HierarchySystem.d.ts +0 -155
  233. package/bin/ECS/Systems/HierarchySystem.d.ts.map +0 -1
  234. package/bin/ECS/Systems/HierarchySystem.js +0 -498
  235. package/bin/ECS/Systems/HierarchySystem.js.map +0 -1
  236. package/bin/ECS/Systems/IntervalSystem.d.ts +0 -33
  237. package/bin/ECS/Systems/IntervalSystem.d.ts.map +0 -1
  238. package/bin/ECS/Systems/IntervalSystem.js +0 -50
  239. package/bin/ECS/Systems/IntervalSystem.js.map +0 -1
  240. package/bin/ECS/Systems/PassiveSystem.d.ts +0 -17
  241. package/bin/ECS/Systems/PassiveSystem.d.ts.map +0 -1
  242. package/bin/ECS/Systems/PassiveSystem.js +0 -19
  243. package/bin/ECS/Systems/PassiveSystem.js.map +0 -1
  244. package/bin/ECS/Systems/ProcessingSystem.d.ts +0 -21
  245. package/bin/ECS/Systems/ProcessingSystem.d.ts.map +0 -1
  246. package/bin/ECS/Systems/ProcessingSystem.js +0 -20
  247. package/bin/ECS/Systems/ProcessingSystem.js.map +0 -1
  248. package/bin/ECS/Systems/WorkerEntitySystem.d.ts +0 -313
  249. package/bin/ECS/Systems/WorkerEntitySystem.d.ts.map +0 -1
  250. package/bin/ECS/Systems/WorkerEntitySystem.js +0 -792
  251. package/bin/ECS/Systems/WorkerEntitySystem.js.map +0 -1
  252. package/bin/ECS/Systems/index.d.ts +0 -8
  253. package/bin/ECS/Systems/index.d.ts.map +0 -1
  254. package/bin/ECS/Systems/index.js +0 -8
  255. package/bin/ECS/Systems/index.js.map +0 -1
  256. package/bin/ECS/TypedEntity.d.ts +0 -192
  257. package/bin/ECS/TypedEntity.d.ts.map +0 -1
  258. package/bin/ECS/TypedEntity.js +0 -254
  259. package/bin/ECS/TypedEntity.js.map +0 -1
  260. package/bin/ECS/Utils/BigIntCompatibility.d.ts +0 -151
  261. package/bin/ECS/Utils/BigIntCompatibility.d.ts.map +0 -1
  262. package/bin/ECS/Utils/BigIntCompatibility.js +0 -476
  263. package/bin/ECS/Utils/BigIntCompatibility.js.map +0 -1
  264. package/bin/ECS/Utils/BitMaskHashMap.d.ts +0 -28
  265. package/bin/ECS/Utils/BitMaskHashMap.d.ts.map +0 -1
  266. package/bin/ECS/Utils/BitMaskHashMap.js +0 -127
  267. package/bin/ECS/Utils/BitMaskHashMap.js.map +0 -1
  268. package/bin/ECS/Utils/Bits.d.ts +0 -154
  269. package/bin/ECS/Utils/Bits.d.ts.map +0 -1
  270. package/bin/ECS/Utils/Bits.js +0 -331
  271. package/bin/ECS/Utils/Bits.js.map +0 -1
  272. package/bin/ECS/Utils/ComponentSparseSet.d.ts +0 -143
  273. package/bin/ECS/Utils/ComponentSparseSet.d.ts.map +0 -1
  274. package/bin/ECS/Utils/ComponentSparseSet.js +0 -347
  275. package/bin/ECS/Utils/ComponentSparseSet.js.map +0 -1
  276. package/bin/ECS/Utils/EntityList.d.ts +0 -115
  277. package/bin/ECS/Utils/EntityList.d.ts.map +0 -1
  278. package/bin/ECS/Utils/EntityList.js +0 -258
  279. package/bin/ECS/Utils/EntityList.js.map +0 -1
  280. package/bin/ECS/Utils/EntityProcessorList.d.ts +0 -56
  281. package/bin/ECS/Utils/EntityProcessorList.d.ts.map +0 -1
  282. package/bin/ECS/Utils/EntityProcessorList.js +0 -113
  283. package/bin/ECS/Utils/EntityProcessorList.js.map +0 -1
  284. package/bin/ECS/Utils/IdentifierPool.d.ts +0 -203
  285. package/bin/ECS/Utils/IdentifierPool.d.ts.map +0 -1
  286. package/bin/ECS/Utils/IdentifierPool.js +0 -325
  287. package/bin/ECS/Utils/IdentifierPool.js.map +0 -1
  288. package/bin/ECS/Utils/Matcher.d.ts +0 -171
  289. package/bin/ECS/Utils/Matcher.d.ts.map +0 -1
  290. package/bin/ECS/Utils/Matcher.js +0 -293
  291. package/bin/ECS/Utils/Matcher.js.map +0 -1
  292. package/bin/ECS/Utils/SparseSet.d.ts +0 -170
  293. package/bin/ECS/Utils/SparseSet.d.ts.map +0 -1
  294. package/bin/ECS/Utils/SparseSet.js +0 -280
  295. package/bin/ECS/Utils/SparseSet.js.map +0 -1
  296. package/bin/ECS/Utils/index.d.ts +0 -9
  297. package/bin/ECS/Utils/index.d.ts.map +0 -1
  298. package/bin/ECS/Utils/index.js +0 -10
  299. package/bin/ECS/Utils/index.js.map +0 -1
  300. package/bin/ECS/World.d.ts +0 -238
  301. package/bin/ECS/World.d.ts.map +0 -1
  302. package/bin/ECS/World.js +0 -416
  303. package/bin/ECS/World.js.map +0 -1
  304. package/bin/ECS/WorldManager.d.ts +0 -224
  305. package/bin/ECS/WorldManager.d.ts.map +0 -1
  306. package/bin/ECS/WorldManager.js +0 -365
  307. package/bin/ECS/WorldManager.js.map +0 -1
  308. package/bin/ECS/index.d.ts +0 -26
  309. package/bin/ECS/index.d.ts.map +0 -1
  310. package/bin/ECS/index.js +0 -21
  311. package/bin/ECS/index.js.map +0 -1
  312. package/bin/Platform/IPlatformAdapter.d.ts +0 -169
  313. package/bin/Platform/IPlatformAdapter.d.ts.map +0 -1
  314. package/bin/Platform/IPlatformAdapter.js +0 -2
  315. package/bin/Platform/IPlatformAdapter.js.map +0 -1
  316. package/bin/Platform/PlatformDetector.d.ts +0 -56
  317. package/bin/Platform/PlatformDetector.d.ts.map +0 -1
  318. package/bin/Platform/PlatformDetector.js +0 -247
  319. package/bin/Platform/PlatformDetector.js.map +0 -1
  320. package/bin/Platform/PlatformManager.d.ts +0 -50
  321. package/bin/Platform/PlatformManager.d.ts.map +0 -1
  322. package/bin/Platform/PlatformManager.js +0 -114
  323. package/bin/Platform/PlatformManager.js.map +0 -1
  324. package/bin/Platform/index.d.ts +0 -19
  325. package/bin/Platform/index.d.ts.map +0 -1
  326. package/bin/Platform/index.js +0 -29
  327. package/bin/Platform/index.js.map +0 -1
  328. package/bin/Plugins/DebugPlugin.d.ts +0 -156
  329. package/bin/Plugins/DebugPlugin.d.ts.map +0 -1
  330. package/bin/Plugins/DebugPlugin.js +0 -248
  331. package/bin/Plugins/DebugPlugin.js.map +0 -1
  332. package/bin/Plugins/index.d.ts +0 -2
  333. package/bin/Plugins/index.d.ts.map +0 -1
  334. package/bin/Plugins/index.js +0 -2
  335. package/bin/Plugins/index.js.map +0 -1
  336. package/bin/Types/IUpdatable.d.ts +0 -18
  337. package/bin/Types/IUpdatable.d.ts.map +0 -1
  338. package/bin/Types/IUpdatable.js +0 -7
  339. package/bin/Types/IUpdatable.js.map +0 -1
  340. package/bin/Types/TypeHelpers.d.ts +0 -238
  341. package/bin/Types/TypeHelpers.d.ts.map +0 -1
  342. package/bin/Types/TypeHelpers.js +0 -19
  343. package/bin/Types/TypeHelpers.js.map +0 -1
  344. package/bin/Types/index.d.ts +0 -466
  345. package/bin/Types/index.d.ts.map +0 -1
  346. package/bin/Types/index.js +0 -7
  347. package/bin/Types/index.js.map +0 -1
  348. package/bin/Utils/BinarySerializer.d.ts +0 -23
  349. package/bin/Utils/BinarySerializer.d.ts.map +0 -1
  350. package/bin/Utils/BinarySerializer.js +0 -100
  351. package/bin/Utils/BinarySerializer.js.map +0 -1
  352. package/bin/Utils/Debug/AdvancedProfilerCollector.d.ts +0 -153
  353. package/bin/Utils/Debug/AdvancedProfilerCollector.d.ts.map +0 -1
  354. package/bin/Utils/Debug/AdvancedProfilerCollector.js +0 -406
  355. package/bin/Utils/Debug/AdvancedProfilerCollector.js.map +0 -1
  356. package/bin/Utils/Debug/ComponentDataCollector.d.ts +0 -32
  357. package/bin/Utils/Debug/ComponentDataCollector.d.ts.map +0 -1
  358. package/bin/Utils/Debug/ComponentDataCollector.js +0 -250
  359. package/bin/Utils/Debug/ComponentDataCollector.js.map +0 -1
  360. package/bin/Utils/Debug/DebugConfigService.d.ts +0 -16
  361. package/bin/Utils/Debug/DebugConfigService.d.ts.map +0 -1
  362. package/bin/Utils/Debug/DebugConfigService.js +0 -42
  363. package/bin/Utils/Debug/DebugConfigService.js.map +0 -1
  364. package/bin/Utils/Debug/DebugManager.d.ts +0 -131
  365. package/bin/Utils/Debug/DebugManager.d.ts.map +0 -1
  366. package/bin/Utils/Debug/DebugManager.js +0 -848
  367. package/bin/Utils/Debug/DebugManager.js.map +0 -1
  368. package/bin/Utils/Debug/EntityDataCollector.d.ts +0 -115
  369. package/bin/Utils/Debug/EntityDataCollector.d.ts.map +0 -1
  370. package/bin/Utils/Debug/EntityDataCollector.js +0 -870
  371. package/bin/Utils/Debug/EntityDataCollector.js.map +0 -1
  372. package/bin/Utils/Debug/PerformanceDataCollector.d.ts +0 -31
  373. package/bin/Utils/Debug/PerformanceDataCollector.d.ts.map +0 -1
  374. package/bin/Utils/Debug/PerformanceDataCollector.js +0 -203
  375. package/bin/Utils/Debug/PerformanceDataCollector.js.map +0 -1
  376. package/bin/Utils/Debug/SceneDataCollector.d.ts +0 -18
  377. package/bin/Utils/Debug/SceneDataCollector.d.ts.map +0 -1
  378. package/bin/Utils/Debug/SceneDataCollector.js +0 -43
  379. package/bin/Utils/Debug/SceneDataCollector.js.map +0 -1
  380. package/bin/Utils/Debug/SystemDataCollector.d.ts +0 -14
  381. package/bin/Utils/Debug/SystemDataCollector.d.ts.map +0 -1
  382. package/bin/Utils/Debug/SystemDataCollector.js +0 -60
  383. package/bin/Utils/Debug/SystemDataCollector.js.map +0 -1
  384. package/bin/Utils/Debug/WebSocketManager.d.ts +0 -54
  385. package/bin/Utils/Debug/WebSocketManager.d.ts.map +0 -1
  386. package/bin/Utils/Debug/WebSocketManager.js +0 -141
  387. package/bin/Utils/Debug/WebSocketManager.js.map +0 -1
  388. package/bin/Utils/Debug/index.d.ts +0 -11
  389. package/bin/Utils/Debug/index.d.ts.map +0 -1
  390. package/bin/Utils/Debug/index.js +0 -10
  391. package/bin/Utils/Debug/index.js.map +0 -1
  392. package/bin/Utils/Emitter.d.ts +0 -61
  393. package/bin/Utils/Emitter.d.ts.map +0 -1
  394. package/bin/Utils/Emitter.js +0 -101
  395. package/bin/Utils/Emitter.js.map +0 -1
  396. package/bin/Utils/Extensions/NumberExtension.d.ts +0 -13
  397. package/bin/Utils/Extensions/NumberExtension.d.ts.map +0 -1
  398. package/bin/Utils/Extensions/NumberExtension.js +0 -17
  399. package/bin/Utils/Extensions/NumberExtension.js.map +0 -1
  400. package/bin/Utils/Extensions/TypeUtils.d.ts +0 -13
  401. package/bin/Utils/Extensions/TypeUtils.d.ts.map +0 -1
  402. package/bin/Utils/Extensions/TypeUtils.js +0 -15
  403. package/bin/Utils/Extensions/TypeUtils.js.map +0 -1
  404. package/bin/Utils/Extensions/index.d.ts +0 -3
  405. package/bin/Utils/Extensions/index.d.ts.map +0 -1
  406. package/bin/Utils/Extensions/index.js +0 -4
  407. package/bin/Utils/Extensions/index.js.map +0 -1
  408. package/bin/Utils/GlobalManager.d.ts +0 -29
  409. package/bin/Utils/GlobalManager.d.ts.map +0 -1
  410. package/bin/Utils/GlobalManager.js +0 -50
  411. package/bin/Utils/GlobalManager.js.map +0 -1
  412. package/bin/Utils/Logger/ConsoleLogger.d.ts +0 -74
  413. package/bin/Utils/Logger/ConsoleLogger.d.ts.map +0 -1
  414. package/bin/Utils/Logger/ConsoleLogger.js +0 -187
  415. package/bin/Utils/Logger/ConsoleLogger.js.map +0 -1
  416. package/bin/Utils/Logger/Constants.d.ts +0 -36
  417. package/bin/Utils/Logger/Constants.d.ts.map +0 -1
  418. package/bin/Utils/Logger/Constants.js +0 -40
  419. package/bin/Utils/Logger/Constants.js.map +0 -1
  420. package/bin/Utils/Logger/LoggerManager.d.ts +0 -91
  421. package/bin/Utils/Logger/LoggerManager.d.ts.map +0 -1
  422. package/bin/Utils/Logger/LoggerManager.js +0 -167
  423. package/bin/Utils/Logger/LoggerManager.js.map +0 -1
  424. package/bin/Utils/Logger/Types.d.ts +0 -40
  425. package/bin/Utils/Logger/Types.d.ts.map +0 -1
  426. package/bin/Utils/Logger/Types.js +0 -2
  427. package/bin/Utils/Logger/Types.js.map +0 -1
  428. package/bin/Utils/Logger/index.d.ts +0 -5
  429. package/bin/Utils/Logger/index.d.ts.map +0 -1
  430. package/bin/Utils/Logger/index.js +0 -5
  431. package/bin/Utils/Logger/index.js.map +0 -1
  432. package/bin/Utils/PerformanceMonitor.d.ts +0 -196
  433. package/bin/Utils/PerformanceMonitor.d.ts.map +0 -1
  434. package/bin/Utils/PerformanceMonitor.js +0 -244
  435. package/bin/Utils/PerformanceMonitor.js.map +0 -1
  436. package/bin/Utils/Pool/IPoolable.d.ts +0 -29
  437. package/bin/Utils/Pool/IPoolable.d.ts.map +0 -1
  438. package/bin/Utils/Pool/IPoolable.js +0 -2
  439. package/bin/Utils/Pool/IPoolable.js.map +0 -1
  440. package/bin/Utils/Pool/Pool.d.ts +0 -109
  441. package/bin/Utils/Pool/Pool.d.ts.map +0 -1
  442. package/bin/Utils/Pool/Pool.js +0 -238
  443. package/bin/Utils/Pool/Pool.js.map +0 -1
  444. package/bin/Utils/Pool/PoolManager.d.ts +0 -96
  445. package/bin/Utils/Pool/PoolManager.d.ts.map +0 -1
  446. package/bin/Utils/Pool/PoolManager.js +0 -199
  447. package/bin/Utils/Pool/PoolManager.js.map +0 -1
  448. package/bin/Utils/Pool/index.d.ts +0 -4
  449. package/bin/Utils/Pool/index.d.ts.map +0 -1
  450. package/bin/Utils/Pool/index.js +0 -4
  451. package/bin/Utils/Pool/index.js.map +0 -1
  452. package/bin/Utils/Profiler/AutoProfiler.d.ts +0 -160
  453. package/bin/Utils/Profiler/AutoProfiler.d.ts.map +0 -1
  454. package/bin/Utils/Profiler/AutoProfiler.js +0 -503
  455. package/bin/Utils/Profiler/AutoProfiler.js.map +0 -1
  456. package/bin/Utils/Profiler/ProfilerSDK.d.ts +0 -175
  457. package/bin/Utils/Profiler/ProfilerSDK.d.ts.map +0 -1
  458. package/bin/Utils/Profiler/ProfilerSDK.js +0 -727
  459. package/bin/Utils/Profiler/ProfilerSDK.js.map +0 -1
  460. package/bin/Utils/Profiler/ProfilerTypes.d.ts +0 -218
  461. package/bin/Utils/Profiler/ProfilerTypes.d.ts.map +0 -1
  462. package/bin/Utils/Profiler/ProfilerTypes.js +0 -47
  463. package/bin/Utils/Profiler/ProfilerTypes.js.map +0 -1
  464. package/bin/Utils/Profiler/index.d.ts +0 -8
  465. package/bin/Utils/Profiler/index.d.ts.map +0 -1
  466. package/bin/Utils/Profiler/index.js +0 -7
  467. package/bin/Utils/Profiler/index.js.map +0 -1
  468. package/bin/Utils/Time.d.ts +0 -47
  469. package/bin/Utils/Time.d.ts.map +0 -1
  470. package/bin/Utils/Time.js +0 -64
  471. package/bin/Utils/Time.js.map +0 -1
  472. package/bin/Utils/Timers/ITimer.d.ts +0 -16
  473. package/bin/Utils/Timers/ITimer.d.ts.map +0 -1
  474. package/bin/Utils/Timers/ITimer.js +0 -2
  475. package/bin/Utils/Timers/ITimer.js.map +0 -1
  476. package/bin/Utils/Timers/Timer.d.ts +0 -30
  477. package/bin/Utils/Timers/Timer.d.ts.map +0 -1
  478. package/bin/Utils/Timers/Timer.js +0 -58
  479. package/bin/Utils/Timers/Timer.js.map +0 -1
  480. package/bin/Utils/Timers/TimerManager.d.ts +0 -26
  481. package/bin/Utils/Timers/TimerManager.d.ts.map +0 -1
  482. package/bin/Utils/Timers/TimerManager.js +0 -48
  483. package/bin/Utils/Timers/TimerManager.js.map +0 -1
  484. package/bin/Utils/index.d.ts +0 -11
  485. package/bin/Utils/index.d.ts.map +0 -1
  486. package/bin/Utils/index.js +0 -11
  487. package/bin/Utils/index.js.map +0 -1
  488. package/bin/index.d.ts +0 -29
  489. package/bin/index.d.ts.map +0 -1
  490. package/bin/index.js +0 -36
  491. package/bin/index.js.map +0 -1
@@ -1,347 +0,0 @@
1
- import { ComponentRegistry } from '../Core/ComponentStorage';
2
- import { BitMask64Utils } from './BigIntCompatibility';
3
- import { SparseSet } from './SparseSet';
4
- import { Pool } from '../../Utils/Pool/Pool';
5
- /**
6
- * 可池化的实体集合
7
- *
8
- * 实现IPoolable接口,支持对象池复用以减少内存分配开销。
9
- */
10
- class PoolableEntitySet extends Set {
11
- constructor(..._args) {
12
- super();
13
- }
14
- reset() {
15
- this.clear();
16
- }
17
- }
18
- /**
19
- * 组件稀疏集合实现
20
- *
21
- * 结合通用稀疏集合和组件位掩码
22
- *
23
- * 存储结构:
24
- * - 稀疏集合存储实体
25
- * - 位掩码数组存储组件信息
26
- * - 组件类型映射表
27
- */
28
- export class ComponentSparseSet {
29
- constructor() {
30
- /**
31
- * 组件位掩码数组
32
- *
33
- * 与实体稀疏集合的密集数组对应,存储每个实体的组件位掩码。
34
- * 数组索引与稀疏集合的密集数组索引一一对应。
35
- */
36
- this._componentMasks = [];
37
- /**
38
- * 组件类型到实体集合的映射
39
- *
40
- * 维护每个组件类型对应的实体集合,用于快速的单组件查询。
41
- */
42
- this._componentToEntities = new Map();
43
- this._entities = new SparseSet();
44
- }
45
- /**
46
- * 添加实体到组件索引
47
- *
48
- * 分析实体的组件组成,生成位掩码,并更新所有相关索引。
49
- *
50
- * @param entity 要添加的实体
51
- */
52
- addEntity(entity) {
53
- // 如果实体已存在,先移除旧数据
54
- if (this._entities.has(entity)) {
55
- this.removeEntity(entity);
56
- }
57
- const componentMask = BitMask64Utils.clone(BitMask64Utils.ZERO);
58
- const entityComponents = new Set();
59
- // 分析实体组件并构建位掩码
60
- for (const component of entity.components) {
61
- const componentType = component.constructor;
62
- entityComponents.add(componentType);
63
- // 确保组件类型已注册
64
- if (!ComponentRegistry.isRegistered(componentType)) {
65
- ComponentRegistry.register(componentType);
66
- }
67
- // 获取组件位掩码并合并
68
- const bitMask = ComponentRegistry.getBitMask(componentType);
69
- BitMask64Utils.orInPlace(componentMask, bitMask);
70
- }
71
- // 添加实体到稀疏集合
72
- this._entities.add(entity);
73
- const entityIndex = this._entities.getIndex(entity);
74
- // 确保位掩码数组有足够空间
75
- while (this._componentMasks.length <= entityIndex) {
76
- this._componentMasks.push(BitMask64Utils.clone(BitMask64Utils.ZERO));
77
- }
78
- this._componentMasks[entityIndex] = componentMask;
79
- // 更新组件类型到实体的映射
80
- this.updateComponentMappings(entity, entityComponents, true);
81
- }
82
- /**
83
- * 从组件索引中移除实体
84
- *
85
- * 清理实体相关的所有索引数据,保持数据结构的紧凑性。
86
- *
87
- * @param entity 要移除的实体
88
- */
89
- removeEntity(entity) {
90
- const entityIndex = this._entities.getIndex(entity);
91
- if (entityIndex === undefined) {
92
- return; // 实体不存在
93
- }
94
- // 获取实体的组件类型集合
95
- const entityComponents = this.getEntityComponentTypes(entity);
96
- // 更新组件类型到实体的映射
97
- this.updateComponentMappings(entity, entityComponents, false);
98
- // 从稀疏集合中移除实体
99
- this._entities.remove(entity);
100
- // 维护位掩码数组的紧凑性
101
- const lastIndex = this._componentMasks.length - 1;
102
- if (entityIndex !== lastIndex) {
103
- // 将最后一个位掩码移动到当前位置
104
- this._componentMasks[entityIndex] = this._componentMasks[lastIndex];
105
- }
106
- this._componentMasks.pop();
107
- }
108
- /**
109
- * 查询包含指定组件的所有实体
110
- *
111
- * @param componentType 组件类型
112
- * @returns 包含该组件的实体集合
113
- */
114
- queryByComponent(componentType) {
115
- const entities = this._componentToEntities.get(componentType);
116
- return entities ? new Set(entities) : new Set();
117
- }
118
- /**
119
- * 多组件查询(AND操作)
120
- *
121
- * 查找同时包含所有指定组件的实体。
122
- *
123
- * @param componentTypes 组件类型数组
124
- * @returns 满足条件的实体集合
125
- */
126
- queryMultipleAnd(componentTypes) {
127
- if (componentTypes.length === 0) {
128
- return new Set();
129
- }
130
- if (componentTypes.length === 1) {
131
- return this.queryByComponent(componentTypes[0]);
132
- }
133
- // 构建目标位掩码
134
- const targetMask = BitMask64Utils.clone(BitMask64Utils.ZERO);
135
- for (const componentType of componentTypes) {
136
- if (!ComponentRegistry.isRegistered(componentType)) {
137
- return new Set(); // 未注册的组件类型,结果为空
138
- }
139
- const bitMask = ComponentRegistry.getBitMask(componentType);
140
- BitMask64Utils.orInPlace(targetMask, bitMask);
141
- }
142
- const result = ComponentSparseSet._entitySetPool.obtain();
143
- // 遍历所有实体,检查位掩码匹配
144
- this._entities.forEach((entity, index) => {
145
- const entityMask = this._componentMasks[index];
146
- if (BitMask64Utils.hasAll(entityMask, targetMask)) {
147
- result.add(entity);
148
- }
149
- });
150
- return result;
151
- }
152
- /**
153
- * 多组件查询(OR操作)
154
- *
155
- * 查找包含任意一个指定组件的实体。
156
- *
157
- * @param componentTypes 组件类型数组
158
- * @returns 满足条件的实体集合
159
- */
160
- queryMultipleOr(componentTypes) {
161
- if (componentTypes.length === 0) {
162
- return new Set();
163
- }
164
- if (componentTypes.length === 1) {
165
- return this.queryByComponent(componentTypes[0]);
166
- }
167
- // 构建目标位掩码
168
- const targetMask = BitMask64Utils.clone(BitMask64Utils.ZERO);
169
- for (const componentType of componentTypes) {
170
- if (ComponentRegistry.isRegistered(componentType)) {
171
- const bitMask = ComponentRegistry.getBitMask(componentType);
172
- BitMask64Utils.orInPlace(targetMask, bitMask);
173
- }
174
- }
175
- if (BitMask64Utils.equals(targetMask, BitMask64Utils.ZERO)) {
176
- return new Set(); // 没有有效的组件类型
177
- }
178
- const result = ComponentSparseSet._entitySetPool.obtain();
179
- // 遍历所有实体,检查位掩码匹配
180
- this._entities.forEach((entity, index) => {
181
- const entityMask = this._componentMasks[index];
182
- if (BitMask64Utils.hasAny(entityMask, targetMask)) {
183
- result.add(entity);
184
- }
185
- });
186
- return result;
187
- }
188
- /**
189
- * 检查实体是否包含指定组件
190
- *
191
- * @param entity 实体
192
- * @param componentType 组件类型
193
- * @returns 是否包含该组件
194
- */
195
- hasComponent(entity, componentType) {
196
- const entityIndex = this._entities.getIndex(entity);
197
- if (entityIndex === undefined) {
198
- return false;
199
- }
200
- if (!ComponentRegistry.isRegistered(componentType)) {
201
- return false;
202
- }
203
- const entityMask = this._componentMasks[entityIndex];
204
- const componentMask = ComponentRegistry.getBitMask(componentType);
205
- return BitMask64Utils.hasAny(entityMask, componentMask);
206
- }
207
- /**
208
- * 获取实体的组件位掩码
209
- *
210
- * @param entity 实体
211
- * @returns 组件位掩码,如果实体不存在则返回undefined
212
- */
213
- getEntityMask(entity) {
214
- const entityIndex = this._entities.getIndex(entity);
215
- if (entityIndex === undefined) {
216
- return undefined;
217
- }
218
- return this._componentMasks[entityIndex];
219
- }
220
- /**
221
- * 获取所有实体
222
- *
223
- * @returns 所有实体的数组
224
- */
225
- getAllEntities() {
226
- return this._entities.toArray();
227
- }
228
- /**
229
- * 获取实体数量
230
- */
231
- get size() {
232
- return this._entities.size;
233
- }
234
- /**
235
- * 检查是否为空
236
- */
237
- get isEmpty() {
238
- return this._entities.isEmpty;
239
- }
240
- /**
241
- * 遍历所有实体
242
- *
243
- * @param callback 遍历回调函数
244
- */
245
- forEach(callback) {
246
- this._entities.forEach((entity, index) => {
247
- callback(entity, this._componentMasks[index], index);
248
- });
249
- }
250
- /**
251
- * 清空所有数据
252
- */
253
- clear() {
254
- this._entities.clear();
255
- this._componentMasks.length = 0;
256
- // 清理时将所有持有的实体集合返回到池中
257
- for (const entitySet of this._componentToEntities.values()) {
258
- ComponentSparseSet._entitySetPool.release(entitySet);
259
- }
260
- this._componentToEntities.clear();
261
- }
262
- /**
263
- * 获取内存使用统计
264
- */
265
- getMemoryStats() {
266
- const entitiesStats = this._entities.getMemoryStats();
267
- const masksMemory = this._componentMasks.length * 16; // 估计每个BigInt 16字节
268
- let mappingsMemory = this._componentToEntities.size * 16; // Map条目开销
269
- for (const entitySet of this._componentToEntities.values()) {
270
- mappingsMemory += entitySet.size * 8; // 每个实体引用8字节
271
- }
272
- return {
273
- entitiesMemory: entitiesStats.totalMemory,
274
- masksMemory,
275
- mappingsMemory,
276
- totalMemory: entitiesStats.totalMemory + masksMemory + mappingsMemory
277
- };
278
- }
279
- /**
280
- * 验证数据结构完整性
281
- */
282
- validate() {
283
- // 检查稀疏集合的有效性
284
- if (!this._entities.validate()) {
285
- return false;
286
- }
287
- // 检查位掩码数组长度一致性
288
- if (this._componentMasks.length !== this._entities.size) {
289
- return false;
290
- }
291
- // 检查组件映射的一致性
292
- const allMappedEntities = new Set();
293
- for (const entitySet of this._componentToEntities.values()) {
294
- for (const entity of entitySet) {
295
- allMappedEntities.add(entity);
296
- }
297
- }
298
- // 验证映射中的实体都在稀疏集合中
299
- for (const entity of allMappedEntities) {
300
- if (!this._entities.has(entity)) {
301
- return false;
302
- }
303
- }
304
- return true;
305
- }
306
- /**
307
- * 获取实体的组件类型集合
308
- */
309
- getEntityComponentTypes(entity) {
310
- const componentTypes = new Set();
311
- for (const component of entity.components) {
312
- componentTypes.add(component.constructor);
313
- }
314
- return componentTypes;
315
- }
316
- /**
317
- * 更新组件类型到实体的映射
318
- */
319
- updateComponentMappings(entity, componentTypes, add) {
320
- for (const componentType of componentTypes) {
321
- let entities = this._componentToEntities.get(componentType);
322
- if (add) {
323
- if (!entities) {
324
- entities = ComponentSparseSet._entitySetPool.obtain();
325
- this._componentToEntities.set(componentType, entities);
326
- }
327
- entities.add(entity);
328
- }
329
- else {
330
- if (entities) {
331
- entities.delete(entity);
332
- if (entities.size === 0) {
333
- this._componentToEntities.delete(componentType);
334
- ComponentSparseSet._entitySetPool.release(entities);
335
- }
336
- }
337
- }
338
- }
339
- }
340
- }
341
- /**
342
- * 实体集合对象池
343
- *
344
- * 使用core库的Pool系统来管理PoolableEntitySet对象的复用。
345
- */
346
- ComponentSparseSet._entitySetPool = Pool.getPool(PoolableEntitySet, 50, 512);
347
- //# sourceMappingURL=ComponentSparseSet.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ComponentSparseSet.js","sourceRoot":"","sources":["../../../src/ECS/Utils/ComponentSparseSet.ts"],"names":[],"mappings":"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"}
@@ -1,115 +0,0 @@
1
- import { Entity } from '../Entity';
2
- import { Component } from '../Component';
3
- /**
4
- * 高性能实体列表管理器
5
- * 管理场景中的所有实体,支持快速查找和批量操作
6
- */
7
- export declare class EntityList {
8
- buffer: Entity[];
9
- private _scene;
10
- private _idToEntity;
11
- private _nameToEntities;
12
- private _entitiesToAdd;
13
- private _entitiesToRemove;
14
- get count(): number;
15
- constructor(scene: any);
16
- /**
17
- * 添加实体
18
- * @param entity 要添加的实体
19
- */
20
- add(entity: Entity): void;
21
- /**
22
- * 立即添加实体
23
- * @param entity 要添加的实体
24
- */
25
- private addImmediate;
26
- /**
27
- * 移除实体
28
- * @param entity 要移除的实体
29
- */
30
- remove(entity: Entity): void;
31
- /**
32
- * 立即移除实体
33
- * @param entity 要移除的实体
34
- */
35
- private removeImmediate;
36
- /**
37
- * 移除所有实体
38
- */
39
- removeAllEntities(): void;
40
- /**
41
- * 更新实体列表,处理延迟操作
42
- */
43
- updateLists(): void;
44
- /**
45
- * 更新实体列表
46
- *
47
- * 处理延迟操作(添加/删除实体)
48
- */
49
- update(): void;
50
- /**
51
- * 根据名称查找实体(使用索引,O(1)复杂度)
52
- * @param name 实体名称
53
- * @returns 找到的第一个实体或null
54
- */
55
- findEntity(name: string): Entity | null;
56
- /**
57
- * 根据名称查找所有实体
58
- * @param name 实体名称
59
- * @returns 找到的所有实体数组
60
- */
61
- findEntitiesByName(name: string): Entity[];
62
- /**
63
- * 根据ID查找实体(使用索引,O(1)复杂度)
64
- * @param id 实体ID
65
- * @returns 找到的实体或null
66
- */
67
- findEntityById(id: number): Entity | null;
68
- /**
69
- * 根据标签查找实体
70
- * @param tag 标签
71
- * @returns 找到的所有实体数组
72
- */
73
- findEntitiesByTag(tag: number): Entity[];
74
- /**
75
- * 根据组件类型查找实体
76
- * @param componentType 组件类型
77
- * @returns 找到的所有实体数组
78
- */
79
- findEntitiesWithComponent<T extends Component>(componentType: new (...args: any[]) => T): Entity[];
80
- /**
81
- * 批量操作:对所有实体执行指定操作
82
- * @param action 要执行的操作
83
- */
84
- forEach(action: (entity: Entity) => void): void;
85
- /**
86
- * 批量操作:对符合条件的实体执行指定操作
87
- * @param predicate 筛选条件
88
- * @param action 要执行的操作
89
- */
90
- forEachWhere(predicate: (entity: Entity) => boolean, action: (entity: Entity) => void): void;
91
- /**
92
- * 更新名称索引
93
- * @param entity 实体
94
- * @param isAdd 是否为添加操作
95
- */
96
- private updateNameIndex;
97
- /**
98
- * 重新排序实体
99
- * @param entityId 要移动的实体ID
100
- * @param newIndex 新的索引位置
101
- */
102
- reorderEntity(entityId: number, newIndex: number): void;
103
- /**
104
- * 获取实体列表的统计信息
105
- * @returns 统计信息
106
- */
107
- getStats(): {
108
- totalEntities: number;
109
- activeEntities: number;
110
- pendingAdd: number;
111
- pendingRemove: number;
112
- nameIndexSize: number;
113
- };
114
- }
115
- //# sourceMappingURL=EntityList.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EntityList.d.ts","sourceRoot":"","sources":["../../../src/ECS/Utils/EntityList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC;;;GAGG;AACH,qBAAa,UAAU;IACZ,MAAM,EAAE,MAAM,EAAE,CAAM;IAC7B,OAAO,CAAC,MAAM,CAAM;IAGpB,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,eAAe,CAA+B;IAGtD,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,iBAAiB,CAAgB;IAEzC,IAAW,KAAK,IAAI,MAAM,CAEzB;gBAEW,KAAK,EAAE,GAAG;IAItB;;;OAGG;IACI,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAIhC;;;OAGG;IACH,OAAO,CAAC,YAAY;IAapB;;;OAGG;IACI,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAInC;;;OAGG;IACH,OAAO,CAAC,eAAe;IAgBvB;;OAEG;IACI,iBAAiB,IAAI,IAAI;IAuBhC;;OAEG;IACI,WAAW,IAAI,IAAI;IAkB1B;;;;OAIG;IACI,MAAM,IAAI,IAAI;IAKrB;;;;OAIG;IACI,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAK9C;;;;OAIG;IACI,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;IAIjD;;;;OAIG;IACI,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIhD;;;;OAIG;IACI,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE;IAY/C;;;;OAIG;IACI,yBAAyB,CAAC,CAAC,SAAS,SAAS,EAAE,aAAa,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,MAAM,EAAE;IAYzG;;;OAGG;IACI,OAAO,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAMtD;;;;OAIG;IACI,YAAY,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAQnG;;;;OAIG;IACH,OAAO,CAAC,eAAe;IA4BvB;;;;OAIG;IACI,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAgB9D;;;OAGG;IACI,QAAQ,IAAI;QACf,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;QACnB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,CAAC;KACrB;CAgBR"}