using CodeStage.AntiCheat.ObscuredTypes; using Newtonsoft.Json; using System; using System.Collections.Generic; [Serializable] public class RelicUpgradeCostTableData : TableDataBase { ObscuredInt _RelicLv; public int n_RelicLv { get { return _RelicLv; } set { _RelicLv = value; _RelicLv.RandomizeCryptoKey(); } } // 유물 레벨 ObscuredInt _RequirePiece; public int n_RequirePiece { get { return _RequirePiece; } set { _RequirePiece = value; _RequirePiece.RandomizeCryptoKey(); } } // 요구 조각 수 ObscuredInt _RequireGrade1; public int n_RequireGrade1 { get { return _RequireGrade1; } set { _RequireGrade1 = value; _RequireGrade1.RandomizeCryptoKey(); } } // 요구 등급 1 ObscuredInt _RequireGrade2; public int n_RequireGrade2 { get { return _RequireGrade2; } set { _RequireGrade2 = value; _RequireGrade2.RandomizeCryptoKey(); } } // 요구 등급 2 ObscuredInt _RequireGrade3; public int n_RequireGrade3 { get { return _RequireGrade3; } set { _RequireGrade3 = value; _RequireGrade3.RandomizeCryptoKey(); } } // 요구 등급 3 ObscuredInt _RequireGrade4; public int n_RequireGrade4 { get { return _RequireGrade4; } set { _RequireGrade4 = value; _RequireGrade4.RandomizeCryptoKey(); } } // 요구 등급 4 public Dictionary dic_cost = new Dictionary(); public int Get_Price(int grade) { return n_RequirePiece + dic_cost[grade]; } } public class table_relicupgradecost : table_missionbase { public static table_relicupgradecost Ins; List tableDatas; public ObscuredInt MaxLv; protected override void Awake() { base.Awake(); Ins = this; } protected override void Start() { tableDatas = JsonConvert.DeserializeObject>(json_last); for (int i = 0; i < Get_DataList().Count; i++) { var temp = Get_DataList()[i]; temp.dic_cost.Add(6, temp.n_RequireGrade1); temp.dic_cost.Add(7, temp.n_RequireGrade2); temp.dic_cost.Add(8, temp.n_RequireGrade3); temp.dic_cost.Add(9, temp.n_RequireGrade4); if (temp.n_RelicLv > MaxLv) MaxLv = temp.n_RelicLv; } MaxLv.RandomizeCryptoKey(); base.Start(); } public int Get_MaxLv() { MaxLv.RandomizeCryptoKey(); return MaxLv; } public RelicUpgradeCostTableData Get_Data(int lv) { return Get_DataList().Find(f => f.n_RelicLv == lv); } public List Get_DataList() { return tableDatas; } }