50 lines
1.2 KiB
C#
50 lines
1.2 KiB
C#
using System;
|
|
using System.IO;
|
|
using UnityEngine;
|
|
|
|
public static class DailyTaskSaveService
|
|
{
|
|
private static string SaveFilePath
|
|
{
|
|
get { return Path.Combine(Application.persistentDataPath, "daily_tasks.json"); }
|
|
}
|
|
|
|
public static DailyTaskSaveData Load()
|
|
{
|
|
if (!File.Exists(SaveFilePath))
|
|
{
|
|
return new DailyTaskSaveData();
|
|
}
|
|
|
|
try
|
|
{
|
|
var json = File.ReadAllText(SaveFilePath);
|
|
var data = JsonUtility.FromJson<DailyTaskSaveData>(json);
|
|
return data ?? new DailyTaskSaveData();
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
Debug.LogWarning($"[DailyTaskSaveService] Load failed: {ex.Message}");
|
|
return new DailyTaskSaveData();
|
|
}
|
|
}
|
|
|
|
public static void Save(DailyTaskSaveData data)
|
|
{
|
|
if (data == null)
|
|
{
|
|
return;
|
|
}
|
|
|
|
try
|
|
{
|
|
var json = JsonUtility.ToJson(data, true);
|
|
File.WriteAllText(SaveFilePath, json);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
Debug.LogWarning($"[DailyTaskSaveService] Save failed: {ex.Message}");
|
|
}
|
|
}
|
|
}
|