feat: 新增NPC与外交逻辑,优化UI组件结构

重构并精简了部分UI组件,移除冗余弹窗与详情组件,新增NPC相关逻辑(npcBehaviorLogic、npcGrowthLogic、npcStore等)及外交逻辑(diplomaticLogic、DiplomacyView)。完善分页、标签、复选框等通用UI组件。优化战报弹窗,调整README下载链接为相对路径,修复部分国际化内容。
This commit is contained in:
谦君
2025-12-15 08:23:45 +08:00
parent 44580909a3
commit 9b9fda0400
164 changed files with 18628 additions and 2775 deletions

23
src/stores/npcStore.ts Normal file
View File

@@ -0,0 +1,23 @@
import { defineStore } from 'pinia'
import type { NPC } from '@/types/game'
import pkg from '../../package.json'
import { encryptData, decryptData } from '@/utils/crypto'
/**
* NPC Store
* 存储和管理所有NPC数据
*/
export const useNPCStore = defineStore('npc', {
state: () => ({
npcs: [] as NPC[],
lastGrowthCheck: {} as Record<string, number> // npcId -> timestamp
}),
persist: {
key: `${pkg.name}-npcs`,
storage: localStorage,
serializer: {
serialize: state => encryptData(state),
deserialize: value => decryptData(value)
}
}
})