Ejemplo n.º 1
0
 /// <summary>
 /// Imports and updates from the provided deserialization object
 /// </summary>
 /// <param name="src"></param>
 /// <param name="fromCCP"></param>
 internal void Import(SerializableCharacterSkill src, bool fromCCP)
 {
     m_owned = src.OwnsBook;
     m_known = fromCCP | src.IsKnown;
     SkillPoints = src.Skillpoints;
     LastConfirmedLvl = src.Level;
     m_level = src.Level;
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Exports the skill to a serialization object
        /// </summary>
        /// <returns></returns>
        internal SerializableCharacterSkill Export()
        {
            SerializableCharacterSkill dest = new SerializableCharacterSkill
            {
                ID = StaticData.ID,
                Name = StaticData.Name,
                Level = Math.Min(m_level, 5),
                Skillpoints = m_currentSkillPoints,
                OwnsBook = IsOwned,
                IsKnown = m_known
            };

            return dest;
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Gets the skill properties of a merged skill with a plan entry, if one is provided.
        /// If no plan is provided, the skill properties are returned unmodified.
        /// </summary>
        /// <param name="plan"></param>
        /// <param name="skill"></param>
        /// <returns>The skill properties after the merge</returns>
        private static SerializableCharacterSkill GetMergedSkill(Plan plan, Skill skill)
        {
            SerializableCharacterSkill mergedSkill = new SerializableCharacterSkill
            {
                ID = skill.ID,
                Name = skill.Name,
                IsKnown = skill.IsKnown,
                OwnsBook = skill.IsOwned,
                Level = skill.Level,
                Skillpoints = skill.SkillPoints
            };

            plan?.Merge(mergedSkill);

            return mergedSkill;
        }