Game Event Implementation
概览
将“脚本 + 图像 + 效果批注”转化为可运行的游戏事件:完成数据、UI 调用、触发与多语言同步。
工作流总览(必走)
- •输入校验:确认脚本、图片、效果批注、触发位置是否齐全。
- •脚本解析:整理为事件步骤(对话、指令、选项、跳转)。
- •定位结构:查找项目内事件数据、触发入口与 UI 实现位置。
- •实现落地:写事件数据与调用逻辑,接入 UI(EventModal 或 VisualNovelModal)。
- •语言同步:中文/英文同步更新;保证 key 与文案完整。
- •验证方式:提供可复现的临时触发或控制台入口。
Step 1:输入校验(必须)
在开始写代码前,先确认以下输入是否完整,缺失则询问:
- •脚本文本:对白、旁白、分支、跳转。
- •素材路径:背景、立绘、其他图片资源的具体路径。
- •效果批注:例如震动/闪白/图层变化等。
- •触发方式:在哪个章节/地点/按钮/事件 ID 触发。
如果用户未给出批注格式,先提出“拟采用的映射规则”,获得确认后再实现。
Step 2:脚本解析(建议输出中间结构)
将原始脚本整理为以下中间结构:
- •
step.id:步骤标识 - •
step.speaker/step.text - •
step.commands:背景、立绘、特效等 - •
step.choices:选项与跳转
需要时,记录“效果批注 -> 指令映射表”。
Step 3:定位项目结构(必做搜索)
在项目中定位:
- •事件数据来源:章节数据、事件表、或事件脚本文件
- •触发入口:事件触发逻辑或管理器
- •UI 展示方式:EventModal / VisualNovelModal
建议搜索关键词:
- •
event/eventsMap/triggerEvent - •
EventModal/VisualNovelModal - •
openEventModal/openVisualNovelModal
Step 4:实现落地(按需选择 UI)
A. 使用 EventModal(简单场景)
适用:单背景 + 文案 + 按钮。
- •组装
title/description/background/choices。 - •绑定按钮 action 或触发事件跳转。
B. 使用 VisualNovelModal(复杂场景)
适用:立绘、多层背景、打字机、特效、分支。
建议脚本转换为:
- •
bg:reset/push/pop/replace - •
sprite:设置立绘 - •
effect:shake/flash - •
choices:选项与next跳转
文本打字机默认开启;若脚本标注禁用/速度,则在 step 或 options 中显式设置。
Step 5:语言同步(强制)
修改任何文案必须同步中文/英文语言文件,不能只改一种语言。
如果新增 key:
- •保证
zh/en版本同时存在 - •避免硬编码字符串
Step 6:验证方式(必须交付)
提供至少一种可复现方式:
- •临时按钮
- •控制台调用
- •事件触发入口(章节/地点/任务)
并明确验证点:背景层、立绘、特效、选项跳转、打字机。
约束与风格要求(必须遵守)
- •必须使用 UTF-8,回复与注释使用简体中文。
- •避免补丁式写法:必要时先做小范围重构。
- •禁止堆叠巨函数:超过 80 行拆分。
- •禁止隐含全局变量;重要参数提为常量。
- •先拆解任务再改文件,给出实现方案与修改点。
输出给用户的内容(建议格式)
- •实现方案简要说明(模块拆分与理由)
- •原有结构理解(3~5句)
- •具体改动位置与原因
- •触发与验证步骤