This commit is contained in:
2026-04-21 19:18:26 +08:00
parent 4372ab5be1
commit 48957311bc
78 changed files with 643 additions and 3801 deletions

View File

@@ -32,6 +32,14 @@
## 基础状态 Function
- `battle_attack_basic`
脚本:`src/data/functionCatalog/state/battleAttackBasic.ts`
说明:后端单行为战斗模型中的普通攻击 function。它由后端战斗 option 池下发,前端只透传 functionId不进入前端本地 `STATE_FUNCTION_DEFINITIONS` 候选池。
- `battle_use_skill`
脚本:`src/data/functionCatalog/state/battleUseSkill.ts`
说明:后端单行为战斗模型中的技能释放 function。每个技能 option 必须携带 `runtimePayload.skillId`,因此只登记文档和契约,不作为前端本地泛用 state function 生成。
- `battle_all_in_crush`
脚本:`src/data/functionCatalog/state/battleAllInCrush.ts`
说明:战斗中的正面强压动作,只在 `battle` 状态且有存活敌人时进入候选池。它会提高伤害与终结/爆发技能权重,同时抬高承伤,适合收头、压血和赌一波换血抢节奏。
@@ -110,6 +118,18 @@
脚本:`src/data/functionCatalog/npc/npcChat.ts`
说明:围绕当前话题与 NPC 继续交谈的 function。它会先生成对话正文再把真正的新选项延迟到 `story_continue_adventure` 之后展示。
- `npc_chat_quest_offer_view`
脚本:`src/data/functionCatalog/npc/npcChatQuestOffer.ts`
说明:聊天内待领取委托的查看入口,只查看 pending quest offer不立即写入正式任务日志。
- `npc_chat_quest_offer_replace`
脚本:`src/data/functionCatalog/npc/npcChatQuestOffer.ts`
说明:聊天内待领取委托的更换入口,重新走任务生成链替换当前 pending quest offer。
- `npc_chat_quest_offer_abandon`
脚本:`src/data/functionCatalog/npc/npcChatQuestOffer.ts`
说明:聊天内待领取委托的放弃入口,只清空 pending quest offer不影响已接任务。
- `npc_gift`
脚本:`src/data/functionCatalog/npc/npcGift.ts`
说明:向 NPC 送礼的入口 function。第一次点击通常只打开礼物面板确认礼物后才结算好感变化并继续剧情。
@@ -186,6 +206,7 @@
## 当前实现约定
- `src/data/stateFunctions.ts` 现在只负责基础 state function 的聚合、override 合并、运行时过滤和 option 解析。
- `src/data/stateFunctions.ts` 现在只负责前端本地基础 state function 的聚合、override 合并、运行时过滤和 option 解析。
- `battle_attack_basic` / `battle_use_skill` 虽然属于后端运行时契约中的战斗 function但不进入 `STATE_FUNCTION_DEFINITIONS`。它们由后端 runtime story / combat option 池生成,避免前端本地生成缺少 `runtimePayload` 的假选项。
- 非 state function 目前仍由各自原有流程模块执行,但它们的 `id`、标题和详细说明已经统一收口到 `functionCatalog/`
- 后续新增 function 时,建议先补独立脚本,再把运行时调用接进来,最后同步这份目录文档。