import type { StateFunctionRuntimeSource } from '../types'; import { BATTLE_ALL_IN_CRUSH_FUNCTION_SOURCE } from './battleAllInCrush'; import { BATTLE_ATTACK_BASIC_FUNCTION } from './battleAttackBasic'; import { BATTLE_ESCAPE_BREAKOUT_FUNCTION_SOURCE } from './battleEscapeBreakout'; import { BATTLE_FEINT_STEP_FUNCTION_SOURCE } from './battleFeintStep'; import { BATTLE_FINISHER_WINDOW_FUNCTION_SOURCE } from './battleFinisherWindow'; import { BATTLE_GUARD_BREAK_FUNCTION_SOURCE } from './battleGuardBreak'; import { BATTLE_PROBE_PRESSURE_FUNCTION_SOURCE } from './battleProbePressure'; import { BATTLE_RECOVER_BREATH_FUNCTION_SOURCE } from './battleRecoverBreath'; import { BATTLE_USE_SKILL_FUNCTION } from './battleUseSkill'; import { IDLE_CALL_OUT_FUNCTION_SOURCE } from './idleCallOut'; import { IDLE_EXPLORE_FORWARD_FUNCTION_SOURCE } from './idleExploreForward'; import { IDLE_FOLLOW_CLUE_FUNCTION_SOURCE } from './idleFollowClue'; import { IDLE_OBSERVE_SIGNS_FUNCTION_SOURCE } from './idleObserveSigns'; import { IDLE_REST_FOCUS_FUNCTION_SOURCE } from './idleRestFocus'; import { IDLE_TRAVEL_NEXT_SCENE_FUNCTION_SOURCE } from './idleTravelNextScene'; export const STATE_FUNCTION_SOURCES: StateFunctionRuntimeSource[] = [ BATTLE_ALL_IN_CRUSH_FUNCTION_SOURCE, BATTLE_GUARD_BREAK_FUNCTION_SOURCE, BATTLE_PROBE_PRESSURE_FUNCTION_SOURCE, BATTLE_FEINT_STEP_FUNCTION_SOURCE, BATTLE_RECOVER_BREATH_FUNCTION_SOURCE, BATTLE_FINISHER_WINDOW_FUNCTION_SOURCE, BATTLE_ESCAPE_BREAKOUT_FUNCTION_SOURCE, IDLE_EXPLORE_FORWARD_FUNCTION_SOURCE, IDLE_TRAVEL_NEXT_SCENE_FUNCTION_SOURCE, IDLE_REST_FOCUS_FUNCTION_SOURCE, IDLE_OBSERVE_SIGNS_FUNCTION_SOURCE, IDLE_FOLLOW_CLUE_FUNCTION_SOURCE, IDLE_CALL_OUT_FUNCTION_SOURCE, ]; export const STATE_FUNCTION_RUNTIME_SOURCES = STATE_FUNCTION_SOURCES.filter( (source) => source.runtime, ); export const STATE_FUNCTION_DEFINITIONS = STATE_FUNCTION_SOURCES.map( (source) => source.definition, ); export const STATE_FUNCTION_PROMPT_DESCRIPTIONS = Object.fromEntries( STATE_FUNCTION_SOURCES.map((source) => [ source.definition.id, source.promptDescription, ]), ) as Record; export const STATE_FUNCTION_DOCUMENTATION = [ BATTLE_ATTACK_BASIC_FUNCTION, BATTLE_USE_SKILL_FUNCTION, ...STATE_FUNCTION_SOURCES.map((source) => source.documentation), ];