using System.Collections.Generic; using TinyJSON; using System.IO; using System; using System.Runtime.Serialization.Formatters.Binary; using System.Runtime.Serialization; public class DKEnchant_Data_LLowData { [Serializable] public class DataInfo { public uint Id; public byte Enchant; public uint Dmg; public uint RandomDmg; public uint AddStr; public uint AddDex; public uint AddCon; public uint AddInt; public uint AddWiz; public uint AddHp; public uint AddMp; public uint HealingHp; public uint HealingMp; public uint AddSp; public uint Mr; public uint Def; public uint AddDmg; public uint AddHit; public uint DmgReduction; public uint WaterAtk; public uint WindAtk; public uint FireAtk; public uint EarthAtk; public uint HollyAtk; public uint HollyReg; public uint WaterReg; public uint WindReg; public uint FireReg; public uint EarthReg; public uint StunReg; public uint HpPotionRecover; public uint HpPotionRecoverPer; public uint RegistRecoverReductionPer; public short UndeadDmg; public uint AddExp; } public static List DataInfoList = new List (); static public void LoadLowData() { try { if (LowDataMgr.instance.bLoadByJson) { Variant jsonData = JsonLoader.instance.LoadJsonFile("DKEnchant_Data_L.json"); Variant data = jsonData["data"]; foreach( var item in data as ProxyArray) { DataInfo dataInfo = new DataInfo(); JSON.MakeInto(item, out dataInfo); DataInfoList.Add(dataInfo); } } else { IFormatter formatter = new BinaryFormatter(); Stream streamRead = JsonLoader.instance.LoadFileStream("DKEnchant_Data_L.bin"); DataInfoList = (List)formatter.Deserialize(streamRead); streamRead.Close(); } } catch(System.Exception) { throw new System.Exception("DKEnchant_Data_L"); } } static public void Serialize() { if (DataInfoList != null) { IFormatter formatter = new BinaryFormatter(); Stream streamWrite = JsonLoader.instance.SaveFileStream("DKEnchant_Data_L.bin"); formatter.Serialize(streamWrite, DataInfoList); streamWrite.Close(); } } }