@esengine/ecs-framework 2.3.0 → 2.3.2

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 (490) hide show
  1. package/index.cjs +2 -0
  2. package/index.cjs.map +1 -0
  3. package/index.d.ts +13466 -0
  4. package/index.es5.js +4 -0
  5. package/index.es5.js.map +1 -0
  6. package/index.mjs +2 -0
  7. package/index.mjs.map +1 -0
  8. package/index.umd.js +4 -0
  9. package/index.umd.js.map +1 -0
  10. package/package.json +47 -84
  11. package/bin/Core/DI/Decorators.d.ts +0 -206
  12. package/bin/Core/DI/Decorators.d.ts.map +0 -1
  13. package/bin/Core/DI/Decorators.js +0 -253
  14. package/bin/Core/DI/Decorators.js.map +0 -1
  15. package/bin/Core/DI/index.d.ts +0 -8
  16. package/bin/Core/DI/index.d.ts.map +0 -1
  17. package/bin/Core/DI/index.js +0 -7
  18. package/bin/Core/DI/index.js.map +0 -1
  19. package/bin/Core/Plugin.d.ts +0 -112
  20. package/bin/Core/Plugin.d.ts.map +0 -1
  21. package/bin/Core/Plugin.js +0 -19
  22. package/bin/Core/Plugin.js.map +0 -1
  23. package/bin/Core/PluginManager.d.ts +0 -118
  24. package/bin/Core/PluginManager.d.ts.map +0 -1
  25. package/bin/Core/PluginManager.js +0 -229
  26. package/bin/Core/PluginManager.js.map +0 -1
  27. package/bin/Core/ServiceContainer.d.ts +0 -221
  28. package/bin/Core/ServiceContainer.d.ts.map +0 -1
  29. package/bin/Core/ServiceContainer.js +0 -352
  30. package/bin/Core/ServiceContainer.js.map +0 -1
  31. package/bin/Core.d.ts +0 -379
  32. package/bin/Core.d.ts.map +0 -1
  33. package/bin/Core.js +0 -553
  34. package/bin/Core.js.map +0 -1
  35. package/bin/ECS/Component.d.ts +0 -104
  36. package/bin/ECS/Component.d.ts.map +0 -1
  37. package/bin/ECS/Component.js +0 -105
  38. package/bin/ECS/Component.js.map +0 -1
  39. package/bin/ECS/Components/HierarchyComponent.d.ts +0 -46
  40. package/bin/ECS/Components/HierarchyComponent.d.ts.map +0 -1
  41. package/bin/ECS/Components/HierarchyComponent.js +0 -65
  42. package/bin/ECS/Components/HierarchyComponent.js.map +0 -1
  43. package/bin/ECS/Components/index.d.ts +0 -2
  44. package/bin/ECS/Components/index.d.ts.map +0 -1
  45. package/bin/ECS/Components/index.js +0 -2
  46. package/bin/ECS/Components/index.js.map +0 -1
  47. package/bin/ECS/Core/ArchetypeSystem.d.ts +0 -103
  48. package/bin/ECS/Core/ArchetypeSystem.d.ts.map +0 -1
  49. package/bin/ECS/Core/ArchetypeSystem.js +0 -244
  50. package/bin/ECS/Core/ArchetypeSystem.js.map +0 -1
  51. package/bin/ECS/Core/CommandBuffer.d.ts +0 -154
  52. package/bin/ECS/Core/CommandBuffer.d.ts.map +0 -1
  53. package/bin/ECS/Core/CommandBuffer.js +0 -244
  54. package/bin/ECS/Core/CommandBuffer.js.map +0 -1
  55. package/bin/ECS/Core/ComponentPool.d.ts +0 -139
  56. package/bin/ECS/Core/ComponentPool.d.ts.map +0 -1
  57. package/bin/ECS/Core/ComponentPool.js +0 -276
  58. package/bin/ECS/Core/ComponentPool.js.map +0 -1
  59. package/bin/ECS/Core/ComponentStorage/ComponentRegistry.d.ts +0 -127
  60. package/bin/ECS/Core/ComponentStorage/ComponentRegistry.d.ts.map +0 -1
  61. package/bin/ECS/Core/ComponentStorage/ComponentRegistry.js +0 -235
  62. package/bin/ECS/Core/ComponentStorage/ComponentRegistry.js.map +0 -1
  63. package/bin/ECS/Core/ComponentStorage.d.ts +0 -185
  64. package/bin/ECS/Core/ComponentStorage.d.ts.map +0 -1
  65. package/bin/ECS/Core/ComponentStorage.js +0 -321
  66. package/bin/ECS/Core/ComponentStorage.js.map +0 -1
  67. package/bin/ECS/Core/EntityLifecyclePolicy.d.ts +0 -26
  68. package/bin/ECS/Core/EntityLifecyclePolicy.d.ts.map +0 -1
  69. package/bin/ECS/Core/EntityLifecyclePolicy.js +0 -2
  70. package/bin/ECS/Core/EntityLifecyclePolicy.js.map +0 -1
  71. package/bin/ECS/Core/EventBus.d.ts +0 -210
  72. package/bin/ECS/Core/EventBus.d.ts.map +0 -1
  73. package/bin/ECS/Core/EventBus.js +0 -370
  74. package/bin/ECS/Core/EventBus.js.map +0 -1
  75. package/bin/ECS/Core/EventSystem.d.ts +0 -225
  76. package/bin/ECS/Core/EventSystem.d.ts.map +0 -1
  77. package/bin/ECS/Core/EventSystem.js +0 -448
  78. package/bin/ECS/Core/EventSystem.js.map +0 -1
  79. package/bin/ECS/Core/Events/index.d.ts +0 -3
  80. package/bin/ECS/Core/Events/index.d.ts.map +0 -1
  81. package/bin/ECS/Core/Events/index.js +0 -3
  82. package/bin/ECS/Core/Events/index.js.map +0 -1
  83. package/bin/ECS/Core/FluentAPI/ComponentBuilder.d.ts +0 -35
  84. package/bin/ECS/Core/FluentAPI/ComponentBuilder.d.ts.map +0 -1
  85. package/bin/ECS/Core/FluentAPI/ComponentBuilder.js +0 -48
  86. package/bin/ECS/Core/FluentAPI/ComponentBuilder.js.map +0 -1
  87. package/bin/ECS/Core/FluentAPI/ECSFluentAPI.d.ts +0 -135
  88. package/bin/ECS/Core/FluentAPI/ECSFluentAPI.d.ts.map +0 -1
  89. package/bin/ECS/Core/FluentAPI/ECSFluentAPI.js +0 -166
  90. package/bin/ECS/Core/FluentAPI/ECSFluentAPI.js.map +0 -1
  91. package/bin/ECS/Core/FluentAPI/EntityBatchOperator.d.ts +0 -58
  92. package/bin/ECS/Core/FluentAPI/EntityBatchOperator.d.ts.map +0 -1
  93. package/bin/ECS/Core/FluentAPI/EntityBatchOperator.js +0 -85
  94. package/bin/ECS/Core/FluentAPI/EntityBatchOperator.js.map +0 -1
  95. package/bin/ECS/Core/FluentAPI/EntityBuilder.d.ts +0 -110
  96. package/bin/ECS/Core/FluentAPI/EntityBuilder.d.ts.map +0 -1
  97. package/bin/ECS/Core/FluentAPI/EntityBuilder.js +0 -181
  98. package/bin/ECS/Core/FluentAPI/EntityBuilder.js.map +0 -1
  99. package/bin/ECS/Core/FluentAPI/SceneBuilder.d.ts +0 -53
  100. package/bin/ECS/Core/FluentAPI/SceneBuilder.d.ts.map +0 -1
  101. package/bin/ECS/Core/FluentAPI/SceneBuilder.js +0 -79
  102. package/bin/ECS/Core/FluentAPI/SceneBuilder.js.map +0 -1
  103. package/bin/ECS/Core/FluentAPI/index.d.ts +0 -6
  104. package/bin/ECS/Core/FluentAPI/index.d.ts.map +0 -1
  105. package/bin/ECS/Core/FluentAPI/index.js +0 -6
  106. package/bin/ECS/Core/FluentAPI/index.js.map +0 -1
  107. package/bin/ECS/Core/FluentAPI.d.ts +0 -2
  108. package/bin/ECS/Core/FluentAPI.d.ts.map +0 -1
  109. package/bin/ECS/Core/FluentAPI.js +0 -3
  110. package/bin/ECS/Core/FluentAPI.js.map +0 -1
  111. package/bin/ECS/Core/Query/TypedQuery.d.ts +0 -214
  112. package/bin/ECS/Core/Query/TypedQuery.d.ts.map +0 -1
  113. package/bin/ECS/Core/Query/TypedQuery.js +0 -294
  114. package/bin/ECS/Core/Query/TypedQuery.js.map +0 -1
  115. package/bin/ECS/Core/Query/index.d.ts +0 -3
  116. package/bin/ECS/Core/Query/index.d.ts.map +0 -1
  117. package/bin/ECS/Core/Query/index.js +0 -3
  118. package/bin/ECS/Core/Query/index.js.map +0 -1
  119. package/bin/ECS/Core/QuerySystem.d.ts +0 -458
  120. package/bin/ECS/Core/QuerySystem.d.ts.map +0 -1
  121. package/bin/ECS/Core/QuerySystem.js +0 -1069
  122. package/bin/ECS/Core/QuerySystem.js.map +0 -1
  123. package/bin/ECS/Core/QueryTypes.d.ts +0 -34
  124. package/bin/ECS/Core/QueryTypes.d.ts.map +0 -1
  125. package/bin/ECS/Core/QueryTypes.js +0 -13
  126. package/bin/ECS/Core/QueryTypes.js.map +0 -1
  127. package/bin/ECS/Core/ReactiveQuery.d.ts +0 -211
  128. package/bin/ECS/Core/ReactiveQuery.d.ts.map +0 -1
  129. package/bin/ECS/Core/ReactiveQuery.js +0 -401
  130. package/bin/ECS/Core/ReactiveQuery.js.map +0 -1
  131. package/bin/ECS/Core/ReferenceTracker.d.ts +0 -111
  132. package/bin/ECS/Core/ReferenceTracker.d.ts.map +0 -1
  133. package/bin/ECS/Core/ReferenceTracker.js +0 -254
  134. package/bin/ECS/Core/ReferenceTracker.js.map +0 -1
  135. package/bin/ECS/Core/SoASerializer.d.ts +0 -28
  136. package/bin/ECS/Core/SoASerializer.d.ts.map +0 -1
  137. package/bin/ECS/Core/SoASerializer.js +0 -85
  138. package/bin/ECS/Core/SoASerializer.js.map +0 -1
  139. package/bin/ECS/Core/SoAStorage.d.ts +0 -129
  140. package/bin/ECS/Core/SoAStorage.d.ts.map +0 -1
  141. package/bin/ECS/Core/SoAStorage.js +0 -685
  142. package/bin/ECS/Core/SoAStorage.js.map +0 -1
  143. package/bin/ECS/Core/SoATypeRegistry.d.ts +0 -50
  144. package/bin/ECS/Core/SoATypeRegistry.d.ts.map +0 -1
  145. package/bin/ECS/Core/SoATypeRegistry.js +0 -135
  146. package/bin/ECS/Core/SoATypeRegistry.js.map +0 -1
  147. package/bin/ECS/Core/Storage/index.d.ts +0 -4
  148. package/bin/ECS/Core/Storage/index.d.ts.map +0 -1
  149. package/bin/ECS/Core/Storage/index.js +0 -4
  150. package/bin/ECS/Core/Storage/index.js.map +0 -1
  151. package/bin/ECS/Core/StorageDecorators.d.ts +0 -20
  152. package/bin/ECS/Core/StorageDecorators.d.ts.map +0 -1
  153. package/bin/ECS/Core/StorageDecorators.js +0 -27
  154. package/bin/ECS/Core/StorageDecorators.js.map +0 -1
  155. package/bin/ECS/CoreEvents.d.ts +0 -131
  156. package/bin/ECS/CoreEvents.d.ts.map +0 -1
  157. package/bin/ECS/CoreEvents.js +0 -163
  158. package/bin/ECS/CoreEvents.js.map +0 -1
  159. package/bin/ECS/Decorators/EntityRefDecorator.d.ts +0 -46
  160. package/bin/ECS/Decorators/EntityRefDecorator.d.ts.map +0 -1
  161. package/bin/ECS/Decorators/EntityRefDecorator.js +0 -118
  162. package/bin/ECS/Decorators/EntityRefDecorator.js.map +0 -1
  163. package/bin/ECS/Decorators/PropertyDecorator.d.ts +0 -168
  164. package/bin/ECS/Decorators/PropertyDecorator.d.ts.map +0 -1
  165. package/bin/ECS/Decorators/PropertyDecorator.js +0 -40
  166. package/bin/ECS/Decorators/PropertyDecorator.js.map +0 -1
  167. package/bin/ECS/Decorators/TypeDecorators.d.ts +0 -124
  168. package/bin/ECS/Decorators/TypeDecorators.d.ts.map +0 -1
  169. package/bin/ECS/Decorators/TypeDecorators.js +0 -151
  170. package/bin/ECS/Decorators/TypeDecorators.js.map +0 -1
  171. package/bin/ECS/Decorators/index.d.ts +0 -7
  172. package/bin/ECS/Decorators/index.d.ts.map +0 -1
  173. package/bin/ECS/Decorators/index.js +0 -4
  174. package/bin/ECS/Decorators/index.js.map +0 -1
  175. package/bin/ECS/Entity.d.ts +0 -415
  176. package/bin/ECS/Entity.d.ts.map +0 -1
  177. package/bin/ECS/Entity.js +0 -683
  178. package/bin/ECS/Entity.js.map +0 -1
  179. package/bin/ECS/EntityTags.d.ts +0 -71
  180. package/bin/ECS/EntityTags.d.ts.map +0 -1
  181. package/bin/ECS/EntityTags.js +0 -82
  182. package/bin/ECS/EntityTags.js.map +0 -1
  183. package/bin/ECS/IScene.d.ts +0 -308
  184. package/bin/ECS/IScene.d.ts.map +0 -1
  185. package/bin/ECS/IScene.js +0 -2
  186. package/bin/ECS/IScene.js.map +0 -1
  187. package/bin/ECS/Scene.d.ts +0 -799
  188. package/bin/ECS/Scene.d.ts.map +0 -1
  189. package/bin/ECS/Scene.js +0 -1203
  190. package/bin/ECS/Scene.js.map +0 -1
  191. package/bin/ECS/SceneManager.d.ts +0 -197
  192. package/bin/ECS/SceneManager.d.ts.map +0 -1
  193. package/bin/ECS/SceneManager.js +0 -264
  194. package/bin/ECS/SceneManager.js.map +0 -1
  195. package/bin/ECS/Serialization/ComponentSerializer.d.ts +0 -106
  196. package/bin/ECS/Serialization/ComponentSerializer.d.ts.map +0 -1
  197. package/bin/ECS/Serialization/ComponentSerializer.js +0 -251
  198. package/bin/ECS/Serialization/ComponentSerializer.js.map +0 -1
  199. package/bin/ECS/Serialization/EntitySerializer.d.ts +0 -111
  200. package/bin/ECS/Serialization/EntitySerializer.d.ts.map +0 -1
  201. package/bin/ECS/Serialization/EntitySerializer.js +0 -155
  202. package/bin/ECS/Serialization/EntitySerializer.js.map +0 -1
  203. package/bin/ECS/Serialization/IncrementalSerializer.d.ts +0 -259
  204. package/bin/ECS/Serialization/IncrementalSerializer.d.ts.map +0 -1
  205. package/bin/ECS/Serialization/IncrementalSerializer.js +0 -500
  206. package/bin/ECS/Serialization/IncrementalSerializer.js.map +0 -1
  207. package/bin/ECS/Serialization/SceneSerializer.d.ts +0 -213
  208. package/bin/ECS/Serialization/SceneSerializer.d.ts.map +0 -1
  209. package/bin/ECS/Serialization/SceneSerializer.js +0 -387
  210. package/bin/ECS/Serialization/SceneSerializer.js.map +0 -1
  211. package/bin/ECS/Serialization/SerializationDecorators.d.ts +0 -136
  212. package/bin/ECS/Serialization/SerializationDecorators.d.ts.map +0 -1
  213. package/bin/ECS/Serialization/SerializationDecorators.js +0 -216
  214. package/bin/ECS/Serialization/SerializationDecorators.js.map +0 -1
  215. package/bin/ECS/Serialization/VersionMigration.d.ts +0 -156
  216. package/bin/ECS/Serialization/VersionMigration.d.ts.map +0 -1
  217. package/bin/ECS/Serialization/VersionMigration.js +0 -279
  218. package/bin/ECS/Serialization/VersionMigration.js.map +0 -1
  219. package/bin/ECS/Serialization/index.d.ts +0 -18
  220. package/bin/ECS/Serialization/index.d.ts.map +0 -1
  221. package/bin/ECS/Serialization/index.js +0 -18
  222. package/bin/ECS/Serialization/index.js.map +0 -1
  223. package/bin/ECS/Systems/EntityCache.d.ts +0 -114
  224. package/bin/ECS/Systems/EntityCache.d.ts.map +0 -1
  225. package/bin/ECS/Systems/EntityCache.js +0 -145
  226. package/bin/ECS/Systems/EntityCache.js.map +0 -1
  227. package/bin/ECS/Systems/EntitySystem.d.ts +0 -591
  228. package/bin/ECS/Systems/EntitySystem.d.ts.map +0 -1
  229. package/bin/ECS/Systems/EntitySystem.js +0 -1102
  230. package/bin/ECS/Systems/EntitySystem.js.map +0 -1
  231. package/bin/ECS/Systems/HierarchySystem.d.ts +0 -155
  232. package/bin/ECS/Systems/HierarchySystem.d.ts.map +0 -1
  233. package/bin/ECS/Systems/HierarchySystem.js +0 -498
  234. package/bin/ECS/Systems/HierarchySystem.js.map +0 -1
  235. package/bin/ECS/Systems/IntervalSystem.d.ts +0 -33
  236. package/bin/ECS/Systems/IntervalSystem.d.ts.map +0 -1
  237. package/bin/ECS/Systems/IntervalSystem.js +0 -50
  238. package/bin/ECS/Systems/IntervalSystem.js.map +0 -1
  239. package/bin/ECS/Systems/PassiveSystem.d.ts +0 -17
  240. package/bin/ECS/Systems/PassiveSystem.d.ts.map +0 -1
  241. package/bin/ECS/Systems/PassiveSystem.js +0 -19
  242. package/bin/ECS/Systems/PassiveSystem.js.map +0 -1
  243. package/bin/ECS/Systems/ProcessingSystem.d.ts +0 -21
  244. package/bin/ECS/Systems/ProcessingSystem.d.ts.map +0 -1
  245. package/bin/ECS/Systems/ProcessingSystem.js +0 -20
  246. package/bin/ECS/Systems/ProcessingSystem.js.map +0 -1
  247. package/bin/ECS/Systems/WorkerEntitySystem.d.ts +0 -313
  248. package/bin/ECS/Systems/WorkerEntitySystem.d.ts.map +0 -1
  249. package/bin/ECS/Systems/WorkerEntitySystem.js +0 -792
  250. package/bin/ECS/Systems/WorkerEntitySystem.js.map +0 -1
  251. package/bin/ECS/Systems/index.d.ts +0 -8
  252. package/bin/ECS/Systems/index.d.ts.map +0 -1
  253. package/bin/ECS/Systems/index.js +0 -8
  254. package/bin/ECS/Systems/index.js.map +0 -1
  255. package/bin/ECS/TypedEntity.d.ts +0 -192
  256. package/bin/ECS/TypedEntity.d.ts.map +0 -1
  257. package/bin/ECS/TypedEntity.js +0 -254
  258. package/bin/ECS/TypedEntity.js.map +0 -1
  259. package/bin/ECS/Utils/BigIntCompatibility.d.ts +0 -151
  260. package/bin/ECS/Utils/BigIntCompatibility.d.ts.map +0 -1
  261. package/bin/ECS/Utils/BigIntCompatibility.js +0 -476
  262. package/bin/ECS/Utils/BigIntCompatibility.js.map +0 -1
  263. package/bin/ECS/Utils/BitMaskHashMap.d.ts +0 -28
  264. package/bin/ECS/Utils/BitMaskHashMap.d.ts.map +0 -1
  265. package/bin/ECS/Utils/BitMaskHashMap.js +0 -127
  266. package/bin/ECS/Utils/BitMaskHashMap.js.map +0 -1
  267. package/bin/ECS/Utils/Bits.d.ts +0 -154
  268. package/bin/ECS/Utils/Bits.d.ts.map +0 -1
  269. package/bin/ECS/Utils/Bits.js +0 -331
  270. package/bin/ECS/Utils/Bits.js.map +0 -1
  271. package/bin/ECS/Utils/ComponentSparseSet.d.ts +0 -143
  272. package/bin/ECS/Utils/ComponentSparseSet.d.ts.map +0 -1
  273. package/bin/ECS/Utils/ComponentSparseSet.js +0 -347
  274. package/bin/ECS/Utils/ComponentSparseSet.js.map +0 -1
  275. package/bin/ECS/Utils/EntityList.d.ts +0 -115
  276. package/bin/ECS/Utils/EntityList.d.ts.map +0 -1
  277. package/bin/ECS/Utils/EntityList.js +0 -258
  278. package/bin/ECS/Utils/EntityList.js.map +0 -1
  279. package/bin/ECS/Utils/EntityProcessorList.d.ts +0 -56
  280. package/bin/ECS/Utils/EntityProcessorList.d.ts.map +0 -1
  281. package/bin/ECS/Utils/EntityProcessorList.js +0 -113
  282. package/bin/ECS/Utils/EntityProcessorList.js.map +0 -1
  283. package/bin/ECS/Utils/IdentifierPool.d.ts +0 -203
  284. package/bin/ECS/Utils/IdentifierPool.d.ts.map +0 -1
  285. package/bin/ECS/Utils/IdentifierPool.js +0 -325
  286. package/bin/ECS/Utils/IdentifierPool.js.map +0 -1
  287. package/bin/ECS/Utils/Matcher.d.ts +0 -171
  288. package/bin/ECS/Utils/Matcher.d.ts.map +0 -1
  289. package/bin/ECS/Utils/Matcher.js +0 -293
  290. package/bin/ECS/Utils/Matcher.js.map +0 -1
  291. package/bin/ECS/Utils/SparseSet.d.ts +0 -170
  292. package/bin/ECS/Utils/SparseSet.d.ts.map +0 -1
  293. package/bin/ECS/Utils/SparseSet.js +0 -280
  294. package/bin/ECS/Utils/SparseSet.js.map +0 -1
  295. package/bin/ECS/Utils/index.d.ts +0 -9
  296. package/bin/ECS/Utils/index.d.ts.map +0 -1
  297. package/bin/ECS/Utils/index.js +0 -10
  298. package/bin/ECS/Utils/index.js.map +0 -1
  299. package/bin/ECS/World.d.ts +0 -238
  300. package/bin/ECS/World.d.ts.map +0 -1
  301. package/bin/ECS/World.js +0 -416
  302. package/bin/ECS/World.js.map +0 -1
  303. package/bin/ECS/WorldManager.d.ts +0 -224
  304. package/bin/ECS/WorldManager.d.ts.map +0 -1
  305. package/bin/ECS/WorldManager.js +0 -365
  306. package/bin/ECS/WorldManager.js.map +0 -1
  307. package/bin/ECS/index.d.ts +0 -26
  308. package/bin/ECS/index.d.ts.map +0 -1
  309. package/bin/ECS/index.js +0 -21
  310. package/bin/ECS/index.js.map +0 -1
  311. package/bin/Platform/IPlatformAdapter.d.ts +0 -169
  312. package/bin/Platform/IPlatformAdapter.d.ts.map +0 -1
  313. package/bin/Platform/IPlatformAdapter.js +0 -2
  314. package/bin/Platform/IPlatformAdapter.js.map +0 -1
  315. package/bin/Platform/PlatformDetector.d.ts +0 -56
  316. package/bin/Platform/PlatformDetector.d.ts.map +0 -1
  317. package/bin/Platform/PlatformDetector.js +0 -247
  318. package/bin/Platform/PlatformDetector.js.map +0 -1
  319. package/bin/Platform/PlatformManager.d.ts +0 -50
  320. package/bin/Platform/PlatformManager.d.ts.map +0 -1
  321. package/bin/Platform/PlatformManager.js +0 -114
  322. package/bin/Platform/PlatformManager.js.map +0 -1
  323. package/bin/Platform/index.d.ts +0 -19
  324. package/bin/Platform/index.d.ts.map +0 -1
  325. package/bin/Platform/index.js +0 -29
  326. package/bin/Platform/index.js.map +0 -1
  327. package/bin/Plugins/DebugPlugin.d.ts +0 -156
  328. package/bin/Plugins/DebugPlugin.d.ts.map +0 -1
  329. package/bin/Plugins/DebugPlugin.js +0 -248
  330. package/bin/Plugins/DebugPlugin.js.map +0 -1
  331. package/bin/Plugins/index.d.ts +0 -2
  332. package/bin/Plugins/index.d.ts.map +0 -1
  333. package/bin/Plugins/index.js +0 -2
  334. package/bin/Plugins/index.js.map +0 -1
  335. package/bin/Types/IUpdatable.d.ts +0 -18
  336. package/bin/Types/IUpdatable.d.ts.map +0 -1
  337. package/bin/Types/IUpdatable.js +0 -7
  338. package/bin/Types/IUpdatable.js.map +0 -1
  339. package/bin/Types/TypeHelpers.d.ts +0 -238
  340. package/bin/Types/TypeHelpers.d.ts.map +0 -1
  341. package/bin/Types/TypeHelpers.js +0 -19
  342. package/bin/Types/TypeHelpers.js.map +0 -1
  343. package/bin/Types/index.d.ts +0 -466
  344. package/bin/Types/index.d.ts.map +0 -1
  345. package/bin/Types/index.js +0 -7
  346. package/bin/Types/index.js.map +0 -1
  347. package/bin/Utils/BinarySerializer.d.ts +0 -23
  348. package/bin/Utils/BinarySerializer.d.ts.map +0 -1
  349. package/bin/Utils/BinarySerializer.js +0 -100
  350. package/bin/Utils/BinarySerializer.js.map +0 -1
  351. package/bin/Utils/Debug/AdvancedProfilerCollector.d.ts +0 -153
  352. package/bin/Utils/Debug/AdvancedProfilerCollector.d.ts.map +0 -1
  353. package/bin/Utils/Debug/AdvancedProfilerCollector.js +0 -406
  354. package/bin/Utils/Debug/AdvancedProfilerCollector.js.map +0 -1
  355. package/bin/Utils/Debug/ComponentDataCollector.d.ts +0 -32
  356. package/bin/Utils/Debug/ComponentDataCollector.d.ts.map +0 -1
  357. package/bin/Utils/Debug/ComponentDataCollector.js +0 -250
  358. package/bin/Utils/Debug/ComponentDataCollector.js.map +0 -1
  359. package/bin/Utils/Debug/DebugConfigService.d.ts +0 -16
  360. package/bin/Utils/Debug/DebugConfigService.d.ts.map +0 -1
  361. package/bin/Utils/Debug/DebugConfigService.js +0 -42
  362. package/bin/Utils/Debug/DebugConfigService.js.map +0 -1
  363. package/bin/Utils/Debug/DebugManager.d.ts +0 -131
  364. package/bin/Utils/Debug/DebugManager.d.ts.map +0 -1
  365. package/bin/Utils/Debug/DebugManager.js +0 -848
  366. package/bin/Utils/Debug/DebugManager.js.map +0 -1
  367. package/bin/Utils/Debug/EntityDataCollector.d.ts +0 -115
  368. package/bin/Utils/Debug/EntityDataCollector.d.ts.map +0 -1
  369. package/bin/Utils/Debug/EntityDataCollector.js +0 -870
  370. package/bin/Utils/Debug/EntityDataCollector.js.map +0 -1
  371. package/bin/Utils/Debug/PerformanceDataCollector.d.ts +0 -31
  372. package/bin/Utils/Debug/PerformanceDataCollector.d.ts.map +0 -1
  373. package/bin/Utils/Debug/PerformanceDataCollector.js +0 -203
  374. package/bin/Utils/Debug/PerformanceDataCollector.js.map +0 -1
  375. package/bin/Utils/Debug/SceneDataCollector.d.ts +0 -18
  376. package/bin/Utils/Debug/SceneDataCollector.d.ts.map +0 -1
  377. package/bin/Utils/Debug/SceneDataCollector.js +0 -43
  378. package/bin/Utils/Debug/SceneDataCollector.js.map +0 -1
  379. package/bin/Utils/Debug/SystemDataCollector.d.ts +0 -14
  380. package/bin/Utils/Debug/SystemDataCollector.d.ts.map +0 -1
  381. package/bin/Utils/Debug/SystemDataCollector.js +0 -60
  382. package/bin/Utils/Debug/SystemDataCollector.js.map +0 -1
  383. package/bin/Utils/Debug/WebSocketManager.d.ts +0 -54
  384. package/bin/Utils/Debug/WebSocketManager.d.ts.map +0 -1
  385. package/bin/Utils/Debug/WebSocketManager.js +0 -141
  386. package/bin/Utils/Debug/WebSocketManager.js.map +0 -1
  387. package/bin/Utils/Debug/index.d.ts +0 -11
  388. package/bin/Utils/Debug/index.d.ts.map +0 -1
  389. package/bin/Utils/Debug/index.js +0 -10
  390. package/bin/Utils/Debug/index.js.map +0 -1
  391. package/bin/Utils/Emitter.d.ts +0 -61
  392. package/bin/Utils/Emitter.d.ts.map +0 -1
  393. package/bin/Utils/Emitter.js +0 -101
  394. package/bin/Utils/Emitter.js.map +0 -1
  395. package/bin/Utils/Extensions/NumberExtension.d.ts +0 -13
  396. package/bin/Utils/Extensions/NumberExtension.d.ts.map +0 -1
  397. package/bin/Utils/Extensions/NumberExtension.js +0 -17
  398. package/bin/Utils/Extensions/NumberExtension.js.map +0 -1
  399. package/bin/Utils/Extensions/TypeUtils.d.ts +0 -13
  400. package/bin/Utils/Extensions/TypeUtils.d.ts.map +0 -1
  401. package/bin/Utils/Extensions/TypeUtils.js +0 -15
  402. package/bin/Utils/Extensions/TypeUtils.js.map +0 -1
  403. package/bin/Utils/Extensions/index.d.ts +0 -3
  404. package/bin/Utils/Extensions/index.d.ts.map +0 -1
  405. package/bin/Utils/Extensions/index.js +0 -4
  406. package/bin/Utils/Extensions/index.js.map +0 -1
  407. package/bin/Utils/GlobalManager.d.ts +0 -29
  408. package/bin/Utils/GlobalManager.d.ts.map +0 -1
  409. package/bin/Utils/GlobalManager.js +0 -50
  410. package/bin/Utils/GlobalManager.js.map +0 -1
  411. package/bin/Utils/Logger/ConsoleLogger.d.ts +0 -74
  412. package/bin/Utils/Logger/ConsoleLogger.d.ts.map +0 -1
  413. package/bin/Utils/Logger/ConsoleLogger.js +0 -187
  414. package/bin/Utils/Logger/ConsoleLogger.js.map +0 -1
  415. package/bin/Utils/Logger/Constants.d.ts +0 -36
  416. package/bin/Utils/Logger/Constants.d.ts.map +0 -1
  417. package/bin/Utils/Logger/Constants.js +0 -40
  418. package/bin/Utils/Logger/Constants.js.map +0 -1
  419. package/bin/Utils/Logger/LoggerManager.d.ts +0 -91
  420. package/bin/Utils/Logger/LoggerManager.d.ts.map +0 -1
  421. package/bin/Utils/Logger/LoggerManager.js +0 -167
  422. package/bin/Utils/Logger/LoggerManager.js.map +0 -1
  423. package/bin/Utils/Logger/Types.d.ts +0 -40
  424. package/bin/Utils/Logger/Types.d.ts.map +0 -1
  425. package/bin/Utils/Logger/Types.js +0 -2
  426. package/bin/Utils/Logger/Types.js.map +0 -1
  427. package/bin/Utils/Logger/index.d.ts +0 -5
  428. package/bin/Utils/Logger/index.d.ts.map +0 -1
  429. package/bin/Utils/Logger/index.js +0 -5
  430. package/bin/Utils/Logger/index.js.map +0 -1
  431. package/bin/Utils/PerformanceMonitor.d.ts +0 -196
  432. package/bin/Utils/PerformanceMonitor.d.ts.map +0 -1
  433. package/bin/Utils/PerformanceMonitor.js +0 -244
  434. package/bin/Utils/PerformanceMonitor.js.map +0 -1
  435. package/bin/Utils/Pool/IPoolable.d.ts +0 -29
  436. package/bin/Utils/Pool/IPoolable.d.ts.map +0 -1
  437. package/bin/Utils/Pool/IPoolable.js +0 -2
  438. package/bin/Utils/Pool/IPoolable.js.map +0 -1
  439. package/bin/Utils/Pool/Pool.d.ts +0 -109
  440. package/bin/Utils/Pool/Pool.d.ts.map +0 -1
  441. package/bin/Utils/Pool/Pool.js +0 -238
  442. package/bin/Utils/Pool/Pool.js.map +0 -1
  443. package/bin/Utils/Pool/PoolManager.d.ts +0 -96
  444. package/bin/Utils/Pool/PoolManager.d.ts.map +0 -1
  445. package/bin/Utils/Pool/PoolManager.js +0 -199
  446. package/bin/Utils/Pool/PoolManager.js.map +0 -1
  447. package/bin/Utils/Pool/index.d.ts +0 -4
  448. package/bin/Utils/Pool/index.d.ts.map +0 -1
  449. package/bin/Utils/Pool/index.js +0 -4
  450. package/bin/Utils/Pool/index.js.map +0 -1
  451. package/bin/Utils/Profiler/AutoProfiler.d.ts +0 -160
  452. package/bin/Utils/Profiler/AutoProfiler.d.ts.map +0 -1
  453. package/bin/Utils/Profiler/AutoProfiler.js +0 -503
  454. package/bin/Utils/Profiler/AutoProfiler.js.map +0 -1
  455. package/bin/Utils/Profiler/ProfilerSDK.d.ts +0 -175
  456. package/bin/Utils/Profiler/ProfilerSDK.d.ts.map +0 -1
  457. package/bin/Utils/Profiler/ProfilerSDK.js +0 -727
  458. package/bin/Utils/Profiler/ProfilerSDK.js.map +0 -1
  459. package/bin/Utils/Profiler/ProfilerTypes.d.ts +0 -218
  460. package/bin/Utils/Profiler/ProfilerTypes.d.ts.map +0 -1
  461. package/bin/Utils/Profiler/ProfilerTypes.js +0 -47
  462. package/bin/Utils/Profiler/ProfilerTypes.js.map +0 -1
  463. package/bin/Utils/Profiler/index.d.ts +0 -8
  464. package/bin/Utils/Profiler/index.d.ts.map +0 -1
  465. package/bin/Utils/Profiler/index.js +0 -7
  466. package/bin/Utils/Profiler/index.js.map +0 -1
  467. package/bin/Utils/Time.d.ts +0 -47
  468. package/bin/Utils/Time.d.ts.map +0 -1
  469. package/bin/Utils/Time.js +0 -64
  470. package/bin/Utils/Time.js.map +0 -1
  471. package/bin/Utils/Timers/ITimer.d.ts +0 -16
  472. package/bin/Utils/Timers/ITimer.d.ts.map +0 -1
  473. package/bin/Utils/Timers/ITimer.js +0 -2
  474. package/bin/Utils/Timers/ITimer.js.map +0 -1
  475. package/bin/Utils/Timers/Timer.d.ts +0 -30
  476. package/bin/Utils/Timers/Timer.d.ts.map +0 -1
  477. package/bin/Utils/Timers/Timer.js +0 -58
  478. package/bin/Utils/Timers/Timer.js.map +0 -1
  479. package/bin/Utils/Timers/TimerManager.d.ts +0 -26
  480. package/bin/Utils/Timers/TimerManager.d.ts.map +0 -1
  481. package/bin/Utils/Timers/TimerManager.js +0 -48
  482. package/bin/Utils/Timers/TimerManager.js.map +0 -1
  483. package/bin/Utils/index.d.ts +0 -11
  484. package/bin/Utils/index.d.ts.map +0 -1
  485. package/bin/Utils/index.js +0 -11
  486. package/bin/Utils/index.js.map +0 -1
  487. package/bin/index.d.ts +0 -29
  488. package/bin/index.d.ts.map +0 -1
  489. package/bin/index.js +0 -36
  490. package/bin/index.js.map +0 -1
package/bin/Core.js DELETED
@@ -1,553 +0,0 @@
1
- import { TimerManager } from './Utils/Timers/TimerManager';
2
- import { Time } from './Utils/Time';
3
- import { PerformanceMonitor } from './Utils/PerformanceMonitor';
4
- import { PoolManager } from './Utils/Pool/PoolManager';
5
- import { DebugManager } from './Utils/Debug';
6
- import { createLogger } from './Utils/Logger';
7
- import { SceneManager } from './ECS/SceneManager';
8
- import { ServiceContainer } from './Core/ServiceContainer';
9
- import { PluginManager } from './Core/PluginManager';
10
- import { WorldManager } from './ECS/WorldManager';
11
- import { DebugConfigService } from './Utils/Debug/DebugConfigService';
12
- import { createInstance } from './Core/DI/Decorators';
13
- /**
14
- * 游戏引擎核心类
15
- *
16
- * 职责:
17
- * - 提供全局服务(Timer、Performance、Pool等)
18
- * - 管理场景生命周期(内置SceneManager)
19
- * - 管理全局管理器的生命周期
20
- * - 提供统一的游戏循环更新入口
21
- *
22
- * @example
23
- * ```typescript
24
- * // 初始化并设置场景
25
- * Core.create({ debug: true });
26
- * Core.setScene(new GameScene());
27
- *
28
- * // 游戏循环(自动更新全局服务和场景)
29
- * function gameLoop(deltaTime: number) {
30
- * Core.update(deltaTime);
31
- * }
32
- *
33
- * // 使用定时器
34
- * Core.schedule(1.0, false, null, (timer) => {
35
- * console.log("1秒后执行");
36
- * });
37
- *
38
- * // 切换场景
39
- * Core.loadScene(new MenuScene()); // 延迟切换
40
- * Core.setScene(new GameScene()); // 立即切换
41
- *
42
- * // 获取当前场景
43
- * const currentScene = Core.scene;
44
- * ```
45
- */
46
- export class Core {
47
- /**
48
- * 创建核心实例
49
- *
50
- * @param config - Core配置对象
51
- */
52
- constructor(config = {}) {
53
- Core._instance = this;
54
- // 保存配置
55
- this._config = {
56
- debug: true,
57
- ...config
58
- };
59
- // 初始化服务容器
60
- this._serviceContainer = new ServiceContainer();
61
- // 初始化定时器管理器
62
- this._timerManager = new TimerManager();
63
- this._serviceContainer.registerInstance(TimerManager, this._timerManager);
64
- // 初始化性能监控器
65
- this._performanceMonitor = new PerformanceMonitor();
66
- this._serviceContainer.registerInstance(PerformanceMonitor, this._performanceMonitor);
67
- // 在调试模式下启用性能监控
68
- if (this._config.debug) {
69
- this._performanceMonitor.enable();
70
- }
71
- // 初始化对象池管理器
72
- this._poolManager = new PoolManager();
73
- this._serviceContainer.registerInstance(PoolManager, this._poolManager);
74
- // 初始化场景管理器
75
- this._sceneManager = new SceneManager(this._performanceMonitor);
76
- this._serviceContainer.registerInstance(SceneManager, this._sceneManager);
77
- // 设置场景切换回调,通知调试管理器
78
- this._sceneManager.setSceneChangedCallback(() => {
79
- if (this._debugManager) {
80
- this._debugManager.onSceneChanged();
81
- }
82
- });
83
- // 初始化World管理器
84
- this._worldManager = new WorldManager({ debug: !!this._config.debug, ...this._config.worldManagerConfig });
85
- this._serviceContainer.registerInstance(WorldManager, this._worldManager);
86
- // 初始化插件管理器
87
- this._pluginManager = new PluginManager();
88
- this._pluginManager.initialize(this, this._serviceContainer);
89
- this._serviceContainer.registerInstance(PluginManager, this._pluginManager);
90
- this.debug = this._config.debug ?? true;
91
- // 初始化调试管理器
92
- if (this._config.debugConfig?.enabled) {
93
- const configService = new DebugConfigService();
94
- configService.setConfig(this._config.debugConfig);
95
- this._serviceContainer.registerInstance(DebugConfigService, configService);
96
- this._serviceContainer.registerSingleton(DebugManager, (c) => createInstance(DebugManager, c));
97
- this._debugManager = this._serviceContainer.resolve(DebugManager);
98
- this._debugManager.onInitialize();
99
- }
100
- this.initialize();
101
- }
102
- /**
103
- * 获取核心实例
104
- *
105
- * @returns 全局核心实例
106
- */
107
- static get Instance() {
108
- return this._instance;
109
- }
110
- /**
111
- * 获取服务容器
112
- *
113
- * 用于注册和解析自定义服务。
114
- *
115
- * @returns 服务容器实例
116
- * @throws 如果Core实例未创建
117
- *
118
- * @example
119
- * ```typescript
120
- * // 注册自定义服务
121
- * Core.services.registerSingleton(MyService);
122
- *
123
- * // 解析服务
124
- * const myService = Core.services.resolve(MyService);
125
- * ```
126
- */
127
- static get services() {
128
- if (!this._instance) {
129
- throw new Error('Core实例未创建,请先调用Core.create()');
130
- }
131
- return this._instance._serviceContainer;
132
- }
133
- /**
134
- * 获取World管理器
135
- *
136
- * 用于管理多个独立的World实例(高级用户)。
137
- *
138
- * @returns WorldManager实例
139
- * @throws 如果Core实例未创建
140
- *
141
- * @example
142
- * ```typescript
143
- * // 创建多个游戏房间
144
- * const wm = Core.worldManager;
145
- * const room1 = wm.createWorld('room_001');
146
- * room1.createScene('game', new GameScene());
147
- * room1.start();
148
- * ```
149
- */
150
- static get worldManager() {
151
- if (!this._instance) {
152
- throw new Error('Core实例未创建,请先调用Core.create()');
153
- }
154
- return this._instance._worldManager;
155
- }
156
- /**
157
- * 创建Core实例
158
- *
159
- * 如果实例已存在,则返回现有实例。
160
- *
161
- * @param config - Core配置,也可以直接传入boolean表示debug模式(向后兼容)
162
- * @returns Core实例
163
- *
164
- * @example
165
- * ```typescript
166
- * // 方式1:使用配置对象
167
- * Core.create({
168
- * debug: true,
169
- * debugConfig: {
170
- * enabled: true,
171
- * websocketUrl: 'ws://localhost:9229'
172
- * }
173
- * });
174
- *
175
- * // 方式2:简单模式(向后兼容)
176
- * Core.create(true); // debug = true
177
- * ```
178
- */
179
- static create(config = true) {
180
- if (this._instance == null) {
181
- // 向后兼容:如果传入boolean,转换为配置对象
182
- const coreConfig = typeof config === 'boolean'
183
- ? { debug: config }
184
- : config;
185
- this._instance = new Core(coreConfig);
186
- }
187
- else {
188
- this._logger.warn('Core实例已创建,返回现有实例');
189
- }
190
- return this._instance;
191
- }
192
- /**
193
- * 设置当前场景
194
- *
195
- * @param scene - 要设置的场景
196
- * @returns 设置的场景实例
197
- *
198
- * @example
199
- * ```typescript
200
- * Core.create({ debug: true });
201
- *
202
- * // 创建并设置场景
203
- * const gameScene = new GameScene();
204
- * Core.setScene(gameScene);
205
- * ```
206
- */
207
- static setScene(scene) {
208
- if (!this._instance) {
209
- Core._logger.warn('Core实例未创建,请先调用Core.create()');
210
- throw new Error('Core实例未创建');
211
- }
212
- return this._instance._sceneManager.setScene(scene);
213
- }
214
- /**
215
- * 获取当前场景
216
- *
217
- * @returns 当前场景,如果没有场景则返回null
218
- */
219
- static get scene() {
220
- if (!this._instance) {
221
- return null;
222
- }
223
- return this._instance._sceneManager.currentScene;
224
- }
225
- /**
226
- * 获取ECS流式API
227
- *
228
- * @returns ECS API实例,如果当前没有场景则返回null
229
- *
230
- * @example
231
- * ```typescript
232
- * // 使用流式API创建实体
233
- * const player = Core.ecsAPI?.createEntity('Player')
234
- * .addComponent(Position, 100, 100)
235
- * .addComponent(Velocity, 50, 0);
236
- *
237
- * // 查询实体
238
- * const enemies = Core.ecsAPI?.query(Enemy, Transform);
239
- *
240
- * // 发射事件
241
- * Core.ecsAPI?.emit('game:start', { level: 1 });
242
- * ```
243
- */
244
- static get ecsAPI() {
245
- if (!this._instance) {
246
- return null;
247
- }
248
- return this._instance._sceneManager.api;
249
- }
250
- /**
251
- * 延迟加载场景(下一帧切换)
252
- *
253
- * @param scene - 要加载的场景
254
- *
255
- * @example
256
- * ```typescript
257
- * // 延迟切换场景(在下一帧生效)
258
- * Core.loadScene(new MenuScene());
259
- * ```
260
- */
261
- static loadScene(scene) {
262
- if (!this._instance) {
263
- Core._logger.warn('Core实例未创建,请先调用Core.create()');
264
- return;
265
- }
266
- this._instance._sceneManager.loadScene(scene);
267
- }
268
- /**
269
- * 更新游戏逻辑
270
- *
271
- * 此方法应该在游戏引擎的更新循环中调用。
272
- * 会自动更新全局服务和当前场景。
273
- *
274
- * @param deltaTime - 外部引擎提供的帧时间间隔(秒)
275
- *
276
- * @example
277
- * ```typescript
278
- * // 初始化
279
- * Core.create({ debug: true });
280
- * Core.setScene(new GameScene());
281
- *
282
- * // Laya引擎集成
283
- * Laya.timer.frameLoop(1, this, () => {
284
- * const deltaTime = Laya.timer.delta / 1000;
285
- * Core.update(deltaTime); // 自动更新全局服务和场景
286
- * });
287
- *
288
- * // Cocos Creator集成
289
- * update(deltaTime: number) {
290
- * Core.update(deltaTime); // 自动更新全局服务和场景
291
- * }
292
- * ```
293
- */
294
- static update(deltaTime) {
295
- if (!this._instance) {
296
- Core._logger.warn('Core实例未创建,请先调用Core.create()');
297
- return;
298
- }
299
- this._instance.updateInternal(deltaTime);
300
- }
301
- /**
302
- * 调度定时器
303
- *
304
- * 创建一个定时器,在指定时间后执行回调函数。
305
- *
306
- * @param timeInSeconds - 延迟时间(秒)
307
- * @param repeats - 是否重复执行,默认为false
308
- * @param context - 回调函数的上下文,默认为null
309
- * @param onTime - 定时器触发时的回调函数
310
- * @returns 创建的定时器实例
311
- * @throws 如果Core实例未创建或onTime回调未提供
312
- *
313
- * @example
314
- * ```typescript
315
- * // 一次性定时器
316
- * Core.schedule(1.0, false, null, (timer) => {
317
- * console.log("1秒后执行一次");
318
- * });
319
- *
320
- * // 重复定时器
321
- * Core.schedule(0.5, true, null, (timer) => {
322
- * console.log("每0.5秒执行一次");
323
- * });
324
- * ```
325
- */
326
- static schedule(timeInSeconds, repeats = false, context, onTime) {
327
- if (!this._instance) {
328
- throw new Error('Core实例未创建,请先调用Core.create()');
329
- }
330
- if (!onTime) {
331
- throw new Error('onTime callback is required');
332
- }
333
- return this._instance._timerManager.schedule(timeInSeconds, repeats, context, onTime);
334
- }
335
- /**
336
- * 启用调试功能
337
- *
338
- * @param config 调试配置
339
- */
340
- static enableDebug(config) {
341
- if (!this._instance) {
342
- Core._logger.warn('Core实例未创建,请先调用Core.create()');
343
- return;
344
- }
345
- if (this._instance._debugManager) {
346
- this._instance._debugManager.updateConfig(config);
347
- }
348
- else {
349
- const configService = new DebugConfigService();
350
- configService.setConfig(config);
351
- this._instance._serviceContainer.registerInstance(DebugConfigService, configService);
352
- this._instance._serviceContainer.registerSingleton(DebugManager, (c) => createInstance(DebugManager, c));
353
- this._instance._debugManager = this._instance._serviceContainer.resolve(DebugManager);
354
- this._instance._debugManager.onInitialize();
355
- }
356
- // 更新Core配置
357
- this._instance._config.debugConfig = config;
358
- }
359
- /**
360
- * 禁用调试功能
361
- */
362
- static disableDebug() {
363
- if (!this._instance)
364
- return;
365
- if (this._instance._debugManager) {
366
- this._instance._debugManager.stop();
367
- delete this._instance._debugManager;
368
- }
369
- // 更新Core配置
370
- if (this._instance._config.debugConfig) {
371
- this._instance._config.debugConfig.enabled = false;
372
- }
373
- }
374
- /**
375
- * 获取调试数据
376
- *
377
- * @returns 当前调试数据,如果调试未启用则返回null
378
- */
379
- static getDebugData() {
380
- if (!this._instance?._debugManager) {
381
- return null;
382
- }
383
- return this._instance._debugManager.getDebugData();
384
- }
385
- /**
386
- * 检查调试是否启用
387
- *
388
- * @returns 调试状态
389
- */
390
- static get isDebugEnabled() {
391
- return this._instance?._config.debugConfig?.enabled || false;
392
- }
393
- /**
394
- * 获取性能监视器实例
395
- *
396
- * @returns 性能监视器,如果Core未初始化则返回null
397
- */
398
- static get performanceMonitor() {
399
- return this._instance?._performanceMonitor || null;
400
- }
401
- /**
402
- * 安装插件
403
- *
404
- * @param plugin - 插件实例
405
- * @throws 如果Core实例未创建或插件安装失败
406
- *
407
- * @example
408
- * ```typescript
409
- * Core.create({ debug: true });
410
- *
411
- * // 安装插件
412
- * await Core.installPlugin(new MyPlugin());
413
- * ```
414
- */
415
- static async installPlugin(plugin) {
416
- if (!this._instance) {
417
- throw new Error('Core实例未创建,请先调用Core.create()');
418
- }
419
- await this._instance._pluginManager.install(plugin);
420
- }
421
- /**
422
- * 卸载插件
423
- *
424
- * @param name - 插件名称
425
- * @throws 如果Core实例未创建或插件卸载失败
426
- *
427
- * @example
428
- * ```typescript
429
- * await Core.uninstallPlugin('my-plugin');
430
- * ```
431
- */
432
- static async uninstallPlugin(name) {
433
- if (!this._instance) {
434
- throw new Error('Core实例未创建,请先调用Core.create()');
435
- }
436
- await this._instance._pluginManager.uninstall(name);
437
- }
438
- /**
439
- * 获取插件实例
440
- *
441
- * @param name - 插件名称
442
- * @returns 插件实例,如果未安装则返回undefined
443
- *
444
- * @example
445
- * ```typescript
446
- * const myPlugin = Core.getPlugin('my-plugin');
447
- * if (myPlugin) {
448
- * console.log(myPlugin.version);
449
- * }
450
- * ```
451
- */
452
- static getPlugin(name) {
453
- if (!this._instance) {
454
- return undefined;
455
- }
456
- return this._instance._pluginManager.getPlugin(name);
457
- }
458
- /**
459
- * 检查插件是否已安装
460
- *
461
- * @param name - 插件名称
462
- * @returns 是否已安装
463
- *
464
- * @example
465
- * ```typescript
466
- * if (Core.isPluginInstalled('my-plugin')) {
467
- * console.log('Plugin is installed');
468
- * }
469
- * ```
470
- */
471
- static isPluginInstalled(name) {
472
- if (!this._instance) {
473
- return false;
474
- }
475
- return this._instance._pluginManager.isInstalled(name);
476
- }
477
- /**
478
- * 初始化核心系统
479
- *
480
- * 执行核心系统的初始化逻辑。
481
- */
482
- initialize() {
483
- // 核心系统初始化
484
- Core._logger.info('Core initialized', {
485
- debug: this.debug,
486
- debugEnabled: this._config.debugConfig?.enabled || false
487
- });
488
- }
489
- /**
490
- * 内部更新方法
491
- *
492
- * @param deltaTime - 帧时间间隔(秒)
493
- */
494
- updateInternal(deltaTime) {
495
- if (Core.paused)
496
- return;
497
- // 开始性能监控
498
- const frameStartTime = this._performanceMonitor.startMonitoring('Core.update');
499
- // 更新时间系统
500
- Time.update(deltaTime);
501
- // 更新FPS监控(如果性能监控器支持)
502
- if ('updateFPS' in this._performanceMonitor && typeof this._performanceMonitor.updateFPS === 'function') {
503
- this._performanceMonitor.updateFPS(Time.deltaTime);
504
- }
505
- // 更新所有可更新的服务
506
- const servicesStartTime = this._performanceMonitor.startMonitoring('Services.update');
507
- this._serviceContainer.updateAll(deltaTime);
508
- this._performanceMonitor.endMonitoring('Services.update', servicesStartTime, this._serviceContainer.getUpdatableCount());
509
- // 更新对象池管理器
510
- this._poolManager.update();
511
- // 更新默认场景(通过 SceneManager)
512
- this._sceneManager.update();
513
- // 更新额外的 WorldManager
514
- this._worldManager.updateAll();
515
- // 结束性能监控
516
- this._performanceMonitor.endMonitoring('Core.update', frameStartTime);
517
- }
518
- /**
519
- * 销毁Core实例
520
- *
521
- * 清理所有资源,通常在应用程序关闭时调用。
522
- */
523
- static destroy() {
524
- if (!this._instance)
525
- return;
526
- // 停止调试管理器
527
- if (this._instance._debugManager) {
528
- this._instance._debugManager.stop();
529
- }
530
- // 清理所有服务
531
- this._instance._serviceContainer.clear();
532
- Core._logger.info('Core destroyed');
533
- // 清空实例引用,允许重新创建Core实例
534
- this._instance = null;
535
- }
536
- }
537
- /**
538
- * 游戏暂停状态
539
- *
540
- * 当设置为true时,游戏循环将暂停执行。
541
- */
542
- Core.paused = false;
543
- /**
544
- * 全局核心实例
545
- *
546
- * 可能为null表示Core尚未初始化或已被销毁
547
- */
548
- Core._instance = null;
549
- /**
550
- * Core专用日志器
551
- */
552
- Core._logger = createLogger('Core');
553
- //# sourceMappingURL=Core.js.map
package/bin/Core.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"Core.js","sourceRoot":"","sources":["../src/Core.ts"],"names":[],"mappings":"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"}
@@ -1,104 +0,0 @@
1
- import type { IComponent } from '../Types';
2
- /**
3
- * 游戏组件基类
4
- *
5
- * ECS架构中的组件(Component)应该是纯数据容器。
6
- * 所有游戏逻辑应该在 EntitySystem 中实现,而不是在组件内部。
7
- *
8
- * @example
9
- * 推荐做法:纯数据组件
10
- * ```typescript
11
- * class HealthComponent extends Component {
12
- * public health: number = 100;
13
- * public maxHealth: number = 100;
14
- * }
15
- * ```
16
- *
17
- * @example
18
- * 推荐做法:在 System 中处理逻辑
19
- * ```typescript
20
- * class HealthSystem extends EntitySystem {
21
- * process(entities: Entity[]): void {
22
- * for (const entity of entities) {
23
- * const health = entity.getComponent(HealthComponent);
24
- * if (health && health.health <= 0) {
25
- * entity.destroy();
26
- * }
27
- * }
28
- * }
29
- * }
30
- * ```
31
- */
32
- export declare abstract class Component implements IComponent {
33
- /**
34
- * 组件ID生成器
35
- *
36
- * 用于为每个组件分配唯一的ID。
37
- */
38
- private static idGenerator;
39
- /**
40
- * 组件唯一标识符
41
- *
42
- * 在整个游戏生命周期中唯一的数字ID。
43
- */
44
- readonly id: number;
45
- /**
46
- * 所属实体ID
47
- *
48
- * 存储实体ID而非引用,避免循环引用,符合ECS数据导向设计。
49
- */
50
- entityId: number | null;
51
- /**
52
- * 创建组件实例
53
- *
54
- * 自动分配唯一ID给组件。
55
- */
56
- constructor();
57
- /**
58
- * 组件添加到实体时的回调
59
- *
60
- * 当组件被添加到实体时调用,可以在此方法中进行初始化操作。
61
- *
62
- * @remarks
63
- * 这是一个生命周期钩子,用于组件的初始化逻辑。
64
- * 虽然保留此方法,但建议将复杂的初始化逻辑放在 System 中处理。
65
- */
66
- onAddedToEntity(): void;
67
- /**
68
- * 组件从实体移除时的回调
69
- *
70
- * 当组件从实体中移除时调用,可以在此方法中进行清理操作。
71
- *
72
- * @remarks
73
- * 这是一个生命周期钩子,用于组件的清理逻辑。
74
- * 虽然保留此方法,但建议将复杂的清理逻辑放在 System 中处理。
75
- */
76
- onRemovedFromEntity(): void;
77
- /**
78
- * 组件反序列化后的回调
79
- *
80
- * 当组件从场景文件加载或快照恢复后调用,可以在此方法中恢复运行时数据。
81
- *
82
- * @remarks
83
- * 这是一个生命周期钩子,用于恢复无法序列化的运行时数据。
84
- * 例如:从图片路径重新加载图片尺寸信息,重建缓存等。
85
- *
86
- * @example
87
- * ```typescript
88
- * class TilemapComponent extends Component {
89
- * public tilesetImage: string = '';
90
- * private _tilesetData: TilesetData | undefined;
91
- *
92
- * public async onDeserialized(): Promise<void> {
93
- * if (this.tilesetImage) {
94
- * // 重新加载 tileset 图片并恢复运行时数据
95
- * const img = await loadImage(this.tilesetImage);
96
- * this.setTilesetInfo(img.width, img.height, ...);
97
- * }
98
- * }
99
- * }
100
- * ```
101
- */
102
- onDeserialized(): void | Promise<void>;
103
- }
104
- //# sourceMappingURL=Component.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Component.d.ts","sourceRoot":"","sources":["../../src/ECS/Component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAG3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,8BAAsB,SAAU,YAAW,UAAU;IACjD;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,WAAW,CAAa;IAEvC;;;;OAIG;IACH,SAAgB,EAAE,EAAE,MAAM,CAAC;IAE3B;;;;OAIG;IAEI,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEtC;;;;OAIG;;IAKH;;;;;;;;OAQG;IACI,eAAe,IAAI,IAAI;IAE9B;;;;;;;;OAQG;IACI,mBAAmB,IAAI,IAAI;IAElC;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACI,cAAc,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;CAChD"}