Feature/physics and tilemap enhancement (#247)

* feat(behavior-tree,tilemap): 修复编辑器连线缩放问题并增强插件系统

* feat(node-editor,blueprint): 新增通用节点编辑器和蓝图可视化脚本系统

* feat(editor,tilemap): 优化编辑器UI样式和Tilemap编辑器功能

* fix: 修复CodeQL安全警告和CI类型检查错误

* fix: 修复CodeQL安全警告和CI类型检查错误

* fix: 修复CodeQL安全警告和CI类型检查错误
This commit is contained in:
YHH
2025-11-29 23:00:48 +08:00
committed by GitHub
parent f03b73b58e
commit 359886c72f
198 changed files with 33879 additions and 13121 deletions

View File

@@ -1,5 +1,5 @@
import React from 'react';
import { IFieldEditor, FieldEditorProps, MessageHub } from '@esengine/editor-core';
import { IFieldEditor, FieldEditorProps, MessageHub, FileActionRegistry } from '@esengine/editor-core';
import { Core } from '@esengine/ecs-framework';
import { AssetField } from '../../components/inspectors/fields/AssetField';
@@ -23,24 +23,21 @@ export class AssetFieldEditor implements IFieldEditor<string | null> {
}
};
// 从 FileActionRegistry 获取资产创建消息映射
const fileActionRegistry = Core.services.tryResolve(FileActionRegistry);
const creationMapping = fileActionRegistry?.getAssetCreationMapping(fileExtension);
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
});
}
if (messageHub && creationMapping) {
messageHub.publish(creationMapping.createMessage, {
entityId: context.metadata?.entityId,
onChange
});
}
};
const canCreate = ['.tilemap.json', '.btree'].includes(fileExtension);
const canCreate = creationMapping !== null && creationMapping !== undefined;
return (
<AssetField