public List <BATTLESKILL_TRAINING> GetBattleSkillTrainingGroup(NkSoldierInfo SoldierData) { if (SoldierData == null) { return(null); } List <BATTLESKILL_TRAINING> list = new List <BATTLESKILL_TRAINING>(); string code = SoldierData.GetCharKindInfo().GetCode(); if (!this.mHash_BattleSkillTraining_CharName.ContainsKey(code)) { Debug.LogError("Cannot Find Skill : " + code); return(null); } List <BATTLESKILL_TRAINING> list2 = this.mHash_BattleSkillTraining_CharName[code]; if (list2 == null) { return(null); } for (int i = 0; i < list2.Count; i++) { if (list2[i].m_nSkillLevel == 1) { BATTLESKILL_BASE battleSkillBase = this.GetBattleSkillBase(list2[i].m_nSkillUnique); if (battleSkillBase != null) { if (battleSkillBase.m_nSkilNeedWeapon > 0) { if (SoldierData.CheckNeedWeaponType(battleSkillBase.m_nSkilNeedWeapon)) { list.Add(list2[i]); } } else if (SoldierData.CheckNeedWeaponType(SoldierData.GetWeaponType())) { list.Add(list2[i]); } } } } if (list.Count == 0) { return(null); } return(list); }
public MYTHSKILL_TRAINING GetMythSkillTrainingData(NkSoldierInfo SoldierData) { if (SoldierData == null) { return(null); } string code = SoldierData.GetCharKindInfo().GetCode(); foreach (int current in this.m_hashMythSkillTraining.Keys) { foreach (KeyValuePair <int, MYTHSKILL_TRAINING> current2 in this.m_hashMythSkillTraining[current]) { for (int i = 0; i < 20; i++) { if (!(code != current2.Value.m_strCharCode[i])) { if (current2.Value.m_i32SkillLevel == 1) { BATTLESKILL_BASE battleSkillBase = this.GetBattleSkillBase(current2.Value.m_i32SkillUnique); if (battleSkillBase != null) { if (battleSkillBase.m_nMythSkillType == 1) { int battleskillNeedWeapon; if (battleSkillBase.m_nSkilNeedWeapon > 0) { battleskillNeedWeapon = battleSkillBase.m_nSkilNeedWeapon; } else { battleskillNeedWeapon = SoldierData.GetWeaponType(); } if (SoldierData.CheckNeedWeaponType(battleskillNeedWeapon)) { return(current2.Value); } } } } } } } } return(null); }