From 39fa797299bfe8ad82ad68a8cf07c90c2f5a4bc3 Mon Sep 17 00:00:00 2001 From: yhh <359807859@qq.com> Date: Tue, 16 Dec 2025 11:12:17 +0800 Subject: [PATCH] =?UTF-8?q?refactor(modules):=20=E9=80=82=E9=85=8D?= =?UTF-8?q?=E6=96=B0=E7=9A=84=E7=BB=84=E4=BB=B6=E6=B3=A8=E5=86=8C=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 更新各模块 RuntimeModule 使用 IComponentRegistry 接口: - audio, behavior-tree, camera - sprite, tilemap, world-streaming --- packages/audio/src/AudioPlugin.ts | 4 ++-- packages/behavior-tree/src/BehaviorTreeRuntimeModule.ts | 5 ++--- packages/camera/src/CameraPlugin.ts | 4 ++-- packages/sprite/src/SpriteRuntimeModule.ts | 4 ++-- packages/tilemap/src/TilemapRuntimeModule.ts | 5 ++--- packages/world-streaming/src/WorldStreamingModule.ts | 5 ++--- 6 files changed, 12 insertions(+), 15 deletions(-) diff --git a/packages/audio/src/AudioPlugin.ts b/packages/audio/src/AudioPlugin.ts index fbfd4d71..e74aea91 100644 --- a/packages/audio/src/AudioPlugin.ts +++ b/packages/audio/src/AudioPlugin.ts @@ -1,9 +1,9 @@ -import type { ComponentRegistry as ComponentRegistryType } from '@esengine/ecs-framework'; +import type { IComponentRegistry } from '@esengine/ecs-framework'; import type { IRuntimeModule, IRuntimePlugin, ModuleManifest } from '@esengine/engine-core'; import { AudioSourceComponent } from './AudioSourceComponent'; class AudioRuntimeModule implements IRuntimeModule { - registerComponents(registry: typeof ComponentRegistryType): void { + registerComponents(registry: IComponentRegistry): void { registry.register(AudioSourceComponent); } } diff --git a/packages/behavior-tree/src/BehaviorTreeRuntimeModule.ts b/packages/behavior-tree/src/BehaviorTreeRuntimeModule.ts index 2189ca4d..845561d2 100644 --- a/packages/behavior-tree/src/BehaviorTreeRuntimeModule.ts +++ b/packages/behavior-tree/src/BehaviorTreeRuntimeModule.ts @@ -1,5 +1,4 @@ -import type { IScene, ServiceContainer } from '@esengine/ecs-framework'; -import { ComponentRegistry } from '@esengine/ecs-framework'; +import type { IScene, ServiceContainer, IComponentRegistry } from '@esengine/ecs-framework'; import type { IRuntimeModule, IRuntimePlugin, ModuleManifest, SystemContext } from '@esengine/engine-core'; import { AssetManagerToken } from '@esengine/asset-system'; @@ -17,7 +16,7 @@ export { BehaviorTreeSystemToken } from './tokens'; class BehaviorTreeRuntimeModule implements IRuntimeModule { private _loaderRegistered = false; - registerComponents(registry: typeof ComponentRegistry): void { + registerComponents(registry: IComponentRegistry): void { registry.register(BehaviorTreeRuntimeComponent); } diff --git a/packages/camera/src/CameraPlugin.ts b/packages/camera/src/CameraPlugin.ts index 379c5a69..b4722c47 100644 --- a/packages/camera/src/CameraPlugin.ts +++ b/packages/camera/src/CameraPlugin.ts @@ -1,11 +1,11 @@ -import type { ComponentRegistry as ComponentRegistryType, IScene } from '@esengine/ecs-framework'; +import type { IComponentRegistry, IScene } from '@esengine/ecs-framework'; import type { IRuntimeModule, IRuntimePlugin, ModuleManifest, SystemContext } from '@esengine/engine-core'; import { EngineBridgeToken } from '@esengine/engine-core'; import { CameraComponent } from './CameraComponent'; import { CameraSystem } from './CameraSystem'; class CameraRuntimeModule implements IRuntimeModule { - registerComponents(registry: typeof ComponentRegistryType): void { + registerComponents(registry: IComponentRegistry): void { registry.register(CameraComponent); } diff --git a/packages/sprite/src/SpriteRuntimeModule.ts b/packages/sprite/src/SpriteRuntimeModule.ts index de020c9f..f59274bd 100644 --- a/packages/sprite/src/SpriteRuntimeModule.ts +++ b/packages/sprite/src/SpriteRuntimeModule.ts @@ -1,4 +1,4 @@ -import type { ComponentRegistry as ComponentRegistryType, IScene } from '@esengine/ecs-framework'; +import type { IComponentRegistry, IScene } from '@esengine/ecs-framework'; import type { IRuntimeModule, IRuntimePlugin, ModuleManifest, SystemContext } from '@esengine/engine-core'; import { SpriteComponent } from './SpriteComponent'; import { SpriteAnimatorComponent } from './SpriteAnimatorComponent'; @@ -11,7 +11,7 @@ export type { SystemContext, ModuleManifest, IRuntimeModule, IRuntimePlugin }; export { SpriteAnimatorSystemToken } from './tokens'; class SpriteRuntimeModule implements IRuntimeModule { - registerComponents(registry: typeof ComponentRegistryType): void { + registerComponents(registry: IComponentRegistry): void { registry.register(SpriteComponent); registry.register(SpriteAnimatorComponent); } diff --git a/packages/tilemap/src/TilemapRuntimeModule.ts b/packages/tilemap/src/TilemapRuntimeModule.ts index e3433266..5e30ebbb 100644 --- a/packages/tilemap/src/TilemapRuntimeModule.ts +++ b/packages/tilemap/src/TilemapRuntimeModule.ts @@ -1,5 +1,4 @@ -import type { IScene } from '@esengine/ecs-framework'; -import { ComponentRegistry } from '@esengine/ecs-framework'; +import type { IScene, IComponentRegistry } from '@esengine/ecs-framework'; import type { IRuntimeModule, IRuntimePlugin, ModuleManifest, SystemContext } from '@esengine/engine-core'; import { AssetManagerToken } from '@esengine/asset-system'; import { RenderSystemToken } from '@esengine/ecs-engine-bindgen'; @@ -26,7 +25,7 @@ class TilemapRuntimeModule implements IRuntimeModule { private _tilemapPhysicsSystem: TilemapPhysicsSystem | null = null; private _loaderRegistered = false; - registerComponents(registry: typeof ComponentRegistry): void { + registerComponents(registry: IComponentRegistry): void { registry.register(TilemapComponent); registry.register(TilemapCollider2DComponent); } diff --git a/packages/world-streaming/src/WorldStreamingModule.ts b/packages/world-streaming/src/WorldStreamingModule.ts index d176590c..d505fe58 100644 --- a/packages/world-streaming/src/WorldStreamingModule.ts +++ b/packages/world-streaming/src/WorldStreamingModule.ts @@ -1,5 +1,4 @@ -import type { IScene, ServiceContainer } from '@esengine/ecs-framework'; -import { ComponentRegistry } from '@esengine/ecs-framework'; +import type { IScene, ServiceContainer, IComponentRegistry } from '@esengine/ecs-framework'; import type { IRuntimeModule, SystemContext } from '@esengine/engine-core'; import { ChunkComponent } from './components/ChunkComponent'; import { StreamingAnchorComponent } from './components/StreamingAnchorComponent'; @@ -22,7 +21,7 @@ export class WorldStreamingModule implements IRuntimeModule { return this._chunkManager; } - registerComponents(registry: typeof ComponentRegistry): void { + registerComponents(registry: IComponentRegistry): void { registry.register(ChunkComponent); registry.register(StreamingAnchorComponent); registry.register(ChunkLoaderComponent);