2022-12-07 09:47:46 +00:00
|
|
|
import { sys } from "cc";
|
|
|
|
import { UserData } from "../Game/Data/UserData";
|
|
|
|
|
|
|
|
export class SaveSystem {
|
2023-01-12 14:30:44 +00:00
|
|
|
private userDataIdentifier = "user-dseeee";
|
2022-12-07 09:47:46 +00:00
|
|
|
public save(userData: UserData): void {
|
|
|
|
sys.localStorage.setItem(this.userDataIdentifier, JSON.stringify(userData));
|
|
|
|
}
|
|
|
|
|
|
|
|
public load(): UserData {
|
|
|
|
const data: string = sys.localStorage.getItem(this.userDataIdentifier);
|
|
|
|
|
|
|
|
if (!data) return new UserData();
|
|
|
|
|
|
|
|
try {
|
2022-12-14 08:17:11 +00:00
|
|
|
// TODO: the data can be corrupted if we introduce a new field in UserData
|
2022-12-07 09:47:46 +00:00
|
|
|
return <UserData>JSON.parse(data);
|
|
|
|
} catch (error) {
|
|
|
|
return new UserData();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|