1
This commit is contained in:
@@ -25,8 +25,8 @@ import {
|
||||
} from '../src/data/questFlow.ts';
|
||||
import { createInitialGameRuntimeStats } from '../src/data/runtimeStats.ts';
|
||||
import { createSceneCallOutEncounter, createSceneEncounterPreview, ensureSceneEncounterPreview } from '../src/data/sceneEncounterPreviews.ts';
|
||||
import { buildSceneObserveSignsStoryText } from '../src/data/sceneObservation.ts';
|
||||
import { getSceneHostileNpcPresetIds, getScenePresetsByWorld } from '../src/data/scenePresets.ts';
|
||||
import { resolveFunctionOption } from '../src/data/stateFunctions.ts';
|
||||
import { buildTreasureEncounterStoryMoment, buildTreasureResultText, resolveTreasureReward } from '../src/data/treasureInteractions.ts';
|
||||
import { AnimationState, GameState, WorldType } from '../src/types.ts';
|
||||
|
||||
@@ -209,8 +209,24 @@ function smokeObserveAndCallOut() {
|
||||
assert(callOutResult.currentEncounter?.kind !== 'treasure', `[idle] treasure call_out should be disabled for ${worldType}`);
|
||||
assert(callOutResult.currentEncounter || callOutResult.sceneHostileNpcs.length > 0 || getSceneHostileNpcPresetIds(scene).length === 0, `[idle] call_out failed for ${scene.id}`);
|
||||
|
||||
const observeText = buildSceneObserveSignsStoryText(worldType, scene.id);
|
||||
assert(observeText.length > 12, `[idle] observe_signs text too short for ${scene.id}`);
|
||||
const observeOption = resolveFunctionOption(
|
||||
'idle_observe_signs',
|
||||
{
|
||||
worldType,
|
||||
playerCharacter: baseState.playerCharacter,
|
||||
inBattle: false,
|
||||
currentSceneId: scene.id,
|
||||
currentSceneName: scene.name,
|
||||
monsters: [],
|
||||
playerHp: baseState.playerHp,
|
||||
playerMaxHp: baseState.playerMaxHp,
|
||||
playerMana: baseState.playerMana,
|
||||
playerMaxMana: baseState.playerMaxMana,
|
||||
},
|
||||
'观察周围动静',
|
||||
);
|
||||
assert(observeOption?.functionId === 'idle_observe_signs', `[idle] observe_signs option missing for ${scene.id}`);
|
||||
assert(Boolean(observeOption?.detailText?.trim()), `[idle] observe_signs detail missing for ${scene.id}`);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user