Files

203 lines
5.9 KiB
C#
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using System.Collections.Generic;
using System.IO;
using Newtonsoft.Json;
using SGModule.Common.Extensions;
using UnityEngine;
namespace RedHotRoast
{
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;
// }
_saveObject = DataMgr.SaveObject.Value;
}
return _saveObject;
}
public static void SaveDataFunc()
{
DataMgr.SaveObject.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<Passportrewards>().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<Passportrewards>().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<PassingTask>().Count; i++)
{
if (GameHelper.GetLevel() > ConfigSystem.GetConfig<PassingTask>()[i].tol_num)
{
if (!list.Contains(ConfigSystem.GetConfig<PassingTask>()[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<Durationtasks>().Count; i++)
{
if (GameHelper.GetGameTime() >= ConfigSystem.GetConfig<Durationtasks>()[i].tol_num * 60)
{
if (!list.Contains(ConfigSystem.GetConfig<Durationtasks>()[i].id)) return true;
}
}
return false;
}
public static bool AdTaskred()
{
List<int> list = SaveData.GetSaveObject().ad_task_record;
for (int i = 0; i < ConfigSystem.GetConfig<ADTask>().Count; i++)
{
if (DataMgr.VideoWatchCount.Value >= ConfigSystem.GetConfig<ADTask>()[i].tol_num)
{
if (!list.Contains(ConfigSystem.GetConfig<ADTask>()[i].id)) return true;
}
}
return false;
}
public static bool getRed()
{
return battlepassred();
}
public static float pay_time = 0;
public static float rm_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 int[] _goldtime;
public bool have_slot;
public int battle_pass_time;
public int _watch_ad_cd;
public List<int> pass_task_record = new List<int>();
public List<int> time_task_record = new List<int>();
public List<int> ad_task_record = new List<int>();
/// <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 login_day;
public int login_hour;
public int ch_people;
public float ch_people_1;
public float ch_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;
public int remove_ad_time;
public int this_time_cardtype;
public int[] dark_Dayref;
public ApplePayClass max_pay_object;
public List<SaveingPotClass> saveingpot_history = new List<SaveingPotClass>();
public float saveingpot_ch;
public float last_saveingpot_ch;
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;
public string attribution = "null";
public int watchRewardADnumbers;
public double watchRewardAD_value;
public int LargeRewardNum;
public int InterstitialPLayNum;
public int TurnOffNumbers;
public int TurnOffDay;
public long TurnOffTime;
public int crush_egg_time;
}
}