Files
ogame-vue-ts/src/stores/npcStore.ts
谦君 9b9fda0400 feat: 新增NPC与外交逻辑,优化UI组件结构
重构并精简了部分UI组件,移除冗余弹窗与详情组件,新增NPC相关逻辑(npcBehaviorLogic、npcGrowthLogic、npcStore等)及外交逻辑(diplomaticLogic、DiplomacyView)。完善分页、标签、复选框等通用UI组件。优化战报弹窗,调整README下载链接为相对路径,修复部分国际化内容。
2025-12-15 08:23:45 +08:00

24 lines
587 B
TypeScript

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)
}
}
})