@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
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"}