Example #1
0
        /// <summary>
        /// Crate PlayerInfoModel from Monster
        /// </summary>
        /// <param name="data"></param>
        public PlayerInfoModel(MonsterModel data)
        {
            PlayerType          = data.PlayerType;
            Guid                = data.Guid;
            Alive               = data.Alive;
            ExperienceTotal     = data.ExperienceTotal;
            ExperienceRemaining = data.ExperienceRemaining;
            Level               = data.Level;
            Name                = data.Name;
            Description         = data.Description;
            Speed               = data.GetSpeed();
            ImageURI            = data.ImageURI;
            MaxHealth           = data.GetMaxHealthTotal;
            CurrentHealth       = data.GetCurrentHealthTotal;
            MonsterTypeEnum     = data.MonsterTypeEnum;
            CharacterTypeEnum   = data.CharacterTypeEnum;

            // Set the Base Attributes
            Speed         = data.Speed;
            Range         = data.Range;
            Defense       = data.Defense;
            Attack        = data.Attack;
            MaxHealth     = data.MaxHealth;
            CurrentHealth = data.CurrentHealth;

            // Set the strings for the items
            Head        = data.Head;
            Necklace    = data.Necklace;
            PrimaryHand = data.PrimaryHand;
            OffHand     = data.OffHand;
            RightFinger = data.RightFinger;
            LeftFinger  = data.LeftFinger;
            Feet        = data.Feet;

            UniqueDropItem = data.UniqueDropItem;

            Difficulty = data.Difficulty;

            // Give the copy a differet quid, so it can be used in the battles as a copy
            Guid = System.Guid.NewGuid().ToString();

            // Set amount to give to be 1 below max for that level.
            var LevelData = LevelTableHelper.LevelDetailsList.ElementAtOrDefault(Level + 1) ?? LevelTableHelper.LevelDetailsList.Last();

            ExperienceRemaining = LevelData.Experience - 1;

            SpecificMonsterTypeEnum = data.SpecificMonsterTypeEnum;

            /*
             * TODO: Team, this is needed to keep the UT passing for the base game, your game does not need to use it.
             */
            // Add some base Abilities
            foreach (var item in AbilityEnumHelper.GetListOthers)
            {
                AbilityTracker.Add(AbilityEnumHelper.ConvertStringToEnum(item), Level);
            }
            EngineGameSpecialAbility = AbilityEnum.None;

            TileImageURI = data.TileImageURI;
        }
Example #2
0
        /// <summary>
        /// Crate PlayerInfoModel from Monster
        /// </summary>
        /// <param name="data"></param>
        public PlayerInfoModel(MonsterModel data)
        {
            PlayerType          = data.PlayerType;
            Guid                = data.Guid;
            Alive               = data.Alive;
            ExperienceTotal     = data.ExperienceTotal;
            ExperienceRemaining = data.ExperienceRemaining;
            Level               = data.Level;
            Name                = data.Name;
            Description         = data.Description;
            Speed               = data.GetSpeed();
            ImageURI            = data.ImageURI;
            MaxHealth           = data.GetMaxHealthTotal;
            CurrentHealth       = data.GetCurrentHealthTotal;

            // Set the Base Attributes
            Speed         = data.Speed;
            Range         = data.Range;
            Defense       = data.Defense;
            Attack        = data.Attack;
            SpecialAttack = data.SpecialAttack;
            MaxHealth     = data.MaxHealth;
            CurrentHealth = data.CurrentHealth;

            // Set the strings for the items
            Head        = data.Head;
            Necklass    = data.Necklass;
            PrimaryHand = data.PrimaryHand;
            OffHand     = data.OffHand;
            RightFinger = data.RightFinger;
            LeftFinger  = data.LeftFinger;
            Feet        = data.Feet;

            UniqueItem = data.UniqueItem;

            Difficulty = data.Difficulty;

            MonsterType = data.MonsterType;

            // Give the copy a differet quid, so it can be used in the battles as a copy
            Guid = System.Guid.NewGuid().ToString();

            // Set amount to give to be 1 below max for that level.
            ExperienceRemaining = LevelTableHelper.LevelDetailsList[Level + 1].Experience - 1;

            // Adding abilities for monsters, why not, they work hard for a living
            foreach (var item in AbilityEnumHelper.GetListOthers)
            {
                AbilityTracker.Add(AbilityEnumHelper.ConvertStringToEnum(item), Level);
            }
        }
Example #3
0
        /// <summary>
        /// Create PlayerInfoModel from character
        /// </summary>
        /// <param name="data"></param>
        public PlayerInfoModel(CharacterModel data)
        {
            PlayerType          = data.PlayerType;
            Guid                = data.Guid;
            Alive               = data.Alive;
            ExperienceTotal     = data.ExperienceTotal;
            ExperienceRemaining = data.ExperienceRemaining;
            Level               = data.Level;
            Name                = data.Name;
            Description         = data.Description;

            // Set the Base Attributes
            Speed         = data.Speed;
            Range         = data.Range;
            Defense       = data.Defense;
            Attack        = data.Attack;
            MaxHealth     = data.MaxHealth;
            CurrentHealth = data.CurrentHealth;

            ImageURI = data.ImageURI;

            // Set the strings for the items
            Head        = data.Head;
            Necklass    = data.Necklass;
            PrimaryHand = data.PrimaryHand;
            OffHand     = data.OffHand;
            RightFinger = data.RightFinger;
            LeftFinger  = data.LeftFinger;
            Feet        = data.Feet;
            UniqueItem  = data.UniqueItem;

            Difficulty = data.Difficulty;

            Job = data.Job;

            // Give the copy a differet quid, so it can be used in the battles as a copy
            Guid = System.Guid.NewGuid().ToString();

            // Set current experience to be 1 above minimum.
            ExperienceTotal = LevelTableHelper.LevelDetailsList[Level - 1].Experience + 1;

            // TODO: Mike, Refactor this, so it is in a helper, and call it on level up as well.
            switch (Job)
            {
            case CharacterJobEnum.Cleric:

                foreach (var item in AbilityEnumHelper.GetListCleric)
                {
                    AbilityTracker.Add(AbilityEnumHelper.ConvertStringToEnum(item), Level);
                }
                break;

            case CharacterJobEnum.Fighter:
                foreach (var item in AbilityEnumHelper.GetListFighter)
                {
                    AbilityTracker.Add(AbilityEnumHelper.ConvertStringToEnum(item), Level);
                }
                break;

            default:
                foreach (var item in AbilityEnumHelper.GetListOthers)
                {
                    AbilityTracker.Add(AbilityEnumHelper.ConvertStringToEnum(item), Level);
                }
                break;
            }
        }
Example #4
0
        /// <summary>
        /// Create PlayerInfoModel from character
        /// </summary>
        /// <param name="data"></param>
        public PlayerInfoModel(CharacterModel data)
        {
            PlayerType          = data.PlayerType;
            Guid                = data.Guid;
            Alive               = data.Alive;
            ExperienceTotal     = data.ExperienceTotal;
            ExperienceRemaining = data.ExperienceRemaining;
            Level               = data.Level;
            Name                = data.Name;
            Description         = data.Description;
            MonsterTypeEnum     = data.MonsterTypeEnum;
            CharacterTypeEnum   = data.CharacterTypeEnum;

            // Set the Base Attributes
            Speed         = data.Speed;
            Range         = data.Range;
            Defense       = data.Defense;
            Attack        = data.Attack;
            MaxHealth     = data.MaxHealth;
            CurrentHealth = data.CurrentHealth;

            ImageURI = data.ImageURI;

            // Set the strings for the items
            Head        = data.Head;
            Necklace    = data.Necklace;
            PrimaryHand = data.PrimaryHand;
            OffHand     = data.OffHand;
            RightFinger = data.RightFinger;
            LeftFinger  = data.LeftFinger;
            Feet        = data.Feet;

            Difficulty = data.Difficulty;

            // Give the copy a differet quid, so it can be used in the battles as a copy
            Guid = System.Guid.NewGuid().ToString();

            // Set current experience to be 1 above minimum.
            ExperienceTotal = LevelTableHelper.LevelDetailsList[Level - 1].Experience + 1;

            AbilityTracker.Add(data.SpecialAbility, Constants.SpecialAbilityUsePerRound);
            EngineGameSpecialAbility  = data.SpecialAbility;
            AbilityUsedInCurrentRound = false;

            GPA = data.GPA;

            AbilityUsedInCurrentRound = data.AbilityUsedInCurrentRound;

            Graduated = data.Graduated;

            SpecificCharacterTypeEnum = data.SpecificCharacterTypeEnum;

            FiveMinuteBreaks = 0; // start this at 0

            WantsToRest = false;  // default to false

            SlippedNumTimes = 0;  // start this at 0

            TileImageURI = data.TileImageURI;

            /*
             *  TODO: Team, this is needed to keep the UT passing for the base game, your game does not need to use it.
             */
            // Add some base Abilities
            foreach (var item in AbilityEnumHelper.GetListOthers)
            {
                AbilityTracker.Add(AbilityEnumHelper.ConvertStringToEnum(item), Level);
            }
        }