SuperAPI AI 工具集

godot-composition

通用与其它

查看项目

更新于 10-15 19:48

技能介绍

用途:为 Godot 游戏(RPG、平台跳跃、射击等)提供可扩展的架构标准,强制使用组合模式(实体-组件)而非继承。核心思想是「有-a」优于「是-a」:在 Godot 中节点即组件,复杂实体(如玩家)只是管理专用工作节点的编排器。

主要能力:提供一组可复用脚本,包括 health_component.gd(生命与死亡信号)、hit_box_component.gd 与 hurt_box_component.gd(伤害区域)、velocity_component.gd(移动与加速)、interaction_component.gd(交互)、follower_component.gd(跟随)、state_component_vsm.gd(组件化状态机)、status_effect_component.gd(增益/减益叠加)、visual_sync_component.gd(逻辑与视觉分离),以及必读的 composition_root_init.gd(编排器接线)。

使用方式:从 composition_root_init.gd 开始,再加载匹配的组件脚本。组件通过带类型的 @export 在 Inspector 中注入依赖,或使用场景唯一名 %Name,禁止用 $ 或 get_node() 查找组件。组件用信号向上通信、方法向下调用,保持解耦。组件应定义 class_name,并在 _ready() 中用 assert 做依赖校验(发布版会被剥离)。

适用场景:游戏实体行为(生命、碰撞、移动、交互)、跨场景服务(音频、存档、网络、经济账本,应使用 Autoload 而非组件)、以及需要复用逻辑的玩家与敌人。

限制与禁止:不要使用深层继承链,不要用 get_node()/$ 获取组件,组件不得直接引用父脚本,不要在同一脚本混合输入、物理与游戏逻辑,不要用继承「添加功能」,不要硬编码组件依赖,不要忽略节点生命周期,不要隐藏组件访问点。纯数据应使用 Resource 而非节点。资料未提供具体收费、价格或平台信息。