用途:该技能用于在 Phaser 3(JavaScript)项目中应用、重构、评审或解释设计模式,重点覆盖场景架构、实体、输入系统、物理交互和性能敏感的游戏逻辑代码。
主要能力与选型:按真实游戏问题选模式,避免为模式而模式。可变实体创建对应工厂方法/抽象工厂;分步搭建关卡或 UI 对应建造者;大量实例共享状态对应享元加对象池;按 AI 模式或行为变化的规则对应状态/策略;玩法与 UI 之间的解耦事件对应观察者/中介者;可重放动作(输入、回放、撤销)对应命令。另有 references/patterns-map.md 提供完整模式到 Phaser 用法的映射,references/phaser-snippets.md 提供可复制模板,references/state-machine-pattern-phaser.md 提供适配 Phaser 的 State + StateMachine(Idle/Move/Action)完整实现。
使用方式:先识别真实游戏问题,再选择能降低耦合且不增加多余复杂度的模式,将其映射到 Phaser 原语(Scene、GameObject、Group、Events、Physics、Time、Input),用游戏领域命名在 JavaScript 中实现,最后运行验证(场景加载、输入响应、碰撞生效、无事件泄漏)。交付物通常包括 2-4 行说明模式为何解决问题、带真实游戏上下文的代码片段、相关风险与反模式,以及最小验证方案(手动测试或简单测试)。
实现规则:优先组合而非深层继承;保持场景小而职责清晰;玩法逻辑避免可变单例,单例仅保留给音频、配置等全局服务;当模式影响移动或计时器时,在 update(time, delta) 中使用 delta;在 shutdown/destroy 中取消事件订阅以避免内存泄漏;子弹、粒子等海量对象应结合对象池(setActive(false)、setVisible(false))。
限制:资料未提供该技能的具体安装命令、收费信息、支持平台及配套代码仓库地址;实际效果取决于具体项目。