99 lines
3.0 KiB
C#
99 lines
3.0 KiB
C#
using System.Collections.Generic;
|
|
using CodeStage.AntiCheat.ObscuredTypes;
|
|
using Newtonsoft.Json;
|
|
|
|
public class SkillAwakenConfigTableData : TableDataBase
|
|
{
|
|
// 각성 스킬의 인덱스
|
|
ObscuredInt _SkillID;
|
|
public int n_SkillID
|
|
{
|
|
get { return _SkillID; }
|
|
set { _SkillID = value; _SkillID.RandomizeCryptoKey(); }
|
|
}
|
|
|
|
// 각성 단계
|
|
ObscuredInt _AwakenStep;
|
|
public int n_AwakenStep
|
|
{
|
|
get { return _AwakenStep; }
|
|
set { _AwakenStep = value; _AwakenStep.RandomizeCryptoKey(); }
|
|
}
|
|
|
|
// 적용할 특성 값1
|
|
ObscuredFloat _ExtraValue1;
|
|
public float f_ExtraValue1
|
|
{
|
|
get { return _ExtraValue1; }
|
|
set { _ExtraValue1 = value; _ExtraValue1.RandomizeCryptoKey(); }
|
|
}
|
|
|
|
// 적용할 특성 값2
|
|
ObscuredFloat _ExtraValue2;
|
|
public float f_ExtraValue2
|
|
{
|
|
get { return _ExtraValue2; }
|
|
set { _ExtraValue2 = value; _ExtraValue2.RandomizeCryptoKey(); }
|
|
}
|
|
|
|
// 적용할 특성 값3
|
|
ObscuredFloat _ExtraValue3;
|
|
public float f_ExtraValue3
|
|
{
|
|
get { return _ExtraValue3; }
|
|
set { _ExtraValue3 = value; _ExtraValue3.RandomizeCryptoKey(); }
|
|
}
|
|
|
|
// 각성 단계 별 효과 설명
|
|
ObscuredInt _AwakenDesc;
|
|
public int n_AwakenDesc
|
|
{
|
|
get { return _AwakenDesc; }
|
|
set { _AwakenDesc = value; _AwakenDesc.RandomizeCryptoKey(); }
|
|
}
|
|
|
|
public string Get_Desc() { return table_localtext.Ins.Get_Text(n_AwakenDesc); }
|
|
}
|
|
|
|
public class table_skillawakenconfig : table_missionbase
|
|
{
|
|
public static table_skillawakenconfig Ins;
|
|
List<SkillAwakenConfigTableData> tableDatas;
|
|
Dictionary<int, List<SkillAwakenConfigTableData>> dic_datas = new Dictionary<int, List<SkillAwakenConfigTableData>>();
|
|
Dictionary<(int, int), SkillAwakenConfigTableData> dic_Data = new Dictionary<(int, int), SkillAwakenConfigTableData>();
|
|
|
|
protected override void Awake()
|
|
{
|
|
base.Awake();
|
|
Ins = this;
|
|
}
|
|
|
|
protected override void Start()
|
|
{
|
|
tableDatas = JsonConvert.DeserializeObject<List<SkillAwakenConfigTableData>>(json_last);
|
|
for (int i = 0; i < Get_DataList().Count; i++)
|
|
{
|
|
var temp = Get_DataList()[i];
|
|
if (!dic_datas.ContainsKey(temp.n_SkillID))
|
|
dic_datas.Add(temp.n_SkillID, new List<SkillAwakenConfigTableData>());
|
|
dic_datas[temp.n_SkillID].Add(temp);
|
|
dic_Data.Add((temp.n_SkillID, temp.n_AwakenStep), temp);
|
|
}
|
|
|
|
base.Start();
|
|
}
|
|
|
|
public List<SkillAwakenConfigTableData> Get_DataList() { return tableDatas; }
|
|
public List<SkillAwakenConfigTableData> Get_DataList(int skillid) { return dic_datas[skillid]; }
|
|
public SkillAwakenConfigTableData Get_Data_orNull(int skillid, int step)
|
|
{
|
|
var key = (skillid, step);
|
|
return dic_Data.ContainsKey(key) ? dic_Data[key] : null;
|
|
}
|
|
public float Get_AwakenValue(int skillid, int step)
|
|
{
|
|
var data = Get_Data_orNull(skillid, step);
|
|
return DSUtil.CheckNull(data) ? 0f : data.f_ExtraValue1;
|
|
}
|
|
}
|