This commit is contained in:
2026-04-19 20:33:18 +08:00
parent 692643136f
commit 67c584b4df
123 changed files with 11898 additions and 4082 deletions

View File

@@ -103,15 +103,11 @@ function createRuntimeStoryOption(
option: RuntimeStoryOptionView,
gameState?: Pick<GameState, 'currentEncounter'>,
): StoryOption {
const detailParts = [option.detailText, option.disabled ? option.reason : null]
.filter(Boolean)
.join(' ');
return {
functionId: option.functionId,
actionText: option.actionText,
text: option.actionText,
detailText: detailParts || undefined,
detailText: option.detailText,
visuals: {
playerAnimation: AnimationState.IDLE,
playerMoveMeters: 0,
@@ -121,6 +117,9 @@ function createRuntimeStoryOption(
monsterChanges: [],
},
interaction: buildRuntimeOptionInteraction(option, gameState),
runtimePayload: option.payload,
disabled: option.disabled,
disabledReason: option.reason,
};
}
@@ -162,9 +161,9 @@ export function buildStoryMomentFromRuntimeOptions(params: {
}) {
return {
text: params.storyText,
options: params.options
.filter((option) => !option.disabled)
.map((option) => createRuntimeStoryOption(option, params.gameState)),
options: params.options.map((option) =>
createRuntimeStoryOption(option, params.gameState),
),
} satisfies StoryMoment;
}