Feature/tilemap editor (#237)

* feat: 添加 Tilemap 编辑器插件和组件生命周期支持

* feat(editor-core): 添加声明式插件注册 API

* feat(editor-core): 改进tiledmap结构合并tileset进tiledmapeditor

* feat: 添加 editor-runtime SDK 和插件系统改进

* fix(ci): 修复SceneResourceManager里变量未使用问题
This commit is contained in:
YHH
2025-11-25 22:23:19 +08:00
committed by GitHub
parent 551ca7805d
commit 3fb6f919f8
166 changed files with 54691 additions and 8674 deletions

View File

@@ -23,6 +23,25 @@ export class AssetFieldEditor implements IFieldEditor<string | null> {
}
};
const handleCreate = () => {
const messageHub = Core.services.tryResolve(MessageHub);
if (messageHub) {
if (fileExtension === '.tilemap.json') {
messageHub.publish('tilemap:create-asset', {
entityId: context.metadata?.entityId,
onChange
});
} else if (fileExtension === '.btree') {
messageHub.publish('behavior-tree:create-asset', {
entityId: context.metadata?.entityId,
onChange
});
}
}
};
const canCreate = ['.tilemap.json', '.btree'].includes(fileExtension);
return (
<AssetField
label={label}
@@ -32,6 +51,7 @@ export class AssetFieldEditor implements IFieldEditor<string | null> {
placeholder={placeholder}
readonly={context.readonly}
onNavigate={handleNavigate}
onCreate={canCreate ? handleCreate : undefined}
/>
);
}