Files
Genarrative/src/data/functionCatalog/state/battleGuardBreak.ts
kdletters cbc27bad4a
Some checks failed
CI / verify (push) Has been cancelled
init with react+axum+spacetimedb
2026-04-26 18:06:23 +08:00

59 lines
2.0 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import { AnimationState } from '../../../types';
import type { StateFunctionSource } from '../types';
/**
* battle_guard_break
*
* 战斗中的破架重击动作。它强调“针对敌人当前动作强拆架势”,
* 比纯换血更讲究把敌人的节奏打断。
*/
export const BATTLE_GUARD_BREAK_FUNCTION_SOURCE: StateFunctionSource = {
definition: {
id: 'battle_guard_break',
state: 'battle',
category: 'battle',
text: '战斗:重击破架',
description: '针对怪物当前动作强拆架势,伤害偏高,反击压力略低。',
visual: {
playerAnimation: AnimationState.SKILL2,
playerMoveMeters: 0,
playerOffsetY: 0,
playerFacing: 'right',
scrollWorld: false,
monsterActionTemplate: '{monster}被重击震得动作一滞',
monsterAnimation: 'attack',
monsterMoveMeters: 0,
},
effect: {
damageMultiplier: 1.2,
incomingDamageMultiplier: 0.9,
skillWeights: {
burst: 4.5,
finisher: 3,
steady: 2.2,
mobility: 1.5,
projectile: 1,
},
},
},
promptDescription:
'针对面前敌人的架势或破绽重击破防,文案可以自然改写,但仍要保持这是破架强攻。',
documentation: {
id: 'battle_guard_break',
domain: 'state',
title: '战斗:重击破架',
source: 'src/data/functionCatalog/state/battleGuardBreak.ts',
summary: '围绕破架、震停和打断敌人节奏的战斗 function。',
detailedDescription:
'它不是单纯地压血,而是把回合重心放在“砸开架势、制造空档”,让后续剧情更容易承接敌人失衡的结果。',
trigger: '仅在 battle 状态且敌人仍在场时参与候选。',
execution:
'维持较高 damageMultiplier同时降低 incomingDamageMultiplier并偏向 burst / steady 组合,突出稳中带狠的重击感。',
result: '适合对付正在招架、准备反扑或看起来露出结构性破绽的敌人。',
state: 'battle',
category: 'battle',
active: true,
},
};