예제 #1
0
        public Enemy( Armor[] armor, string name, int[] stats, Weapon weapon, int experienceWorth, AI actions )
            : base(armor,  name, stats, weapon, actions)
        {
            /* start constructor */

            mExperienceWorth = experienceWorth;
        }
예제 #2
0
        /* start ItemFactory */
        public static Item getItem(ItemEnum item)
        {
            /* start getItem */

            Item items = null;

            if (item == ItemEnum.HEALTHPOTION)
                items = new Ability("Heals a character's health by 25%", "Health Potion", Ability.MAGIC, Ability.SINGLETARGET, Ability.HEALING, 25, 0, ItemType.ABILITY);

            if (item == ItemEnum.MANAPOTION)
            {/* start if */

                items = new Ability("Restores a character's mana by 25%", "Mana Potion", Ability.MAGIC, Ability.HEALING, false, 25, 0, ItemType.ABILITY);
                items.IsMana = true;

            }/* end if */

            if (item == ItemEnum.GANDALFSSTAFF)
                items = new Weapon("Gandalf's Staff", "YOU SHALL NOT PASS!", 100, new int[Character.MAXSTATS] { 5, 100, 5, 20 }, ItemType.WEAPON);

            if (item == ItemEnum.UBERSWORD)
                items = new Weapon("Uber Sword", "Used to PWN noobs.", 100, new int[Character.MAXSTATS] { 100, 15, 30, 30 }, ItemType.WEAPON);

            if (item == ItemEnum.BOMB)
                items = new Ability("Blow up the enemy.", "Bomb", Ability.PHYSICAL, Ability.PARTYTARGET, Ability.DAMAGING, 25, 0, ItemType.ABILITY);

            return items;
        }
예제 #3
0
        public PlayerCharacter( Armor[] armor, string name, int[] stats, Weapon weapon, LevelTract pclass )
            : base(armor,  name, stats, weapon, pclass)
        {
            /* start constructor */

            mExperience = 0;
            mLevel = 1;
            mUpgraded = false;
            mClass = pclass;

            mClass.LevelUp(1);
        }
예제 #4
0
        public PlayerCharacter( Armor[] armor, string name, int[] stats, Weapon weapon, LevelTract pclass, ClassEnum classes )
            : base(armor,  name, stats, weapon, pclass)
        {
            /* start constructor */

            mExperience = 1000;
            mClass = pclass;
            mIsPlayer = true;
            mClassEnum = classes;

            mClass.LevelUp(1);
        }
예제 #5
0
        public Enemy( Armor[] armor, string name, int[] stats, Weapon weapon, int experienceWorth, AI ai, EnemyType type )
            : base(armor,  name, stats, weapon, ai)
        {
            /* start constructor */

            mExperienceWorth = experienceWorth;
            mAI = ai;
            mIsPlayer = false;
            mType = type;

            mAI.Enemy = this;
        }
예제 #6
0
        protected Character( Armor[] armor, string name, int[] stats, Weapon weapon, AbilitiesHolder abilities)
        {
            /* start constructor */

            mArmor = armor;
            mName = name;
            mStats = stats;
            mWeapon = weapon;
            mAbilities = abilities;

            mHealth = this.MaximumHealth;
            mMana = this.MaximumMana;
        }
예제 #7
0
        private void setBlackMage()
        {
            /* start setBlackMage */

            mStats = new int[Character.MAXSTATS];

            mStats[(int)StatEnum.AGILITY] = 1;
            mStats[(int)StatEnum.MAGIC] = 30;
            mStats[(int)StatEnum.STAMINA] = 10;
            mStats[(int)StatEnum.STRENGTH] = 1;

            mArmor = ArmorFactory.getInstance().getBasicArmorSet(ClassEnum.BLACKMAGE);
            mWeapon = WeaponFactory.getWeapon(WeaponEnum.WETRIEDSTAFF);
            mClass = new BlackMage(mStats);
        }
예제 #8
0
        private void setWarrior()
        {
            /* start setWarrior */

            mStats = new int[Character.MAXSTATS];

            mStats[(int)StatEnum.AGILITY] = 15;
            mStats[(int)StatEnum.MAGIC] = 1;
            mStats[(int)StatEnum.STAMINA] = 50;
            mStats[(int)StatEnum.STRENGTH] = 30;

            mArmor = ArmorFactory.getInstance().getBasicArmorSet(ClassEnum.WARRIOR);
            mWeapon = WeaponFactory.getWeapon(WeaponEnum.WETIREDSWORD);
            mClass = new Warrior(mStats);
        }
예제 #9
0
        private void setTheif()
        {
            /* start setTheif */

            mStats = new int[Character.MAXSTATS];

            mStats[(int)StatEnum.AGILITY] = 30;
            mStats[(int)StatEnum.MAGIC] = 1;
            mStats[(int)StatEnum.STAMINA] = 30;
            mStats[(int)StatEnum.STRENGTH] = 15;

            mArmor = ArmorFactory.getInstance().getBasicArmorSet(ClassEnum.THEIF); ;
            mWeapon = WeaponFactory.getWeapon( WeaponEnum.WETRIEDKNIFE );
            mClass = new Theif( mStats );
        }
예제 #10
0
        private void setRedMage()
        {
            /* start setRedMage */

            mStats = new int[Character.MAXSTATS];

            mStats[(int)StatEnum.AGILITY] = 15;
            mStats[(int)StatEnum.MAGIC] = 10;
            mStats[(int)StatEnum.STAMINA] = 25;
            mStats[(int)StatEnum.STRENGTH] = 10;

            mArmor = ArmorFactory.getInstance().getBasicArmorSet(ClassEnum.REDMAGE);
            mWeapon = WeaponFactory.getWeapon(WeaponEnum.WETIREDSWORD);
            mClass = new RedMage(mStats);
        }
예제 #11
0
        private void setTroll()
        {
            /* start setTroll */

            Random random = new Random();
            mArmor = null;
            mName = "Troll";
            mType = EnemyType.TROLL;
            mWeapon = WeaponFactory.getWeapon( WeaponEnum.WETIREDSWORD );
            mExperienceWorth = 150;

            mStats = new int[Character.MAXSTATS];

            mStats[(int)StatEnum.AGILITY] = 10 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.MAGIC] = 6 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.STRENGTH] = 15 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.STAMINA] = 8 + random.Next(STATVARIANCE);

            mAi.addAbility( AbilitiesFactory.getInstance().getAbility(AbilitesEnum.STRIKE) );
        }
예제 #12
0
        private void setThePredator()
        {
            /* start setThePredator */

            Random random = new Random();
            mArmor = ArmorFactory.getInstance().getBasicArmorSet(ClassEnum.WARRIOR);
            mName = "The Predator";
            mType = EnemyType.THEPREDATOR;
            mWeapon = WeaponFactory.getWeapon(WeaponEnum.WETIREDSWORD);
            mExperienceWorth = 250;

            mStats = new int[Character.MAXSTATS];

            mStats[(int)StatEnum.AGILITY] = 20 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.MAGIC] = 15 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.STRENGTH] = 30 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.STAMINA] = 20 + random.Next(STATVARIANCE);
        }
예제 #13
0
        private void setSpider()
        {
            /* start setSpider */

            Random random = new Random();
            mArmor = null;
            mName = "Spider";
            mType = EnemyType.SPIDER;
            mWeapon = WeaponFactory.NullWeapon();
            mExperienceWorth = 25;

            mStats = new int[Character.MAXSTATS];

            mStats[(int)StatEnum.AGILITY] = 10 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.MAGIC] = 2 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.STRENGTH] = 3 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.STAMINA] = 1 + random.Next(STATVARIANCE);
        }
예제 #14
0
        private void setLion()
        {
            /* start setLion */

            Random random = new Random();
            mArmor = null;
            mName = "Lion";
            mType = EnemyType.LION;
            mWeapon = WeaponFactory.NullWeapon();
            mExperienceWorth = 125;

            mStats = new int[Character.MAXSTATS];

            mStats[(int)StatEnum.AGILITY] = 12 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.MAGIC] = 4 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.STRENGTH] = 13 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.STAMINA] = 6 + random.Next(STATVARIANCE);
        }
예제 #15
0
        private void setBear()
        {
            /* start setBear */

            Random random = new Random();
            mArmor = null;
            mName = "Bear";
            mType = EnemyType.BEAR;
            mWeapon = WeaponFactory.NullWeapon();
            mExperienceWorth = 75;

            mStats = new int[Character.MAXSTATS];

            mStats[(int)StatEnum.AGILITY] = 5 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.MAGIC] = 4 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.STRENGTH] = 9 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.STAMINA] = 4 + random.Next(STATVARIANCE);
        }
예제 #16
0
        private Enemy getDragon()
        {
            /* start getDragon */

            Random random = new Random();
            mArmor = ArmorFactory.getInstance().getBasicArmorSet(ClassEnum.WARRIOR);
            mName = "The Dragon";
            mType = EnemyType.DRAGON;
            mWeapon = WeaponFactory.getWeapon(WeaponEnum.WETIREDSWORD);
            mExperienceWorth = 100000;

            mAi = new Striker();

            mStats = new int[Character.MAXSTATS];

            mStats[(int)StatEnum.AGILITY] = 50 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.MAGIC] = 50 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.STRENGTH] = 50 + random.Next(STATVARIANCE);
            mStats[(int)StatEnum.STAMINA] = 50 + random.Next(STATVARIANCE);

            mAi.addAbility( AbilitiesFactory.getInstance().getAbility(AbilitesEnum.BLAZE));

            return new Enemy(mArmor, mName, mStats, mWeapon, mExperienceWorth, mAi, mType);
        }