This commit is contained in:
2026-04-29 20:56:59 +08:00
parent fb6f455530
commit 730f485f48
200 changed files with 9881 additions and 2221 deletions

View File

@@ -41,12 +41,12 @@ import type {
WorldType,
} from '../../types';
import {
CHROME_ICONS,
getInventoryItemVisualSrc,
getNineSliceStyle,
UI_CHROME,
} from '../../uiAssets';
import { HostileNpcAnimator } from '../HostileNpcAnimator';
import { PixelCloseButton } from '../PixelCloseButton';
import { PixelIcon } from '../PixelIcon';
type AdventureStatisticCard = {
@@ -961,13 +961,7 @@ export function RpgAdventurePanelOverlays({
</div>
</div>
<button
type="button"
onClick={closeGoalPanel}
className="absolute right-4 top-3 p-1 text-zinc-400 transition-colors hover:text-white sm:right-5 sm:top-4"
>
<PixelIcon src={CHROME_ICONS.close} className="h-4 w-4" />
</button>
<PixelCloseButton onClick={closeGoalPanel} label="关闭任务更新" />
</div>
<div className="min-h-0 flex-1 overflow-y-auto p-4 scrollbar-hide">
@@ -1037,13 +1031,10 @@ export function RpgAdventurePanelOverlays({
退
</div>
</div>
<button
type="button"
<PixelCloseButton
onClick={() => setIsSettingsPanelOpen(false)}
className="absolute right-4 top-3 p-1 text-zinc-400 transition-colors hover:text-white sm:right-5 sm:top-4"
>
<PixelIcon src={CHROME_ICONS.close} className="h-4 w-4" />
</button>
label="关闭冒险设置"
/>
</div>
<div className="min-h-0 flex-1 space-y-4 overflow-y-auto p-4">
@@ -1162,13 +1153,10 @@ export function RpgAdventurePanelOverlays({
: {statistics.currentSceneName}
</div>
</div>
<button
type="button"
<PixelCloseButton
onClick={() => setIsStatsPanelOpen(false)}
className="absolute right-4 top-3 p-1 text-zinc-400 transition-colors hover:text-white sm:right-5 sm:top-4"
>
<PixelIcon src={CHROME_ICONS.close} className="h-4 w-4" />
</button>
label="关闭冒险统计"
/>
</div>
<div className="min-h-0 flex-1 space-y-4 overflow-y-auto p-4">
@@ -1244,16 +1232,13 @@ export function RpgAdventurePanelOverlays({
: {quests.length}
</div>
</div>
<button
type="button"
<PixelCloseButton
onClick={() => {
setIsQuestPanelOpen(false);
setSelectedQuestId(null);
}}
className="absolute right-4 top-3 p-1 text-zinc-400 transition-colors hover:text-white sm:right-5 sm:top-4"
>
<PixelIcon src={CHROME_ICONS.close} className="h-4 w-4" />
</button>
label="关闭任务日志"
/>
</div>
<div className="flex-1 overflow-y-auto p-3 scrollbar-hide">
@@ -1352,13 +1337,10 @@ export function RpgAdventurePanelOverlays({
{selectedQuest.issuerNpcName}
</div>
</div>
<button
type="button"
<PixelCloseButton
onClick={() => setSelectedQuestId(null)}
className="absolute right-4 top-3 p-1 text-zinc-400 transition-colors hover:text-white sm:right-5 sm:top-4"
>
<PixelIcon src={CHROME_ICONS.close} className="h-4 w-4" />
</button>
label="关闭任务详情"
/>
</div>
<div className="min-h-0 flex-1 space-y-4 overflow-y-auto p-4 scrollbar-hide sm:p-5">
@@ -1543,18 +1525,15 @@ export function RpgAdventurePanelOverlays({
{rewardQuest.title}
</div>
</div>
<button
type="button"
<PixelCloseButton
onClick={() => {
setRewardQuestId(null);
setRewardQuestHandoff(null);
setSelectedRewardItemId(null);
setSelectedRewardItemQuestId(null);
}}
className="absolute right-4 top-3 p-1 text-zinc-400 transition-colors hover:text-white sm:right-5 sm:top-4"
>
<PixelIcon src={CHROME_ICONS.close} className="h-4 w-4" />
</button>
label="关闭任务奖励"
/>
</div>
<div className="min-h-0 flex-1 overflow-y-auto p-4">
@@ -1621,16 +1600,13 @@ export function RpgAdventurePanelOverlays({
: {battleReward.defeatedHostileNpcs.length}
</div>
</div>
<button
type="button"
<PixelCloseButton
onClick={() => {
battleRewardUi.dismiss();
setSelectedBattleRewardItemId(null);
}}
className="absolute right-4 top-3 p-1 text-zinc-400 transition-colors hover:text-white sm:right-5 sm:top-4"
>
<PixelIcon src={CHROME_ICONS.close} className="h-4 w-4" />
</button>
label="关闭战斗奖励"
/>
</div>
<div className="min-h-0 flex-1 space-y-4 overflow-y-auto p-4">
@@ -1716,17 +1692,14 @@ export function RpgAdventurePanelOverlays({
{selectedRewardItem.category}
</div>
</div>
<button
type="button"
<PixelCloseButton
onClick={() => {
setSelectedRewardItemId(null);
setSelectedRewardItemQuestId(null);
setSelectedBattleRewardItemId(null);
}}
className="absolute right-4 top-3 p-1 text-zinc-400 transition-colors hover:text-white sm:right-5 sm:top-4"
>
<PixelIcon src={CHROME_ICONS.close} className="h-4 w-4" />
</button>
label="关闭奖励物品"
/>
</div>
<div className="min-h-0 flex-1 space-y-4 overflow-y-auto p-4">

View File

@@ -203,7 +203,6 @@ export function RpgRuntimePanelRouter({
activeBuildBuffs={visibleGameState.activeBuildBuffs}
companionRenderStates={companionRenderStates}
npcStates={visibleGameState.npcStates}
quests={visibleGameState.quests}
companionArcStates={
visibleGameState.storyEngineMemory?.companionArcStates ?? []
}
@@ -292,9 +291,6 @@ export function RpgRuntimePanelRouter({
onCraftRecipe={inventoryUi.craftRecipe}
onDismantleItem={inventoryUi.dismantleItem}
onReforgeItem={inventoryUi.reforgeItem}
continueGameDigest={
visibleGameState.storyEngineMemory?.continueGameDigest ?? null
}
narrativeCodex={
visibleGameState.storyEngineMemory?.narrativeCodex ?? []
}