Example #1
0
        // --------------------------------------------------------------------------------------------------------------------------------

        /// <summary>
        /// Creates a copy of the given Rival
        /// </summary>
        /// <param name="other">if null, a default rival is created</param>
        public Rival(Rival other) : this()
        {
            if (other == null)
            {
                return;
            }

            _criticalInjuries = new List <CriticalInjury>(other._criticalInjuries);

            WfLogger.Log(this, LogLevel.DETAILED, "Created new Rival from another");
        }
        // --------------------------------------------------------------------------------------------------------------------------------

        /// <summary>
        /// Creates an uniqie rival from a normal one, the name is the species + archetype and the motivations are randomly assigned
        /// </summary>
        /// <param name="other"></param>
        public UniqueRival(Rival other) : this()
        {
            if (other == null)
            {
                return;
            }

            _name          = other._species + " " + other._archetype;
            _motivationSet = MotivationFactory.RandomMotivationSet();

            WfLogger.Log(this, LogLevel.DETAILED, "Created new Unique Rival from another");
        }