/// <summary> /// Gets a skill by its ID or its name /// </summary> /// <param name="name"></param> /// <returns></returns> public static StaticSkill GetSkill(SerializablePlanEntry serial) { // Try get skill by its ID StaticSkill skill = StaticSkills.GetSkillById(serial.ID); // We failed? Try get skill by its name if (skill == null) { skill = StaticSkills.GetSkillByName(serial.SkillName); } return(skill); }
/// <summary> /// Gets the skills for each race. /// </summary> /// <returns></returns> private List <SerializableCharacterSkill> GetSkillsForRace() { var skills = new List <SerializableCharacterSkill>(); var startingSkills = new Dictionary <int, int>(); switch (m_race) { case Race.Amarr: startingSkills = s_allRaceSkills.Concat(s_amarrRaceSkills).ToDictionary(x => x.Key, x => x.Value); break; case Race.Caldari: startingSkills = s_allRaceSkills.Concat(s_caldariRaceSkills).ToDictionary(x => x.Key, x => x.Value); break; case Race.Gallente: startingSkills = s_allRaceSkills.Concat(s_gallenteRaceSkills).ToDictionary(x => x.Key, x => x.Value); break; case Race.Minmatar: startingSkills = s_allRaceSkills.Concat(s_minmatarRaceSkills).ToDictionary(x => x.Key, x => x.Value); break; } foreach (var raceSkill in startingSkills) { var staticSkill = StaticSkills.GetSkillById(raceSkill.Key); if (staticSkill == null) { continue; } var skill = new SerializableCharacterSkill() { ID = raceSkill.Key, Level = raceSkill.Value, Name = StaticSkills.GetSkillById(raceSkill.Key).Name, Skillpoints = StaticSkills.GetSkillById(raceSkill.Key).GetPointsRequiredForLevel(raceSkill.Value), IsKnown = true, OwnsBook = false, }; skills.Add(skill); } return(skills); }
/// <summary> /// Gets the skill name by its ID. /// </summary> /// <param name="id"></param> /// <returns></returns> private static string GetSkillName(int id) { StaticSkill skill = StaticSkills.GetSkillById(id); return(skill != null ? skill.Name : String.Empty); }