/// <summary> /// Gets a skill by its ID or its name. /// </summary> /// <param name="serial">The serial.</param> /// <returns></returns> private static StaticSkill GetSkill(SerializablePlanEntry serial) { // Try get skill by its ID StaticSkill skill = StaticSkills.GetSkillByID(serial.ID) ?? StaticSkills.GetSkillByName(serial.SkillName); // We failed? Try get skill by its name return(skill); }
/// <summary> /// Constructor from the API. /// </summary> /// <param name="src"></param> internal ResearchPoint(SerializableResearchListItem src) { GetAgentInfoByID(src.AgentID); AgentID = src.AgentID; Skill = StaticSkills.GetSkillByID(src.SkillID); StartDate = src.ResearchStartDate; PointsPerDay = src.PointsPerDay; m_remainderPoints = src.RemainderPoints; ResearchedItem = GetDatacore(); }
/// <summary> /// Constructor from the API. /// </summary> /// <param name="src">The source item</param> /// <param name="character">The owning character</param> internal ResearchPoint(EsiResearchListItem src, CCPCharacter character) { GetAgentInfoByID(src.AgentID); AgentID = src.AgentID; Skill = StaticSkills.GetSkillByID(src.SkillID); StartDate = src.ResearchStartDate; PointsPerDay = src.PointsPerDay; m_character = character; m_remainderPoints = src.RemainderPoints; ResearchedItem = GetDatacore(); }
private IEnumerable <SerializableCharacterSkill> GetSkills(List <GetCharactersCharacterIdSkillsSkill> characterSkills) { var skills = characterSkills.Select(x => new SerializableCharacterSkill { ID = x.SkillId.GetValueOrDefault(), Name = StaticSkills.GetSkillByID(x.SkillId.GetValueOrDefault()).Name, //This gets weird with alpha clones so we are just going to assume trained level Level = x.TrainedSkillLevel.GetValueOrDefault(), Skillpoints = x.SkillpointsInSkill.GetValueOrDefault(), }); return(skills); }
/// <summary> /// Gets the skills for each race. /// </summary> /// <returns></returns> private static IEnumerable <SerializableCharacterSkill> GetSkillsForRace() { Dictionary <int, int> startingSkills = GetStartingSkills(); return(startingSkills.Select( raceSkill => new { raceSkill, staticSkill = StaticSkills.GetSkillByID(raceSkill.Key) }).Where(raceSkill => raceSkill.staticSkill != null).Select( skill => new SerializableCharacterSkill { ID = skill.raceSkill.Key, Level = skill.raceSkill.Value, Name = StaticSkills.GetSkillByID(skill.raceSkill.Key).Name, Skillpoints = StaticSkills.GetSkillByID(skill.raceSkill.Key).GetPointsRequiredForLevel (skill.raceSkill.Value), IsKnown = true, OwnsBook = false, })); }