GwWuYou
|
9a6d41950a
|
feat(Architecture): 重构架构类并增强生命周期管理
- 添加了多个字段和属性的区域划分,提升代码可读性
- 增强了阶段转换控制与验证机制
- 新增模块安装、组件注册与获取、命令执行和查询处理等区域
- 改进了销毁逻辑与生命周期钩子的通知机制
- 对方法进行了重新组织和注释补充,优化结构与维护性
|
2025-12-21 11:47:01 +08:00 |
|
GwWuYou
|
d1cd0cfb05
|
feat(architecture): 引入架构阶段管理机制
新增 `ArchitecturePhase` 枚举及生命周期接口,支持在不同阶段执行相应逻辑。
实现基于阶段的状态转换控制与校验,增强架构初始化流程的可控性与扩展性。
添加模块安装接口 `IArchitectureModule` 及相关感知接口,便于插件化集成。
完善系统与模型注册限制,禁止在就绪后注册组件,提升运行时稳定性。
移除旧版补丁注册机制,统一通过生命周期钩子进行扩展。
|
2025-12-21 11:39:35 +08:00 |
|
GwWuYou
|
564a7e3f24
|
feat(input): 添加游戏输入事件处理系统
- 新增 IGameInputEvent 接口定义游戏输入事件
- 新增 IInputContext 接口用于处理输入事件的上下文
- 新增 InputContextStack 类管理输入上下文堆栈
- 新增 InputSystem 类负责整体输入事件分发与处理
- 移除旧版 Godot 输入系统相关实现代码
- 定义输入事件处理流程:上下文堆栈 -> 事件发送机制
|
2025-12-20 22:35:07 +08:00 |
|
GwWuYou
|
f2159065fc
|
refactor(ioc): 重构IoC容器核心数据结构
- 将_instances字典的值类型从List<object>改为HashSet<object>
- 新增_objects集合用于跟踪所有已注册的对象实例
- 修改RegisterSingleton方法实现,添加容器冻结检查
- 优化RegisterInternal方法,避免重复添加相同实例
- 更新GetInstance和GetInstances方法的内部实现逻辑
- 调整Contains和Clear方法以适配新的数据结构
- 新增ContainsInstance方法用于查询具体实例是否存在
|
2025-12-18 22:27:26 +08:00 |
|
GwWuYou
|
1d2847ed5f
|
refactor(core): 替换容器注册方法为RegisterPlurality
- 将Architecture中的Register调用替换为RegisterPlurality
- 更新系统、模型和工具的注册逻辑以支持多重注册
- 确保所有组件正确设置架构引用后进行注册
|
2025-12-18 21:47:26 +08:00 |
|
GeWuYou
|
1e67b8ae52
|
feat(core): 更新架构接口返回值可空
- 修改 GetSystem 方法返回值为可空类型
- 修改 GetModel 方法返回值为可空类型
- 修改 GetUtility 方法返回值为可空类型
- 更新对应接口定义以支持可空返回值
|
2025-12-18 16:06:51 +08:00 |
|
GeWuYou
|
30bd571bc1
|
refactor(ioc): 将IocContainer中的_frozen字段标记为volatile
- 修改_frozen字段添加volatile关键字以确保线程安全
- 提高容器状态变更的可见性与一致性
- [no tag]
|
2025-12-18 10:33:04 +08:00 |
|
GeWuYou
|
d924cba726
|
feat(ioc): 实现IOC容器线程安全与冻结机制
- 添加读写锁确保多线程环境下的访问安全
- 引入冻结标志位防止容器被意外修改
- 注册和查询方法均增加锁保护逻辑
- 新增 Freeze 方法用于锁定容器状态
- 重构注册内部逻辑并提取公共方法
- 所有公开方法添加线程安全注释说明
- [not tag]
|
2025-12-18 09:26:13 +08:00 |
|
GeWuYou
|
5270a19e44
|
refactor(ioc): 简化依赖注入容器中的列表初始化语法
- 使用集合表达式替代显式创建List<object>实例
- 统一代码风格,提高可读性
- 减少不必要的类型声明冗余
- [no tag]
|
2025-12-18 08:35:09 +08:00 |
|
GwWuYou
|
b86add9789
|
refactor(ioc): 重构IocContainer以支持多实例和系统注册
- 修改核心存储结构为Dictionary<Type, List<object>>以支持多实例
- 新增RegisterSingleton方法用于注册单例实例
- 新增RegisterPlurality方法用于注册多个接口实现
- 新增RegisterSystem方法用于注册系统实例
- 新增GetAll方法获取指定类型的所有实例
- 新增GetRequired方法获取必需的唯一实例
- 新增GetAllSorted方法支持实例排序
- 新增Contains方法检查类型是否已注册
- 新增Clear方法清空容器
- 完善异常处理和重复注册检查
|
2025-12-17 22:06:31 +08:00 |
|
GwWuYou
|
7d554cbddf
|
feat(core): 添加对 .NET 10 框架的支持
- 在 GFramework.Core 项目中添加 net10.0 目标框架
- 在 GFramework.Core.Godot 项目中添加 net10.0 目标框架
- 在主 GFramework 项目中添加 net10.0 目标框架
- 调整目标框架顺序,将 net8.0 置于首位
|
2025-12-17 21:26:46 +08:00 |
|
GwWuYou
|
a444581ec7
|
feat(core): 添加架构初始化完成事件
- 在架构初始化完成后发送 ArchitectureInitializedEvent 事件
- 新增 ArchitectureEvents 类用于定义架构相关事件
- 修改 AbstractResourceFactorySystem 在架构初始化完成后执行资源预加载
- 移除 AbstractArchitecture 中的多余空行
|
2025-12-17 21:07:36 +08:00 |
|
GwWuYou
|
eae45625a7
|
feat(godot): 集成Godot生命周期管理
- 新增ArchitectureAnchorNode类用于监听场景树销毁事件
- 在AbstractArchitecture中实现AttachToGodotLifecycle方法
- 自动绑定架构销毁逻辑到Godot节点退出时机
- 防止架构组件在热重载或多次初始化时重复挂载
- 完善系统注册与销毁流程,确保资源正确释放
|
2025-12-17 19:52:25 +08:00 |
|
GeWuYou
|
396cc589bc
|
feat(core): 实现系统销毁机制
- 在 AbstractSystem 中添加 OnDestroy 抽象方法和 ISystem.Destroy 接口实现
- 在 Architecture 中增加 Destroy 方法以统一销毁所有已注册系统
- 更新 ISystem 接口注释及功能描述,明确支持系统销毁能力
- 修正 OnRegisterPatch 调用方式,确保架构注册补丁逻辑正确执行
- 完善 AbstractAudioManagerSystem 中的 OnDestroy 方法重写逻辑
- [no tag]
|
2025-12-17 13:00:33 +08:00 |
|
GwWuYou
|
8188ebbe73
|
refactor(core): 优化架构实例访问方式并增强拖拽组件功能
- 将MArchitecture属性重构为IArchitecture类型的Instance属性
- 移除冗余的Interface属性,统一通过Instance访问架构实例
- 为AbstractDragDrop2DComponentBase组件添加可配置的输入操作名称
- 新增CancelDragInputActionName和SelectInputActionName属性
- 使用属性名替代硬编码字符串来处理拖拽相关输入事件
- 清理代码格式,移除多余空行和调整代码间距
- 更新XML文档注释以反映最新的代码结构和功能说明
|
2025-12-13 20:05:13 +08:00 |
|
GwWuYou
|
82713e34f0
|
refactor(core): 重构架构和命令相关代码结构
- 调整了 Architecture 类中字段和方法的布局,提升可读性
- 优化了命令执行逻辑,明确区分有无返回值的命令处理
- 规范了接口和抽象类的注释格式,增强文档清晰度
- 统一了代码风格,对齐缩进与换行符使用
- 补充了事件系统中泛型事件类的功能实现
- 完善了 README 文档中的条目结构和内容表述
|
2025-12-12 21:10:21 +08:00 |
|
GwWuYou
|
fdc51e23b7
|
refactor(godot): 重构Godot相关扩展并迁移至新项目结构
- 将NodeExtensions和UnRegisterExtension迁移至GFramework.Core.Godot项目
- 更新命名空间以匹配新的项目结构
- 为扩展方法参数添加可空注解以提高安全性
- 移除旧的条件编译指令#if GODOT和#endif
- 创建新的GFramework.Core.Godot.csproj项目文件
- 在解决方案中注册新的GFramework.Core.Godot项目
- 更新主项目文件以排除新项目中的文件冲突
- 添加GodotSharpEditor包引用以支持Godot编辑器功能
- 链接新项目的扩展文件到原有路径以保持兼容性
|
2025-12-11 10:14:00 +08:00 |
|
GwWuYou
|
e204f899ba
|
refactor(core): 重构框架命名空间为GFramework.Core
- 将所有framework命名空间下的类迁移至GFramework.Core命名空间
- 更新所有相关using引用从framework到Core
- 重命名项目文件夹及文件路径以匹配新的命名空间结构
- 在解决方案中添加GFramework.Core项目引用
- 配置项目依赖关系并移除旧的Generator引用冲突
- 创建独立的GFramework.Core.csproj项目文件支持多目标框架
|
2025-12-10 08:51:17 +08:00 |
|