30 lines
1.3 KiB
TypeScript
30 lines
1.3 KiB
TypeScript
import type { FunctionDocumentationEntry } from '../types';
|
||
|
||
/**
|
||
* npc_spar
|
||
*
|
||
* 与眼前 NPC 切磋武艺的非致命战斗 function。
|
||
*/
|
||
export const NPC_SPAR_FUNCTION: FunctionDocumentationEntry = {
|
||
id: 'npc_spar',
|
||
domain: 'npc',
|
||
title: '与对方切磋武艺',
|
||
source: 'src/data/functionCatalog/npc/npcSpar.ts',
|
||
summary: '把 NPC 互动切到点到为止的 spar 战斗模式。',
|
||
detailedDescription:
|
||
'它和 npc_fight 共用战斗骨架,但数值与结算目标不同,重点是以低伤害对局换取关系推进,而不是击杀或掠夺。',
|
||
trigger: '在可交流的 NPC 菜单里作为友好或试探性过招选项出现。',
|
||
execution: '点击后进入 spar 模式,本地规则会限制伤害与战后回场逻辑。',
|
||
result: '切磋结束后通常返回 NPC 场景,并小幅提高 affinity 或推进相关任务。',
|
||
active: true,
|
||
runtime: {
|
||
storyMode: 'special_sequence',
|
||
uiMode: 'none',
|
||
executor: 'src/hooks/story/npcEncounterActions.ts -> handleNpcInteraction',
|
||
animationNote: '切到 spar 战斗模式后,由战斗播放链路驱动切磋演出。',
|
||
storyNote: '不会先弹窗,直接进入点到为止的切磋流程。',
|
||
uiNote: '不弹 modal,直接切磋。',
|
||
compactDetailText: '切磋几招看身手',
|
||
},
|
||
};
|