Пример #1
0
        /// <summary>
        /// Constructor.
        /// </summary>
        /// <param name="owner">The owner.</param>
        /// <param name="skill">The skill.</param>
        /// <param name="level">The level.</param>
        public PlanEntry(BasePlan owner, StaticSkill skill, Int64 level)
        {
            m_owner = owner;
            m_skill = skill;
            m_level = level;

            m_priority = DefaultPriority;
            m_notes    = String.Empty;

            OldTrainingTime = TimeSpan.Zero;
            TrainingTime    = TimeSpan.Zero;
        }
Пример #2
0
        /// <summary>
        /// Deserialization constructor.
        /// </summary>
        /// <param name="owner">The owner.</param>
        /// <param name="serial">The serial.</param>
        internal PlanEntry(BasePlan owner, SerializablePlanEntry serial)
        {
            m_owner     = owner;
            m_entryType = serial.Type;
            m_skill     = GetSkill(serial);
            m_level     = serial.Level;
            m_notes     = serial.Notes;
            m_priority  = serial.Priority;

            m_planGroups.AddRange(serial.PlanGroups);

            if (serial.Remapping != null)
            {
                m_remapping = new RemappingPoint(serial.Remapping);
            }
        }
Пример #3
0
        /// <summary>
        /// Creates a clone of this entry for the given plan.
        /// </summary>
        /// <param name="plan"></param>
        /// <returns></returns>
        internal PlanEntry Clone(BasePlan plan)
        {
            // We need a skill for the plan's character
            PlanEntry clone = new PlanEntry(plan, m_skill, m_level)
            {
                m_entryType     = m_entryType,
                m_priority      = m_priority,
                m_notes         = m_notes,
                m_remapping     = m_remapping?.Clone(),
                OldTrainingTime = OldTrainingTime,
                TrainingTime    = TrainingTime
            };

            clone.m_planGroups.AddRange(m_planGroups);

            return(clone);
        }