2026-04-20 13:49:36 +08:00
|
|
|
|
using System.Collections;
|
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
|
using System.IO;
|
2026-05-08 11:03:00 +08:00
|
|
|
|
using Castle.Core.Internal;
|
2026-04-20 13:49:36 +08:00
|
|
|
|
using Newtonsoft.Json;
|
|
|
|
|
|
using UnityEngine;
|
|
|
|
|
|
namespace BingoBrain
|
|
|
|
|
|
{
|
|
|
|
|
|
public class SaveData
|
|
|
|
|
|
{
|
|
|
|
|
|
public static Saveobject saveobject;
|
|
|
|
|
|
public static Saveobject GetSaveobject()
|
|
|
|
|
|
{
|
|
|
|
|
|
if (saveobject == null)
|
|
|
|
|
|
{
|
|
|
|
|
|
if (File.Exists(jsonFilePath))
|
|
|
|
|
|
{
|
|
|
|
|
|
string jsonstr = File.ReadAllText(jsonFilePath);
|
|
|
|
|
|
saveobject = JsonConvert.DeserializeObject<Saveobject>(jsonstr);
|
|
|
|
|
|
return saveobject;
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
saveobject = new Saveobject();
|
|
|
|
|
|
return saveobject;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
else return saveobject;
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private static string jsonFilePath = Path.Combine(Application.persistentDataPath, "savedata22.json");
|
|
|
|
|
|
|
|
|
|
|
|
public static void saveDataFunc()
|
|
|
|
|
|
{
|
2026-05-08 11:03:00 +08:00
|
|
|
|
if (saveobject == null) return;
|
2026-04-20 13:49:36 +08:00
|
|
|
|
string save = JsonConvert.SerializeObject(saveobject);
|
2026-05-08 11:03:00 +08:00
|
|
|
|
if (save.IsNullOrEmpty()) return;
|
|
|
|
|
|
if (save == null || save == "") return;
|
2026-04-20 13:49:36 +08:00
|
|
|
|
if (File.Exists(jsonFilePath)) File.Delete(jsonFilePath);
|
|
|
|
|
|
File.WriteAllText(jsonFilePath, save);
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
public static bool battlepassred()
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
int pass_level = GameHelper.getBattleLv();
|
|
|
|
|
|
List<int> freelist = SaveData.GetSaveobject().battle_pass_freelist;
|
|
|
|
|
|
for (int i = 1; i <= ConfigSystem.GetConfig<PassportrewardsModel>().dataList.Count; i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
if (pass_level >= i)
|
|
|
|
|
|
{
|
|
|
|
|
|
if (!freelist.Contains(i))
|
|
|
|
|
|
{
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
if (SaveData.GetSaveobject().is_get_battlepass)
|
|
|
|
|
|
{
|
|
|
|
|
|
List<int> paylist = SaveData.GetSaveobject().battle_pass_paylist;
|
|
|
|
|
|
for (int i = 1; i <= ConfigSystem.GetConfig<PassportrewardsModel>().dataList.Count; i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
if (pass_level >= i)
|
|
|
|
|
|
{
|
|
|
|
|
|
if (!paylist.Contains(i))
|
|
|
|
|
|
{
|
|
|
|
|
|
return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public static bool passtaskred()
|
|
|
|
|
|
{
|
|
|
|
|
|
List<int> list = SaveData.GetSaveobject().pass_task_record;
|
|
|
|
|
|
for (int i = 0; i < ConfigSystem.GetConfig<PassingTaskModel>().dataList.Count; i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
if (GameHelper.GetLevel() > ConfigSystem.GetConfig<PassingTaskModel>().dataList[i].tol_num)
|
|
|
|
|
|
{
|
|
|
|
|
|
if (!list.Contains(ConfigSystem.GetConfig<PassingTaskModel>().dataList[i].id)) return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
public static bool timetaskred()
|
|
|
|
|
|
{
|
|
|
|
|
|
List<int> list = SaveData.GetSaveobject().time_task_record;
|
|
|
|
|
|
for (int i = 0; i < ConfigSystem.GetConfig<DurationtasksModel>().dataList.Count; i++)
|
|
|
|
|
|
{
|
|
|
|
|
|
if (GameHelper.GetGameTime() >= ConfigSystem.GetConfig<DurationtasksModel>().dataList[i].tol_num * 60)
|
|
|
|
|
|
{
|
|
|
|
|
|
if (!list.Contains(ConfigSystem.GetConfig<DurationtasksModel>().dataList[i].id)) return true;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
public static bool getRed()
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
return battlepassred() || timetaskred() || passtaskred();
|
|
|
|
|
|
}
|
|
|
|
|
|
public static float pay_time = 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public class Saveobject
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public bool is_get_battlepass = false;
|
|
|
|
|
|
public List<int> battle_pass_freelist = new List<int>();
|
|
|
|
|
|
public List<int> battle_pass_paylist = new List<int>();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public int _goldtime0;
|
|
|
|
|
|
public int _goldtime1;
|
|
|
|
|
|
public int _goldtime2;
|
|
|
|
|
|
public int _goldtime3;
|
|
|
|
|
|
public int _goldtime4;
|
|
|
|
|
|
public bool have_slot;
|
|
|
|
|
|
public int battle_pass_time;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public List<int> pass_task_record = new List<int>();
|
|
|
|
|
|
public List<int> time_task_record = new List<int>();
|
|
|
|
|
|
public int login_day;
|
|
|
|
|
|
public int login_hour;
|
|
|
|
|
|
public int cash_people;
|
|
|
|
|
|
public float cash_people_1;
|
|
|
|
|
|
public float cash_people_2;
|
|
|
|
|
|
|
|
|
|
|
|
public bool is_get_packreward;
|
|
|
|
|
|
|
|
|
|
|
|
public bool is_get_removead;
|
|
|
|
|
|
public bool is_autopack_show;
|
|
|
|
|
|
public int is_autopack_show_day;
|
|
|
|
|
|
|
|
|
|
|
|
public long start_time;
|
|
|
|
|
|
public int clear_number;
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 每一局使用道具数量([0]:out [1]:back [2]:refresh)
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
public int[] usePropsNum = new int[3];
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 卡牌层数
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
public int card_layer;
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 卡牌总数量
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
public int all_card_numbers;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public int this_time_cardtype;
|
|
|
|
|
|
public int look_ad_numbers;
|
|
|
|
|
|
public int look_ad_time;
|
|
|
|
|
|
public int[] dark_Dayref;
|
|
|
|
|
|
public int[] _goldtime;
|
2026-05-08 11:03:00 +08:00
|
|
|
|
// public MaxPayClass max_pay_object;
|
2026-04-20 13:49:36 +08:00
|
|
|
|
|
|
|
|
|
|
public List<SaveingPotClass> saveingpot_history = new List<SaveingPotClass>();
|
2026-05-08 11:03:00 +08:00
|
|
|
|
|
2026-04-20 13:49:36 +08:00
|
|
|
|
|
|
|
|
|
|
public long failed_pack_time;
|
|
|
|
|
|
public int three_gift_got_index = 1;
|
|
|
|
|
|
public long last_got_three_gift_time = 0;
|
|
|
|
|
|
public bool is_get_ThreeDaysGift;
|
2026-05-08 11:03:00 +08:00
|
|
|
|
//tixian
|
|
|
|
|
|
public int ExchangeProcessMode = -1;
|
|
|
|
|
|
public int CHProcessMode = -1;
|
|
|
|
|
|
public int chout_lv;
|
|
|
|
|
|
public int ch_people;
|
|
|
|
|
|
public float ch_people_1;
|
|
|
|
|
|
public float ch_people_2;
|
|
|
|
|
|
public int _watch_ad_cd;
|
|
|
|
|
|
public float saveingpot_ch;
|
|
|
|
|
|
public float last_saveingpot_ch;
|
|
|
|
|
|
public int ExchangeModeToggle = 1;
|
2026-05-09 18:00:33 +08:00
|
|
|
|
public int PettyState;
|
|
|
|
|
|
public string PettyAccount;
|
|
|
|
|
|
public string PettyFirstName;
|
|
|
|
|
|
public string PettyLastName;
|
|
|
|
|
|
|
|
|
|
|
|
public int PettyAmount;
|
|
|
|
|
|
public string PettyOrderID;
|
|
|
|
|
|
public string PettyDateTime;
|
|
|
|
|
|
public int PettyDataLimit;
|
2026-04-20 13:49:36 +08:00
|
|
|
|
}
|
|
|
|
|
|
}
|