import { JsonAsset, sys } from "cc"; // 定义今天的数据类 export class LocalTodayData { private _todayData: TodayData; constructor() { let defaultData: TodayData = { lookVedionum: 0, isUnlockAll: false, UnLockAllTimes: 0 } this._todayData = sys.localStorage.getItem("todayData") ? Object.assign(defaultData, JSON.parse(sys.localStorage.getItem("todayData"))) : defaultData } get todayData(): TodayData { return this._todayData; } set todayData(data: Partial) { Object.assign(this._todayData, data); this.saveTodayData(); } // 获取用户数据 getTodayData(): TodayData { return this._todayData; } // 设置用户数据 setTodayData(data: Partial): void { Object.assign(this._todayData, data); this.saveTodayData(); } // 保存用户数据到本地存储 public saveTodayData(): void { sys.localStorage.setItem("todayData", JSON.stringify(this._todayData)); } } export const Today = new LocalTodayData(); // 定义用户数据管理类 export class LocalDataMgr { private _userData: UserData; private _lixiantime: number; private _lixiantime2: string; constructor() { this.lixianTime2 = "" let defaultData: UserData = { unlockUnits: [], sound: true, music: true, openid: "demo", leveltime: 120 } this._userData = sys.localStorage.getItem("userData") ? Object.assign(defaultData, JSON.parse(sys.localStorage.getItem("userData"))) : defaultData this.lixianTime = sys.localStorage.getItem("lixianTime") || 0 } get lixianTime() { return this._lixiantime } set lixianTime(time: number) { this._lixiantime = time sys.localStorage.setItem("lixianTime", time) } get lixianTime2() { return this._lixiantime2 } set lixianTime2(time: string) { this._lixiantime2 = time sys.localStorage.setItem("lixianTime2", time) } get userData(): UserData { return this._userData; } // 获取用户数据 getUserData(): UserData { return this._userData; } // 设置用户数据 setUserData(data: Partial): void { Object.assign(this._userData, data) this.saveUserData(); } // 保存用户数据到本地存储 saveUserData(): void { sys.localStorage.setItem("userData", JSON.stringify(this._userData)); } startgametime: number = 0; entergametime: number = 0 } export const User = new LocalDataMgr(); export interface usercards { id: number, level: number, num: number } // 用户数据接口 export interface UserData { unlockUnits: Array; sound: boolean; music: boolean; openid: string; leveltime: number; } export interface TodayData { lookVedionum: number; isUnlockAll: boolean; UnLockAllTimes: number; }