36 lines
1.6 KiB
TypeScript
36 lines
1.6 KiB
TypeScript
import type { FunctionDocumentationEntry } from '../types';
|
||
|
||
/**
|
||
* battle_attack_basic
|
||
*
|
||
* 后端单行为战斗模型的普通攻击入口。该 function 只登记文档和契约,
|
||
* 不进入前端本地 state function 候选池。
|
||
*/
|
||
export const BATTLE_ATTACK_BASIC_FUNCTION: FunctionDocumentationEntry = {
|
||
id: 'battle_attack_basic',
|
||
domain: 'state',
|
||
title: '普通攻击',
|
||
source: 'src/data/functionCatalog/state/battleAttackBasic.ts',
|
||
summary: '后端单行为战斗模型中的基础攻击 function。',
|
||
detailedDescription:
|
||
'这个 function 代表一次明确的普通攻击点击,后端直接结算伤害、敌方反击和下一轮战斗选项,不再请求 AI 续写整段战斗剧情。',
|
||
trigger: '仅在 battle 状态且场上仍有存活敌人时,由后端战斗 option 池下发。',
|
||
execution:
|
||
'前端透传 functionId,Rust 后端经 story battle facade 调用 module-combat 按普通攻击规则结算本回合。',
|
||
result: '刷新 HP、战斗日志和下一轮战斗 options;若敌人被击败,再进入脱战剧情推理。',
|
||
state: 'battle',
|
||
category: 'battle',
|
||
active: true,
|
||
runtime: {
|
||
storyMode: 'local_only',
|
||
uiMode: 'none',
|
||
executor:
|
||
'server-rs/crates/module-combat/src/lib.rs -> resolve_combat_action',
|
||
animationNote: '播放一次基础攻击和受击反馈,不扩展成连续多段连击。',
|
||
storyNote:
|
||
'战斗未结束时只展示本次结算文本;战斗结束后才请求脱战剧情。',
|
||
uiNote: '由后端战斗 option 池生成,不进入前端本地 state function 候选。',
|
||
compactDetailText: '直接攻击眼前敌人',
|
||
},
|
||
};
|