Files
Genarrative/tmp_visible_props_scan.txt
高物 c49c64896a
Some checks failed
CI / verify (push) Has been cancelled
初始仓库迁移
2026-04-04 23:57:06 +08:00

347 lines
48 KiB
Plaintext
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.
E:\Repos\ai-native-visual-rpg\src\components\adventure-panel\AdventurePanelOverlays.tsx:194:aria-label={`查看奖励物品 ${item.name}`}
E:\Repos\ai-native-visual-rpg\src\components\game-shell\CharacterSelectionFlow.tsx:376:aria-label={`查看${selectedCharacterPreview?.name ?? selectedCharacter.name}的详情`}
E:\Repos\ai-native-visual-rpg\src\components\game-shell\CharacterSelectionFlow.tsx:404:subtitle="角色详情"
E:\Repos\ai-native-visual-rpg\src\components\game-shell\GameShellOverlays.tsx:123:<Suspense fallback={<ModalLoadingFallback label="姝e湪鍔犺浇鍐掗櫓璇︽儏..." onClose={closeAdventureEntityModal} />}>
E:\Repos\ai-native-visual-rpg\src\components\game-shell\GameShellOverlays.tsx:162:<Suspense fallback={<PanelLoadingFallback label="姝e湪鍔犺浇闃熶紞闈㈡澘" />}>
E:\Repos\ai-native-visual-rpg\src\components\game-shell\GameShellOverlays.tsx:187:<Suspense fallback={<PanelLoadingFallback label="姝e湪鍔犺浇鑳屽寘闈㈡澘" />}>
E:\Repos\ai-native-visual-rpg\src\components\game-shell\GameShellOverlays.tsx:214:<Suspense fallback={<ModalLoadingFallback label="姝e湪鍔犺浇闃熶紞钀ュ湴..." onClose={closeCampModal} />}>
E:\Repos\ai-native-visual-rpg\src\components\game-shell\GameShellOverlays.tsx:229:<Suspense fallback={<ModalLoadingFallback label="姝e湪鍔犺浇鍦板浘..." onClose={() => setIsMapOpen(false)} />}>
E:\Repos\ai-native-visual-rpg\src\components\game-shell\GameShellOverlays.tsx:248:<Suspense fallback={<ModalLoadingFallback label="姝e湪鍔犺浇瑙掕壊鑱婂ぉ..." onClose={characterChatUi.closeChat} />}>
E:\Repos\ai-native-visual-rpg\src\components\game-shell\GameShellOverlays.tsx:261:<Suspense fallback={<ModalLoadingFallback label="姝e湪鍔犺浇 NPC 浜や簰..." />}>
E:\Repos\ai-native-visual-rpg\src\components\game-shell\GameShellStoryPanels.tsx:155:<Suspense fallback={<PanelLoadingFallback label="正在加载角色面板" />}>
E:\Repos\ai-native-visual-rpg\src\components\game-shell\GameShellStoryPanels.tsx:176:<Suspense fallback={<PanelLoadingFallback label="正在加载冒险面板" />}>
E:\Repos\ai-native-visual-rpg\src\components\game-shell\GameShellStoryPanels.tsx:208:<Suspense fallback={<PanelLoadingFallback label="正在加载背包面板" />}>
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:149:return <EditorEmptyState message="没有可用的角色预设。" />;
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:264:title="Characters"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:265:description="Browse the character roster and edit preset data."
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:266:selectLabel="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:279:saveLabel="Save Character Overrides"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:315:title="Character Details"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:316:description="Edit the core character profile and preview settings."
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:322:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:328:label="閼冲苯瀵樻稉鏍櫕"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:404:title="Skill Preview"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:405:description="Preview ranged skills for the selected character."
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:411:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:420:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:429:label="Preview Monster"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:450:title="Skill Setup"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:451:description="Configure the selected character's skills."
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:493:label="閹垛偓閼?ID"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:498:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:503:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:514:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:529:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:535:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:541:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:549:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:557:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:591:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:598:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:605:label="Start Frame"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:613:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:629:<SectionCard title="Section" description="Editor section.">
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:634:label="鐟欐帟澹?ID"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:640:label="Name"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:645:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:650:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:655:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:660:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:665:label="鐠у嫭绨崣妯圭秼"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:670:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:675:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:681:label="閹勭壐"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:687:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:697:title="Attributes"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:698:description="Adjust the core character attributes."
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:704:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:710:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:716:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:722:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:729:<SectionCard title="Section" description="Editor section.">
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:745:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:763:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\CharacterPresetPanel.tsx:781:placeholder={'scene-id-1\nscene-id-2'}
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:124:title="Section"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:125:description="Editor section."
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:126:selectLabel="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:139:saveLabel="Save Monster Overrides"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:158:title="Monster Override Preview"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:159:description="Editor section."
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:165:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:207:<SectionCard title="Section" description="Editor section.">
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:212:label="Monster ID"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:218:label="Name"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:223:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:228:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:234:label="Intro Action"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:240:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:248:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:256:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:262:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:268:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:275:<SectionCard title="Section" description="Editor section.">
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:280:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:287:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:294:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:300:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:307:<SectionCard title="Section" description="Editor section.">
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:327:label="Field"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:335:label="闂備焦鐪归崺鍕垂鎼淬劌绀嬫い鎺嶇贰閸熲偓"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\MonsterPresetPanel.tsx:343:label="FPS"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:159:return <EditorEmptyState message="No NPC presets are available." />;
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:177:title="NPC Library"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:178:description="Browse and select an NPC preset."
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:179:selectLabel="NPC ID"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:192:saveLabel="Save NPC Overrides"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:221:title="Skill Preview"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:222:description="Preview ranged skills from the linked character."
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:228:label="Skill"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:237:label="World"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:264:title="Visual Preview"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:310:title="NPC Details"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:311:description="Edit the selected NPC preset."
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:317:label="NPC ID"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:323:label="Name"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:328:label="Role"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:333:label="Avatar"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:338:label="Linked Character ID"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:344:label="Monster Preset ID"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:351:label="Initial Affinity"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:356:label="Description"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\SceneNpcPresetPanel.tsx:371:title="Visual Editor"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:132:title="Scene Library"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:133:description="Browse and select a scene preset."
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:136:label="Scene"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:162:saveLabel="Save"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:170:title="Scene Preview"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:171:description="Preview monsters, NPCs, and treasure for the selected scene."
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:175:label="Preview Mode"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:233:title="Scene Details"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:234:description="Edit the selected scene preset."
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:238:label="Scene ID"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:244:label="World"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:250:label="Name"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:255:label="Description"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:261:label="Image Source"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:266:label="Forward Scene"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:274:label="Connected Scene IDs"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:282:label="Monster IDs"
E:\Repos\ai-native-visual-rpg\src\components\preset-editor\ScenePresetPanel.tsx:290:label="Treasure Hints"
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:226:title={`\u67e5\u770b ${row.label} \u7684\u4f24\u5bb3\u4fee\u6b63\u8d21\u732e\u8ba1\u7b97`}
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:793:<Section title="队长信息">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:818:<Section title="当前状态" chrome={UI_CHROME.statsPanel}>
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:820:<StatusRow label="生命值" current={gameState.playerHp} max={gameState.playerMaxHp} tone="hp" />
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:821:<StatusRow label="内力" current={gameState.playerMana} max={gameState.playerMaxMana} tone="mp" />
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:833:<Section title="属性">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:836:<Section title="背景故事">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:841:<Section title="性格">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:846:<Section title="技能">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:857:<Section title="装备">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:867:<Section title="同行角色">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:892:<Section title="状态估计" chrome={UI_CHROME.statsPanel}>
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:895:label="HP"
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:901:label="MP"
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:930:<Section title="属性">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:933:<Section title="背景故事">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:938:<Section title="性格">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:943:<Section title="技能">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:954:<Section title="装备">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:964:<Section title="怪物信息">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:991:<Section title="当前状态" chrome={UI_CHROME.statsPanel}>
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:993:<StatusRow label="生命值" current={selection.monster.hp} max={selection.monster.maxHp} tone="hp" />
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:1002:<Section title="战斗参数">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:1015:<Section title="生态描述">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:1021:<Section title="出没区域">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:1033:<Section title="可能掉落">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:1076:<Section title="NPC 信息">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:1127:<Section title="当前状态" chrome={UI_CHROME.statsPanel}>
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:1129:<StatusRow label="生命值" current={npcContext.currentHp} max={npcContext.maxHp} tone="hp" />
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:1131:<StatusRow label="内力" current={npcContext.currentMana} max={npcContext.maxMana} tone="mp" />
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:1137:<Section title="关系状态" chrome={UI_CHROME.statsPanel}>
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:1143:<Section title="携带物品">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:1179:<Section title="可进行互动">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:1194:<Section title="属性">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:1197:<Section title="背景故事">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:1202:<Section title="性格">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:1207:<Section title="技能">
E:\Repos\ai-native-visual-rpg\src\components\AdventureEntityModal.tsx:1220:<Section title="装备">
E:\Repos\ai-native-visual-rpg\src\components\AdventurePanel.tsx:248:aria-label={`Inspect reward item ${item.name}`}
E:\Repos\ai-native-visual-rpg\src\components\AdventurePanel.tsx:724:aria-label="打开设置"
E:\Repos\ai-native-visual-rpg\src\components\AdventurePanel.tsx:725:title="打开设置"
E:\Repos\ai-native-visual-rpg\src\components\AdventurePanel.tsx:799:aria-label="打开队伍"
E:\Repos\ai-native-visual-rpg\src\components\AdventurePanel.tsx:808:aria-label="打开背包"
E:\Repos\ai-native-visual-rpg\src\components\AdventurePanel.tsx:820:aria-label="换一换选项"
E:\Repos\ai-native-visual-rpg\src\components\CharacterChatModal.tsx:177:placeholder={`对${modal.target.character.name}说点什么...`}
E:\Repos\ai-native-visual-rpg\src\components\CharacterDetailModal.tsx:190:aria-label="关闭角色详情"
E:\Repos\ai-native-visual-rpg\src\components\CharacterDetailModal.tsx:198:<Section title="资料">
E:\Repos\ai-native-visual-rpg\src\components\CharacterDetailModal.tsx:223:<Section title="属性" chrome={UI_CHROME.statsPanel}>
E:\Repos\ai-native-visual-rpg\src\components\CharacterDetailModal.tsx:241:<Section title="旅程">
E:\Repos\ai-native-visual-rpg\src\components\CharacterDetailModal.tsx:257:<Section title="Skills">
E:\Repos\ai-native-visual-rpg\src\components\CharacterDetailModal.tsx:261:<Section title="装备">
E:\Repos\ai-native-visual-rpg\src\components\CharacterDetailModal.tsx:265:<Section title="背包">
E:\Repos\ai-native-visual-rpg\src\components\CharacterDetailModal.tsx:269:<Section title="背景">
E:\Repos\ai-native-visual-rpg\src\components\CharacterDetailModal.tsx:275:<Section title="性格">
E:\Repos\ai-native-visual-rpg\src\components\CharacterPanel.tsx:237:title={`\u67e5\u770b ${row.label} \u7684\u4f24\u5bb3\u4fee\u6b63\u8d21\u732e\u8ba1\u7b97`}
E:\Repos\ai-native-visual-rpg\src\components\CompanionCampModal.tsx:165:<StatusPill label="Active" value={`${companions.length}/${MAX_COMPANIONS}`} />
E:\Repos\ai-native-visual-rpg\src\components\CompanionCampModal.tsx:194:<StatusPill label="HP" value={`${companion.hp}/${companion.maxHp}`} />
E:\Repos\ai-native-visual-rpg\src\components\CompanionCampModal.tsx:195:<StatusPill label="MP" value={`${companion.mana}/${companion.maxMana}`} />
E:\Repos\ai-native-visual-rpg\src\components\CompanionCampModal.tsx:196:<StatusPill label="Affinity" value={`${companion.joinedAtAffinity}`} />
E:\Repos\ai-native-visual-rpg\src\components\CompanionCampModal.tsx:236:<StatusPill label="Reserve" value={`${reserveCompanionCards.length}`} />
E:\Repos\ai-native-visual-rpg\src\components\CompanionCampModal.tsx:257:<StatusPill label="HP" value={`${companion.hp}/${companion.maxHp}`} />
E:\Repos\ai-native-visual-rpg\src\components\CompanionCampModal.tsx:258:<StatusPill label="MP" value={`${companion.mana}/${companion.maxMana}`} />
E:\Repos\ai-native-visual-rpg\src\components\CompanionCampModal.tsx:259:<StatusPill label="Affinity" value={`${companion.joinedAtAffinity}`} />
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityCatalog.tsx:259:<Section title="世界概述" actions={<SmallButton onClick={() => onEditTarget({ kind: 'world' })} tone="sky">编辑</SmallButton>}>
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityCatalog.tsx:268:<Section title="档案规模" subtitle="结果页只保留角色、NPC 与场景档案,预设物品已从自定义世界中移除。">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityCatalog.tsx:296:<EmptyState title="当前没有符合搜索条件的可扮演角色。" />
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityCatalog.tsx:349:<EmptyState title="当前没有符合搜索条件的 NPC。" />
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityCatalog.tsx:400:<EmptyState title="当前没有符合搜索条件的场景。" />
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:242:placeholder="支持填写项目内图片路径或外链 URL"
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:358:title="预设选择"
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:359:subtitle={`共 ${presetImages.length} 张场景图片,点击任意图片即可应用到当前场景。`}
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:419:<ActionButton label="知道了" onClick={onClose} tone="sky" />
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:463:title={`修改形象:${npc.name}`}
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:464:subtitle="在独立面板中组合 MedievalFantasyCharacters 角色形象,左侧预览会保持吸顶。"
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:482:title="AI生成NPC形象"
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:483:subtitle="NPC 形象 AI 生成功能仍在开发中。"
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:503:<ModalShell title="编辑世界信息" subtitle="修改后的内容会直接反映在结果页,并会作为进入世界前的最终档案。" onClose={onClose}>
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:505:<Field label="世界名称">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:508:<Field label="副标题">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:511:<Field label="世界概述">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:514:<Field label="世界基调">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:517:<Field label="主线目标">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:520:<Field label="玩家原始设定">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:546:subtitle="可为角色指定外观模板,结果页和正式选角都会同步使用。"
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:564:<Field label="外观模板">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:574:<Field label="名称">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:577:<Field label="称号 / 头衔">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:580:<Field label="简介">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:583:<Field label="背景">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:586:<Field label="性格">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:589:<Field label="战斗风格">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:592:<Field label="标签">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:636:subtitle="NPC 形象编辑已拆分到独立面板,当前页面只保留档案信息与预览。"
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:663:<ActionButton label="修改形象" onClick={() => setIsVisualEditorOpen(true)} tone="sky" />
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:668:<Field label="名称">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:671:<Field label="头衔 / 职能">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:674:<Field label="描述">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:677:<Field label="动机">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:680:<Field label="关系切入口">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:718:subtitle="这里的场景图片会同步用于结果页展示和正式进入世界后的场景背景。"
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:723:label="场景图片"
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:733:<ActionButton label="预设选择" onClick={() => setIsPresetPickerOpen(true)} tone="sky" />
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:734:<ActionButton label="AI生成" onClick={() => setIsAiGenerateOpen(true)} />
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:742:<Field label="名称">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:745:<Field label="描述">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:748:<Field label="危险度">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:762:title="AI生成场景"
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldEntityEditorModal.tsx:763:subtitle="场景图片 AI 生成功能仍在开发中。"
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:392:<ActionButton label="恢复默认组合" onClick={() => onChange(buildDefaultCustomWorldNpcVisual(npc))} />
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:393:<ActionButton label="AI生成" onClick={onAiGenerate} tone="sky" />
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:399:<OptionSection title="种族" subtitle="切换基础种族,并预览对应的整体轮廓。">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:414:<OptionSection title="服装颜色" subtitle="预览身体部位素材。">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:430:<OptionSection title="肤色" subtitle="预览头部部位素材。">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:446:<OptionSection title="发型" subtitle="文字和发型部位预览同步显示。">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:465:<OptionSection title="发色" subtitle="基于当前发型预览不同发色。">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:487:<OptionSection title="胡须样式" subtitle="可直接切换为不显示,也可预览每种胡须部位。">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:489:label="不显示"
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:494:<EmptyPreview label="无" />
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:517:<OptionSection title="胡须颜色" subtitle="预览当前胡须样式下的颜色变化。">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:540:<OptionSection title="头饰类型" subtitle="先选装备类型,再挑具体素材和姿态。">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:542:label="不装备"
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:547:<EmptyPreview label="无" />
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:565:{gear ? <AtlasFramePreview type={gear.type} file={gear.file} frameIndex={gear.frameIndex} /> : <EmptyPreview label="无" />}
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:575:<OptionSection title="头饰素材" subtitle="素材卡片同时展示名称和头饰部位预览。">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:595:<OptionSection title="头饰姿态" subtitle="预览当前头饰素材在不同姿态下的部位变化。">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:617:<OptionSection title="主手类型" subtitle="预览不同主手武器类型。">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:619:label="不装备"
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:624:<EmptyPreview label="无" />
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:642:{gear ? <AtlasFramePreview type={gear.type} file={gear.file} frameIndex={gear.frameIndex} /> : <EmptyPreview label="无" />}
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:652:<OptionSection title="主手素材" subtitle="用当前武器姿态预览每个素材。">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:672:<OptionSection title="主手姿态" subtitle="预览当前主手素材在不同姿态下的部位。">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:694:<OptionSection title="副手类型" subtitle="可选择不装备,或为副手配置盾牌 / 近战部件。">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:696:label="不装备"
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:701:<EmptyPreview label="无" />
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:709:label="盾牌 / 近战副手"
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:714:{gear ? <AtlasFramePreview type={gear.type} file={gear.file} frameIndex={gear.frameIndex} /> : <EmptyPreview label="无" />}
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:724:<OptionSection title="副手素材" subtitle="素材卡片展示副手部件预览。">
E:\Repos\ai-native-visual-rpg\src\components\CustomWorldNpcVisualEditor.tsx:744:<OptionSection title="副手姿态" subtitle="预览当前副手素材在不同姿态下的部位。">
E:\Repos\ai-native-visual-rpg\src\components\DeveloperTeamModal.tsx:44:aria-label="Close developer team modal"
E:\Repos\ai-native-visual-rpg\src\components\GameShell.tsx:487:<Suspense fallback={<PanelLoadingFallback label="正在加载队伍面板" />}>
E:\Repos\ai-native-visual-rpg\src\components\GameShell.tsx:508:<Suspense fallback={<PanelLoadingFallback label="正在加载冒险面板" />}>
E:\Repos\ai-native-visual-rpg\src\components\GameShell.tsx:543:<Suspense fallback={<PanelLoadingFallback label="正在加载背包面板" />}>
E:\Repos\ai-native-visual-rpg\src\components\GameShell.tsx:569:<Suspense fallback={<ModalLoadingFallback label="正在加载冒险详情..." onClose={closeAdventureEntityModal} />}>
E:\Repos\ai-native-visual-rpg\src\components\GameShell.tsx:608:<Suspense fallback={<PanelLoadingFallback label="正在加载队伍面板" />}>
E:\Repos\ai-native-visual-rpg\src\components\GameShell.tsx:633:<Suspense fallback={<PanelLoadingFallback label="正在加载背包面板" />}>
E:\Repos\ai-native-visual-rpg\src\components\GameShell.tsx:660:<Suspense fallback={<ModalLoadingFallback label="正在加载队伍营地..." onClose={closeCampModal} />}>
E:\Repos\ai-native-visual-rpg\src\components\GameShell.tsx:675:<Suspense fallback={<ModalLoadingFallback label="正在加载地图..." onClose={() => setIsMapOpen(false)} />}>
E:\Repos\ai-native-visual-rpg\src\components\GameShell.tsx:694:<Suspense fallback={<ModalLoadingFallback label="正在加载角色聊天..." onClose={characterChatUi.closeChat} />}>
E:\Repos\ai-native-visual-rpg\src\components\GameShell.tsx:707:<Suspense fallback={<ModalLoadingFallback label="正在加载 NPC 交互..." />}>
E:\Repos\ai-native-visual-rpg\src\components\InventoryPanel.tsx:176:title={`${item.name} x${item.quantity}`}
E:\Repos\ai-native-visual-rpg\src\components\ItemCatalogEditor.tsx:458:<Section title="物品列表" description="基于 public/Icons 下的全部 png 素材自动构建物品目录,可按名称、路径、分类和稀有度筛选。">
E:\Repos\ai-native-visual-rpg\src\components\ItemCatalogEditor.tsx:465:placeholder="按名称、路径、标签搜索"
E:\Repos\ai-native-visual-rpg\src\components\ItemCatalogEditor.tsx:525:<Section title="物品预览" description="这里会实时预览当前素材构建出的物品效果,包括图标、系统推断结果以及一张背包卡片。">
E:\Repos\ai-native-visual-rpg\src\components\ItemCatalogEditor.tsx:673:<Section title="物品字段" description="编辑当前物品的覆盖字段。未修改的字段不会写入 override重置后会恢复自动生成值。">
E:\Repos\ai-native-visual-rpg\src\components\MapModal.tsx:202:<MudMapRoom scene={currentScenePreset} label="当前位置" compact />
E:\Repos\ai-native-visual-rpg\src\components\MapModal.tsx:239:<MudMapRoom scene={currentScenePreset} label="当前位置" compact />
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:718:label="当前 NPC"
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:743:label="种族"
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:754:label="肤色"
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:763:label="头部"
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:769:label="发型"
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:778:label="发色"
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:790:label="面部毛发"
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:811:label="面部毛发颜色"
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:828:label="头饰类型"
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:843:label="头饰文件"
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:852:label="头饰帧"
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:866:label="主手类型"
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:881:label="主手文件"
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:890:label="主手帧"
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:904:label="副手类型"
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:917:label="副手文件"
E:\Repos\ai-native-visual-rpg\src\components\NpcVisualEditor.tsx:926:label="副手帧"
E:\Repos\ai-native-visual-rpg\src\components\SelectionCustomizationModals.tsx:103:title="创建自定义世界"
E:\Repos\ai-native-visual-rpg\src\components\SelectionCustomizationModals.tsx:114:placeholder="例如:一个被古老机关城与修真宗门共同争夺的边境世界,灵气潮汐会周期性改写地形,玩家需要在多个势力之间周旋,寻找导致世界裂缝扩大的真正原因。"
E:\Repos\ai-native-visual-rpg\src\components\SelectionCustomizationModals.tsx:181:title="自定义角色背景"
E:\Repos\ai-native-visual-rpg\src\components\SelectionCustomizationModals.tsx:182:subtitle={`你正在修改 ${characterLabel} 的角色名称与背景故事。`}
E:\Repos\ai-native-visual-rpg\src\components\SelectionCustomizationModals.tsx:195:placeholder="输入新的角色名称"
E:\Repos\ai-native-visual-rpg\src\components\SelectionCustomizationModals.tsx:205:placeholder="写下这名角色进入世界前后的经历、动机、执念、秘密或人与人之间的纠葛。"
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1082:<SectionCard title="选项行为列表" description="选择一个选项行为,预览后编辑覆盖字段。">
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1126:<SectionCard title="快速模板" description="将类似的已实现行为应用到当前项目,以更快创建同类型行为。">
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1128:<SelectField label="模板" value={selectedTemplateId} onChange={setSelectedTemplateId} options={templateOptions.length > 0 ? templateOptions : [{value: '', label: '无模板'}]} disabled={templateOptions.length === 0} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1138:<SectionCard title="选项行为预览" description="下方预览会重建本地 GameState并回放真实选项流程包括战斗、逃跑、移动和空闲逻辑。">
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1140:<SelectField label="世界" value={worldType} onChange={value => setWorldType(value as WorldType)} options={Object.values(WorldType).map(value => ({value, label: WORLD_LABELS[value]}))} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1141:<SelectField label="角色" value={selectedCharacter.id} onChange={setSelectedCharacterId} options={PRESET_CHARACTERS.map(character => ({value: character.id, label: character.name}))} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1142:<SelectField label="场景" value={selectedScene.id} onChange={setSelectedSceneId} options={sceneOptions.map(scene => ({value: scene.id, label: scene.name}))} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1143:<SelectField label="敌对NPC资源" value={selectedMonster.id} onChange={setSelectedMonsterId} options={monsterOptions.map(monster => ({value: monster.id, label: monster.name}))} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1144:<SelectField label="空闲态目标" value={idlePreviewKind} onChange={value => setIdlePreviewKind(value as IdlePreviewKind)} options={IDLE_PREVIEW_OPTIONS} disabled={selectedDefinition.state === 'battle'} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1161:<SectionCard title="核心字段" description="状态与分类决定该行为何时可执行。">
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1163:<TextField label="行为 ID" value={selectedDefinition.id} onChange={() => undefined} disabled />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1165:label="状态"
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1177:<SelectField label="分类" value={selectedDefinition.category} onChange={value => updateDefinition({category: value as FunctionCategory})} options={CATEGORY_OPTIONS_BY_STATE[selectedDefinition.state].map(value => ({value, label: CATEGORY_LABELS[value]}))} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1178:<TextField label="按钮文案" value={selectedDefinition.text} onChange={value => updateDefinition({text: value})} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1179:<TextAreaField label="说明" value={selectedDefinition.description} onChange={value => updateDefinition({description: value})} rows={5} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1183:<SectionCard title="表现字段" description="这里只保留会影响真实流程的可编辑字段。">
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1185:<SelectField label="玩家动作" value={displayedPlayerAnimation} onChange={value => updateVisual('playerAnimation', value as AnimationState)} options={Object.values(AnimationState).map(value => ({value, label: value}))} disabled={playerVisualFieldsDisabled} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1186:<OptionalNumberField label="玩家位移距离" value={selectedDefinition.visual.playerMoveMeters} onChange={value => updateVisual('playerMoveMeters', value)} step={0.1} disabled={playerVisualFieldsDisabled} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1187:<OptionalNumberField label="玩家 Y 偏移" value={selectedDefinition.visual.playerOffsetY} onChange={value => updateVisual('playerOffsetY', value)} step={1} disabled={playerVisualFieldsDisabled} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1188:<SelectField label="玩家朝向" value={selectedDefinition.visual.playerFacing} onChange={value => updateVisual('playerFacing', value as FacingDirection)} options={FACING_OPTIONS.map(value => ({value, label: value === 'left' ? '朝左' : '朝右'}))} disabled={playerVisualFieldsDisabled} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1189:<SelectField label="滚动世界" value={selectedDefinition.visual.scrollWorld ? 'true' : 'false'} onChange={value => updateVisual('scrollWorld', value === 'true')} options={[{value: 'false', label: '否'}, {value: 'true', label: '是'}]} disabled={playerVisualFieldsDisabled} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1190:<TextAreaField label="敌对NPC反应文案" value={selectedDefinition.visual.monsterActionTemplate ?? ''} onChange={value => updateVisual('monsterActionTemplate', value || undefined)} rows={3} placeholder="可使用 {monster} 占位符" disabled={monsterVisualFieldsDisabled} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1191:<SelectField label="敌对NPC反应动画" value={selectedDefinition.visual.monsterAnimation ?? ''} onChange={value => updateVisual('monsterAnimation', (value || undefined) as FunctionVisualConfig['monsterAnimation'])} options={[{value: '', label: '无'}, ...MONSTER_ANIMATION_OPTIONS.map(value => ({value, label: value === 'idle' ? '待机' : value === 'move' ? '移动' : value === 'attack' ? '攻击' : value}))]} disabled={monsterVisualFieldsDisabled} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1192:<OptionalNumberField label="敌对NPC反应位移" value={selectedDefinition.visual.monsterMoveMeters} onChange={value => updateVisual('monsterMoveMeters', value)} step={0.1} disabled={monsterVisualFieldsDisabled} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1196:<SectionCard title="效果字段" description="这些数值会参与战斗计算、恢复、逃跑节奏与场景切换。">
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1198:<OptionalNumberField label="伤害倍率" value={selectedDefinition.effect.damageMultiplier} onChange={value => updateEffect('damageMultiplier', value)} step={0.05} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1199:<OptionalNumberField label="承伤倍率" value={selectedDefinition.effect.incomingDamageMultiplier} onChange={value => updateEffect('incomingDamageMultiplier', value)} step={0.05} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1200:<OptionalNumberField label="治疗量" value={selectedDefinition.effect.healAmount} onChange={value => updateEffect('healAmount', value)} step={1} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1201:<OptionalNumberField label="法力恢复" value={selectedDefinition.effect.manaRestore} onChange={value => updateEffect('manaRestore', value)} step={1} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1202:<OptionalNumberField label="额外冷却推进" value={selectedDefinition.effect.cooldownTickBonus} onChange={value => updateEffect('cooldownTickBonus', value)} step={1} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1203:<OptionalNumberField label="回合时长倍率" value={selectedDefinition.effect.turnTimeMultiplier} onChange={value => updateEffect('turnTimeMultiplier', value)} step={0.05} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1204:<OptionalNumberField label="逃跑持续时间(毫秒)" value={selectedDefinition.effect.escapeDurationMs} onChange={value => updateEffect('escapeDurationMs', value)} step={100} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1205:<OptionalNumberField label="逃跑距离" value={selectedDefinition.effect.escapeDistance} onChange={value => updateEffect('escapeDistance', value)} step={0.1} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1206:<OptionalNumberField label="敌对NPC追击起始滞后" value={selectedDefinition.effect.monsterLagStart} onChange={value => updateEffect('monsterLagStart', value)} step={0.01} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1207:<OptionalNumberField label="敌对NPC追击结束滞后" value={selectedDefinition.effect.monsterLagEnd} onChange={value => updateEffect('monsterLagEnd', value)} step={0.01} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1208:<OptionalNumberField label="场景偏移" value={selectedDefinition.effect.sceneShift} onChange={value => updateEffect('sceneShift', value)} step={1} />
E:\Repos\ai-native-visual-rpg\src\components\StateFunctionEditor.tsx:1209:<SelectField label="进入战斗" value={typeof selectedDefinition.effect.enterBattle === 'boolean' ? String(selectedDefinition.effect.enterBattle) : ''} onChange={value => updateEffect('enterBattle', value === '' ? undefined : value === 'true')} options={[{value: '', label: '未设置'}, {value: 'true', label: '是'}, {value: 'false', label: '否'}]} />