Exemplo n.º 1
0
        public MilitiaFighter() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            InitStats(40, 30, 5);
            Title = "the Militia Fighter";

            SpeechHue = Utility.RandomDyedHue();

            Hue = Utility.RandomSkinHue();

            Female = false;
            Body   = 0x190;
            Name   = NameList.RandomName("male");

            Utility.AssignRandomHair(this);
            Utility.AssignRandomFacialHair(this, HairHue);

            AddItem(new ThighBoots(0x1BB));
            AddItem(new LeatherChest());
            AddItem(new LeatherArms());
            AddItem(new LeatherLegs());
            AddItem(new LeatherCap());
            AddItem(new LeatherGloves());
            AddItem(new LeatherGorget());

            Item weapon;

            switch (Utility.Random(6))
            {
            case 0: weapon = new Broadsword(); break;

            case 1: weapon = new Cutlass(); break;

            case 2: weapon = new Katana(); break;

            case 3: weapon = new Longsword(); break;

            case 4: weapon = new Scimitar(); break;

            default: weapon = new VikingSword(); break;
            }
            weapon.Movable = false;
            AddItem(weapon);

            Item shield = new BronzeShield
            {
                Movable = false
            };

            AddItem(shield);

            SetSkill(SkillName.Swords, 20.0);
        }
Exemplo n.º 2
0
        public ChaosDragoonElite()
            : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.15, 0.4)
        {
            Name = "a chaos dragoon elite";
            Body = 0x190;
            Hue  = Utility.RandomSkinHue();

            SetStr(276, 350);
            SetDex(66, 90);
            SetInt(126, 150);

            SetHits(276, 350);

            SetDamage(29, 34);

            SetDamageType(ResistanceType.Physical, 100);

            /*SetResistance(ResistanceType.Physical, 45, 55);
             * SetResistance(ResistanceType.Fire, 15, 25);
             * SetResistance(ResistanceType.Cold, 50);
             * SetResistance(ResistanceType.Poison, 25, 35);
             * SetResistance(ResistanceType.Energy, 25, 35);*/


            SetSkill(SkillName.Tactics, 80.1, 100.0);
            SetSkill(SkillName.MagicResist, 100.1, 110.0);
            SetSkill(SkillName.Anatomy, 80.1, 100.0);
            SetSkill(SkillName.Magery, 85.1, 100.0);
            SetSkill(SkillName.EvalInt, 85.1, 100.0);
            SetSkill(SkillName.Swords, 72.5, 95.0);
            SetSkill(SkillName.Fencing, 85.1, 100);
            SetSkill(SkillName.Macing, 85.1, 100);

            Fame  = 8000;
            Karma = -8000;

            BaseWeapon melee = null;

            switch (Utility.Random(3))
            {
            case 0: melee = new Kryss(); break;

            case 1: melee = new Broadsword(); break;

            case 2: melee = new Katana(); break;
            }

            melee.Movable = false;
            AddItem(melee);
        }
Exemplo n.º 3
0
        public FighterPeacemaker() : base(AIType.AI_Melee, 1)
        {
            SetStr(220, 300);
            SetDex(40, 60);
            SetInt(40, 60);

            Item weapon;

            switch (Utility.Random(6))
            {
            case 0:
                weapon = new Broadsword();
                break;

            case 1:
                weapon = new Cutlass();
                break;

            case 2:
                weapon = new Katana();
                break;

            case 3:
                weapon = new Longsword();
                break;

            case 4:
                weapon = new Scimitar();
                break;

            default:
                weapon = new VikingSword();
                break;
            }
            AddItem(weapon);

            AddItem(new MetalShield());

            SetDamageType(ResistanceType.Physical, 100);

            SetSkill(SkillName.Tactics, 70, 95);
            SetSkill(SkillName.Swords, 70, 100);
            SetSkill(SkillName.Fencing, 65, 100);
            SetSkill(SkillName.MagicResist, 80, 110);
            SetSkill(SkillName.Macing, 75, 100);
            SetSkill(SkillName.Wrestling, 65, 100);
            SetSkill(SkillName.Parry, 70, 100);
            SetSkill(SkillName.Healing, 65, 75);
            SetSkill(SkillName.Anatomy, 80, 90);
        }
Exemplo n.º 4
0
        public bool DropWeapon(int minLevel, int maxLevel)
        {
            if (1.0 <= Utility.RandomDouble())
            {
                return(false);
            }

            if (maxLevel > 2)
            {
                maxLevel = 2;
            }

            Cap(ref minLevel, 0, 2);
            Cap(ref maxLevel, 0, 2);

            BaseWeapon weapon = new Broadsword();

            double random = Utility.RandomDouble();

            if (random >= .75)
            {
                weapon = new WarFork();
            }
            else if (random >= .50)
            {
                weapon = new WarMace();
            }
            else if (random >= .25)
            {
                weapon = new Bow();
                Arrow arrows = new Arrow();
                arrows.Amount = 25;
                DropItem(arrows);
            }

            if (weapon == null)
            {
                return(false);
            }

            weapon.DamageLevel     = (WeaponDamageLevel)RandomMinMaxScaled(minLevel, maxLevel);
            weapon.AccuracyLevel   = (WeaponAccuracyLevel)RandomMinMaxScaled(0, maxLevel);
            weapon.DurabilityLevel = (WeaponDurabilityLevel)RandomMinMaxScaled(0, maxLevel);

            DropItem(weapon);

            return(true);
        }
            public InternalBuyInfo()
            {
                Add(new GenericBuyInfo("Dagger", typeof(Dagger), Dagger.GetSBPurchaseValue(), 25, 0xF52, 0));
                Add(new GenericBuyInfo("Kryss", typeof(Kryss), Kryss.GetSBPurchaseValue(), 25, 0x1401, 0));
                Add(new GenericBuyInfo("War Fork", typeof(WarFork), WarFork.GetSBPurchaseValue(), 25, 0x1405, 0));
                Add(new GenericBuyInfo("Short Spear", typeof(ShortSpear), ShortSpear.GetSBPurchaseValue(), 25, 0x1403, 0));
                Add(new GenericBuyInfo("Pitchfork", typeof(Pitchfork), Pitchfork.GetSBPurchaseValue(), 25, 0xE87, 0));
                Add(new GenericBuyInfo("Spear", typeof(Spear), Spear.GetSBPurchaseValue(), 25, 0xF62, 0));

                Add(new GenericBuyInfo("Hammer Pick", typeof(HammerPick), HammerPick.GetSBPurchaseValue(), 25, 0x143D, 0));
                Add(new GenericBuyInfo("War Axe", typeof(WarAxe), WarAxe.GetSBPurchaseValue(), 25, 0x13B0, 0));
                Add(new GenericBuyInfo("Mace", typeof(Mace), Mace.GetSBPurchaseValue(), 25, 0xF5C, 0));
                Add(new GenericBuyInfo("Maul", typeof(Maul), Maul.GetSBPurchaseValue(), 25, 0x143B, 0));
                Add(new GenericBuyInfo("WarHammer", typeof(WarHammer), WarHammer.GetSBPurchaseValue(), 25, 0x1439, 0));
                Add(new GenericBuyInfo("War Mace", typeof(WarMace), WarMace.GetSBPurchaseValue(), 25, 0x1407, 0));

                Add(new GenericBuyInfo("Butcher Knife", typeof(ButcherKnife), ButcherKnife.GetSBPurchaseValue(), 25, 0x13F6, 0));
                Add(new GenericBuyInfo("Skinning Knife", typeof(SkinningKnife), SkinningKnife.GetSBPurchaseValue(), 25, 0xEC4, 0));
                Add(new GenericBuyInfo("Cleaver", typeof(Cleaver), Cleaver.GetSBPurchaseValue(), 25, 0xEC3, 0));
                Add(new GenericBuyInfo("Cutlass", typeof(Cutlass), Cutlass.GetSBPurchaseValue(), 25, 0x1441, 0));
                Add(new GenericBuyInfo("Katana", typeof(Katana), Katana.GetSBPurchaseValue(), 25, 0x13FF, 0));
                Add(new GenericBuyInfo("Scimitar", typeof(Scimitar), Scimitar.GetSBPurchaseValue(), 25, 0x13B6, 0));
                Add(new GenericBuyInfo("Broadsword", typeof(Broadsword), Broadsword.GetSBPurchaseValue(), 25, 0xF5E, 0));
                Add(new GenericBuyInfo("Longsword", typeof(Longsword), Longsword.GetSBPurchaseValue(), 25, 0xF61, 0));
                Add(new GenericBuyInfo("Viking Sword", typeof(VikingSword), VikingSword.GetSBPurchaseValue(), 25, 0x13B9, 0));
                Add(new GenericBuyInfo("Axe", typeof(Axe), Axe.GetSBPurchaseValue(), 25, 0xF49, 0));
                Add(new GenericBuyInfo("Battle Axe", typeof(BattleAxe), BattleAxe.GetSBPurchaseValue(), 25, 0xF47, 0));
                Add(new GenericBuyInfo("Double Axe", typeof(DoubleAxe), DoubleAxe.GetSBPurchaseValue(), 25, 0xF4B, 0));
                Add(new GenericBuyInfo("Executioner's Axe", typeof(ExecutionersAxe), ExecutionersAxe.GetSBPurchaseValue(), 25, 0xF45, 0));
                Add(new GenericBuyInfo("Large Battle Axe", typeof(LargeBattleAxe), LargeBattleAxe.GetSBPurchaseValue(), 25, 0x13FB, 0));
                Add(new GenericBuyInfo("Two-Handed Axe", typeof(TwoHandedAxe), TwoHandedAxe.GetSBPurchaseValue(), 25, 0x1443, 0));
                Add(new GenericBuyInfo("Bardiche", typeof(Bardiche), Bardiche.GetSBPurchaseValue(), 25, 0xF4D, 0));
                Add(new GenericBuyInfo("Halberd", typeof(Halberd), Halberd.GetSBPurchaseValue(), 25, 0x143E, 0));

                Add(new GenericBuyInfo("Bow", typeof(Bow), Bow.GetSBPurchaseValue(), 25, 0x13B2, 0));
                Add(new GenericBuyInfo("Crossbow", typeof(Crossbow), Crossbow.GetSBPurchaseValue(), 25, 0xF50, 0));
                Add(new GenericBuyInfo("Heavy Crossbow", typeof(HeavyCrossbow), HeavyCrossbow.GetSBPurchaseValue(), 25, 0x13FD, 0));
            }
            public InternalSellInfo()
            {
                Add(typeof(Dagger), Dagger.GetSBSellValue());
                Add(typeof(Kryss), Kryss.GetSBSellValue());
                Add(typeof(WarFork), WarFork.GetSBSellValue());
                Add(typeof(ShortSpear), ShortSpear.GetSBSellValue());
                Add(typeof(Pitchfork), Pitchfork.GetSBSellValue());
                Add(typeof(Spear), Spear.GetSBSellValue());

                Add(typeof(HammerPick), HammerPick.GetSBSellValue());
                Add(typeof(WarAxe), WarAxe.GetSBSellValue());
                Add(typeof(Mace), Mace.GetSBSellValue());
                Add(typeof(Maul), Maul.GetSBSellValue());
                Add(typeof(WarHammer), WarHammer.GetSBSellValue());
                Add(typeof(WarMace), WarMace.GetSBSellValue());

                Add(typeof(ButcherKnife), ButcherKnife.GetSBSellValue());
                Add(typeof(SkinningKnife), SkinningKnife.GetSBSellValue());
                Add(typeof(Cleaver), Cleaver.GetSBSellValue());
                Add(typeof(Cutlass), Cutlass.GetSBSellValue());
                Add(typeof(Katana), Katana.GetSBSellValue());
                Add(typeof(Scimitar), Scimitar.GetSBSellValue());
                Add(typeof(Broadsword), Broadsword.GetSBSellValue());
                Add(typeof(Longsword), Longsword.GetSBSellValue());
                Add(typeof(VikingSword), VikingSword.GetSBSellValue());
                Add(typeof(Axe), Axe.GetSBSellValue());
                Add(typeof(BattleAxe), BattleAxe.GetSBSellValue());
                Add(typeof(DoubleAxe), DoubleAxe.GetSBSellValue());
                Add(typeof(ExecutionersAxe), ExecutionersAxe.GetSBSellValue());
                Add(typeof(LargeBattleAxe), LargeBattleAxe.GetSBSellValue());
                Add(typeof(TwoHandedAxe), TwoHandedAxe.GetSBSellValue());
                Add(typeof(Bardiche), Bardiche.GetSBSellValue());
                Add(typeof(Halberd), Halberd.GetSBSellValue());

                Add(typeof(Bow), Bow.GetSBSellValue());
                Add(typeof(Crossbow), Crossbow.GetSBSellValue());
                Add(typeof(HeavyCrossbow), HeavyCrossbow.GetSBSellValue());
            }
Exemplo n.º 7
0
        public Deathknight() : base(AIType.AI_Necro, FightMode.Aggressor, 10, 1, 0.2, 0.4)
        {
            Title = "the deathknight";

            SpeechHue = Utility.RandomDyedHue();

            Hue  = 0;
            Name = NameList.RandomName("daemon");

            SetStr(306, 430);
            SetDex(271, 350);
            SetInt(250, 355);

            SetHits(2200);

            if (Female = Utility.RandomBool())
            {
                Body = 0x191;
            }
            else
            {
                Body = 0x190;
            }

            new SkeletalMount().Rider = this;

            PlateChest chest = new PlateChest();

            chest.LootType = LootType.Blessed;
            chest.Hue      = 1175;
            AddItem(chest);
            PlateArms arms = new PlateArms();

            arms.LootType = LootType.Blessed;
            arms.Hue      = 1175;
            AddItem(arms);
            PlateGloves gloves = new PlateGloves();

            gloves.LootType = LootType.Blessed;
            gloves.Hue      = 1175;
            AddItem(gloves);
            PlateGorget gorget = new PlateGorget();

            gorget.LootType = LootType.Blessed;
            gorget.Hue      = 1175;
            AddItem(gorget);
            PlateLegs legs = new PlateLegs();

            legs.LootType = LootType.Blessed;
            legs.Hue      = 1175;
            AddItem(legs);
            Cloak cloak = new Cloak();

            cloak.LootType = LootType.Blessed;
            cloak.Hue      = 1175;
            AddItem(cloak);

            DeathknightsHelm helm = new DeathknightsHelm();

            helm.LootType = LootType.Blessed;
            AddItem(helm);



            switch (Utility.Random(4))
            {
            case 0:  LargeBattleAxe battleaxe = new LargeBattleAxe();
                battleaxe.Movable = false;
                battleaxe.Crafter = this;
                battleaxe.Hue     = 1175;
                battleaxe.Quality = WeaponQuality.Exceptional;
                AddItem(battleaxe); break;

            case 1:  DoubleAxe doubleaxe = new DoubleAxe();
                doubleaxe.Movable = false;
                doubleaxe.Crafter = this;
                doubleaxe.Hue     = 1175;
                doubleaxe.Quality = WeaponQuality.Exceptional;
                AddItem(doubleaxe); break;

            case 2:  Broadsword broadsword = new Broadsword();
                broadsword.Movable = false;
                broadsword.Crafter = this;
                broadsword.Hue     = 1175;
                broadsword.Quality = WeaponQuality.Exceptional;
                AddItem(broadsword); break;

            case 3:  VikingSword vikingsword = new VikingSword();
                vikingsword.Movable = false;
                vikingsword.Crafter = this;
                vikingsword.Hue     = 1175;
                vikingsword.Quality = WeaponQuality.Exceptional;
                AddItem(vikingsword); break;
            }

            if (Utility.RandomDouble() <= 0.40)
            {
                PackItem(new DeathknightsHelm());
            }


            PackGold(980, 1400);

            Skills[SkillName.Anatomy].Base       = 120.0;
            Skills[SkillName.Tactics].Base       = 120.0;
            Skills[SkillName.Swords].Base        = 120.0;
            Skills[SkillName.Necromancy].Base    = 120.0;
            Skills[SkillName.SpiritSpeak].Base   = 120.0;
            Skills[SkillName.MagicResist].Base   = 120.0;
            Skills[SkillName.Lumberjacking].Base = 100.0;
        }
        public BaneChosenDragonRider()
            : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.15, 0.4)
        {
            Name = "a bane chosen dragon rider";
            Body = 0x190;
            Hue  = Utility.RandomSkinHue();

            SetStr(576, 650);
            SetDex(226, 290);
            SetInt(126, 150);

            SetHits(676, 750);

            SetDamage(29, 34);

            SetDamageType(ResistanceType.Physical, 100);

            SetResistance(ResistanceType.Physical, 45, 55);
            SetResistance(ResistanceType.Fire, 15, 25);
            SetResistance(ResistanceType.Cold, 50);
            SetResistance(ResistanceType.Poison, 25, 35);
            SetResistance(ResistanceType.Energy, 25, 35);


            SetSkill(SkillName.Tactics, 80.1, 100.0);
            SetSkill(SkillName.MagicResist, 100.1, 110.0);
            SetSkill(SkillName.Anatomy, 80.1, 100.0);
            SetSkill(SkillName.Magery, 85.1, 100.0);
            SetSkill(SkillName.EvalInt, 85.1, 100.0);
            SetSkill(SkillName.Swords, 72.5, 95.0);
            SetSkill(SkillName.Fencing, 85.1, 100);
            SetSkill(SkillName.Macing, 85.1, 100);

            Fame  = 18000;
            Karma = -18000;

            CraftResource res = CraftResource.BlackScales;

            BaseWeapon melee = null;

            switch (Utility.Random(3))
            {
            case 0: melee = new Kryss(); break;

            case 1: melee = new Broadsword(); break;

            case 2: melee = new Katana(); break;
            }

            melee.Movable = false;
            AddItem(melee);

            DragonChest Tunic = new DragonChest();

            Tunic.Resource = res;
            Tunic.Movable  = false;
            AddItem(Tunic);

            DragonLegs Legs = new DragonLegs();

            Legs.Resource = res;
            Legs.Movable  = false;
            AddItem(Legs);

            DragonArms Arms = new DragonArms();

            Arms.Resource = res;
            Arms.Movable  = false;
            AddItem(Arms);

            DragonGloves Gloves = new DragonGloves();

            Gloves.Resource = res;
            Gloves.Movable  = false;
            AddItem(Gloves);

            DragonHelm Helm = new DragonHelm();

            Helm.Resource = res;
            Helm.Movable  = false;
            AddItem(Helm);

            ChaosShield shield = new ChaosShield();

            shield.Movable = false;
            AddItem(shield);

            AddItem(new Boots(0x455));
            AddItem(new Shirt(Utility.RandomMetalHue()));

            /*int amount = Utility.RandomMinMax(1, 3);
             *
             * switch (res)
             * {
             *      case CraftResource.BlackScales: AddItem(new BlackScales(amount)); break;
             *      case CraftResource.RedScales: AddItem(new RedScales(amount)); break;
             *      case CraftResource.BlueScales: AddItem(new BlueScales(amount)); break;
             *      case CraftResource.YellowScales: AddItem(new YellowScales(amount)); break;
             *      case CraftResource.GreenScales: AddItem(new GreenScales(amount)); break;
             *      case CraftResource.WhiteScales: AddItem(new WhiteScales(amount)); break;
             * }
             * switch (Utility.Random(9))
             * {
             *      case 0: res = CraftResource.DullCopper; break;
             *      case 1: res = CraftResource.ShadowIron; break;
             *      case 2: res = CraftResource.Copper; break;
             *      case 3: res = CraftResource.Bronze; break;
             *      case 4: res = CraftResource.Gold; break;
             *      case 5: res = CraftResource.Agapite; break;
             *      case 6: res = CraftResource.Verite; break;
             *      case 7: res = CraftResource.Valorite; break;
             *      case 8: res = CraftResource.Iron; break;
             * }*/

            BaneDragon mt = new BaneDragon();

            mt.Rider = this;
        }
Exemplo n.º 9
0
        public MilitiaFighter() : base(AIType.AI_Melee, FightMode.All | FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            InitStats(40, 30, 5);
            Title = "the Militia Fighter";

            SpeechHue = Utility.RandomDyedHue();

            Hue = Utility.RandomSkinHue();

            Female = false;
            Body   = 0x190;
            Name   = NameList.RandomName("male");

            Item hair = new Item(Utility.RandomList(0x203B, 0x203C, 0x203D, 0x2044, 0x2045, 0x2047, 0x2049, 0x204A));

            hair.Hue     = Utility.RandomHairHue();
            hair.Layer   = Layer.Hair;
            hair.Movable = false;
            AddItem(hair);

            Item beard = new Item(Utility.RandomList(0x203E, 0x203F, 0x2040, 0x2041, 0x204B, 0x204C, 0x204D));

            beard.Hue     = hair.Hue;
            beard.Layer   = Layer.FacialHair;
            beard.Movable = false;
            AddItem(beard);

            AddItem(new ThighBoots(0x1BB));
            AddItem(new LeatherChest());
            AddItem(new LeatherArms());
            AddItem(new LeatherLegs());
            AddItem(new LeatherCap());
            AddItem(new LeatherGloves());
            AddItem(new LeatherGorget());

            Item weapon;

            switch (Utility.Random(6))
            {
            case 0: weapon = new Broadsword(); break;

            case 1: weapon = new Cutlass(); break;

            case 2: weapon = new Katana(); break;

            case 3: weapon = new Longsword(); break;

            case 4: weapon = new Scimitar(); break;

            default: weapon = new VikingSword(); break;
            }
            weapon.Movable = false;
            AddItem(weapon);

            Item shield = new BronzeShield();

            shield.Movable = false;
            AddItem(shield);

            SetSkill(SkillName.Swords, 20.0);
        }
Exemplo n.º 10
0
		public BaseAIGuard() : base( AIType.AI_Melee, FightMode.Aggressor, 10, 1, 0.6, 0.8 )
		{
			InitStats( 400, 100, 100 );
			Title = "the guard";

			SpeechHue = Utility.RandomDyedHue();

			Hue = Utility.RandomSkinHue();

			if ( Female = Utility.RandomBool() )
			{
				Body = 0x191;
				Name = NameList.RandomName( "female" );

				switch( Utility.Random( 2 ) )
				{
					case 0: AddItem( new LeatherSkirt() ); break;
					case 1: AddItem( new LeatherShorts() ); break;
				}

				switch( Utility.Random( 5 ) )
				{
					case 0: AddItem( new FemaleLeatherChest() ); break;
					case 1: AddItem( new FemaleStuddedChest() ); break;
					case 2: AddItem( new LeatherBustierArms() ); break;
					case 3: AddItem( new StuddedBustierArms() ); break;
					case 4: AddItem( new FemalePlateChest() ); break;
				}
			}
			else
			{
				Body = 0x190;
				Name = NameList.RandomName( "male" );

				AddItem( new PlateChest() );
				AddItem( new PlateArms() );
				AddItem( new PlateGorget() );
				AddItem( new PlateLegs() );
			}

			Item hair = new Item( Utility.RandomList( 0x203B, 0x203C, 0x203D, 0x2044, 0x2045, 0x2047, 0x2049, 0x204A ) );

			hair.Hue = Utility.RandomHairHue();
			hair.Layer = Layer.Hair;
			hair.Movable = false;

			AddItem( hair );

			if( Utility.RandomBool() && !this.Female )
			{
				Item beard = new Item( Utility.RandomList( 0x203E, 0x203F, 0x2040, 0x2041, 0x204B, 0x204C, 0x204D ) );

				beard.Hue = hair.Hue;
				beard.Layer = Layer.FacialHair;
				beard.Movable = false;

				AddItem( beard );
			}

			Broadsword weapon = new Broadsword();

			weapon.Movable = false;
			weapon.Crafter = this;
			weapon.Quality = WeaponQuality.Exceptional;

			AddItem( weapon );

			Container pack = new Backpack();

			pack.Movable = false;

			pack.DropItem( new Gold( 10, 25 ) );

			AddItem( pack );

			SetSkill( SkillName.Anatomy, 70.1, 80.0 );
			SetSkill( SkillName.Tactics, 70.1, 80.0 );
			SetSkill( SkillName.Swords, 70.1, 80.0 );
			SetSkill( SkillName.MagicResist, 70.1, 80.0 );
		}
Exemplo n.º 11
0
        public override void OnResponse(NetState state, RelayInfo info)           //Function for GumpButtonType.Reply Buttons
        {
            Mobile       from   = state.Mobile;
            PlayerMobile pm     = from as PlayerMobile;
            PlayerModule module = pm.PlayerModule;

            m_cost = 50;            //MOD COST OF WEAPON HERE!!
            Item      wep  = from.FindItemOnLayer(Layer.FirstValid);
            Item      weps = from.FindItemOnLayer(Layer.TwoHanded);
            Container pack = from.Backpack;

            if (wep != null)
            {
                pack.TryDropItem(from, wep, false);
            }

            if (weps != null)
            {
                pack.TryDropItem(from, weps, false);
            }

            switch (info.ButtonID)
            {
            case 0:                     //Cancel
            {
                from.SendMessage("You decide against spending your skill points.");
                //from.SendGump( new LevelGump( from ) );
                break;
            }

            case 1:                     //Katana
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Katana kat = new Katana();
                    (( Item )kat).Name = "Katana [Level Item]";
                    kat.Identified     = true;                                //Prevents others from being used in the upgrading!
                    kat.LootType       = LootType.Blessed;
                    from.EquipItem(kat);
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 2:                     //Broad Sword
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Broadsword bs = new Broadsword();
                    bs.Identified = true;
                    bs.Name       = "Broadsword";
                    bs.LootType   = LootType.Blessed;
                    from.EquipItem(bs);
                    from.SendMessage(102, "You chose a Broadsword");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 3:                     //Scimitar
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Scimitar sc = new Scimitar();
                    sc.Identified = true;
                    sc.Name       = "Scimitar";
                    sc.LootType   = LootType.Blessed;
                    from.EquipItem(sc);
                    from.SendMessage(102, "You chose a Scimitar");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 4:                     //Viking sword
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    VikingSword vs = new VikingSword();
                    vs.Identified = true;
                    vs.Name       = "Vikingsword";
                    vs.LootType   = LootType.Blessed;
                    from.EquipItem(vs);
                    from.SendMessage(102, "You chose a Viking Sword");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 5:                     //Halberd
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Halberd hb = new Halberd();
                    hb.Identified = true;
                    hb.Name       = "Halberd";
                    hb.LootType   = LootType.Blessed;
                    from.EquipItem(hb);
                    from.SendMessage(102, "You chose a Halberd");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 6:                     //Bardiche
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Bardiche bd = new Bardiche();
                    bd.Identified = true;
                    bd.Name       = "Bardiche";
                    bd.LootType   = LootType.Blessed;
                    from.EquipItem(bd);
                    from.SendMessage(102, "You chose a Bardiche");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 7:                     //Double Axe
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    DoubleAxe da = new DoubleAxe();
                    da.Identified = true;
                    da.Name       = "Double Axe";
                    da.LootType   = LootType.Blessed;
                    from.EquipItem(da);
                    from.SendMessage(102, "You chose a Double Axe");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 8:                     //Large Battle Axe
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    LargeBattleAxe lba = new LargeBattleAxe();
                    lba.Identified = true;
                    lba.Name       = "Large Battle Axe";
                    lba.LootType   = LootType.Blessed;
                    from.EquipItem(lba);
                    from.SendMessage(102, "You chose a Large Battle Axe");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 9:                     //Axe
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Axe a = new Axe();
                    a.Identified = true;
                    a.Name       = "Axe";
                    a.LootType   = LootType.Blessed;
                    from.EquipItem(a);
                    from.SendMessage(102, "You chose an Axe");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 10:                     //Kryss
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Kryss k = new Kryss();
                    k.Identified = true;
                    k.Name       = "Kryss";
                    k.LootType   = LootType.Blessed;
                    from.EquipItem(k);
                    from.SendMessage(102, "You chose a Kryss");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 11:                     //War Fork
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    WarFork wf = new WarFork();
                    wf.Identified = true;
                    wf.Name       = "War Fork";
                    wf.LootType   = LootType.Blessed;
                    from.EquipItem(wf);
                    from.SendMessage(102, "You chose a War Fork");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 12:                     //Dagger
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Dagger d = new Dagger();
                    d.Identified = true;
                    d.Name       = "Dagger";
                    d.LootType   = LootType.Blessed;
                    from.EquipItem(d);
                    from.SendMessage(102, "You chose a Dagger");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 13:                     //Pike
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Pike p = new Pike();
                    p.Identified = true;
                    p.Name       = "Pike";
                    p.LootType   = LootType.Blessed;
                    from.EquipItem(p);
                    from.SendMessage(102, "You chose a Pike");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 14:                     //Short Spear
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    ShortSpear ss = new ShortSpear();
                    ss.Identified = true;
                    ss.Name       = "Short Spear";
                    ss.LootType   = LootType.Blessed;
                    from.EquipItem(ss);
                    from.SendMessage(102, "You chose a Short Spear");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 15:                     //Long Spear
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Spear ls = new Spear();
                    ls.Identified = true;
                    ls.Name       = "Long Spear";
                    ls.LootType   = LootType.Blessed;
                    from.EquipItem(ls);
                    from.SendMessage(102, "You chose a Long Spear");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 16:                     //Pitchfork
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Pitchfork p = new Pitchfork();
                    p.Identified = true;
                    p.Name       = "Pitchfork";
                    p.LootType   = LootType.Blessed;
                    from.EquipItem(p);
                    from.SendMessage(102, "You chose a Pitchfork");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 17:                     //lance
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Lance l = new Lance();
                    l.Identified = true;
                    l.Name       = "Lance";
                    l.LootType   = LootType.Blessed;
                    from.EquipItem(l);
                    from.SendMessage(102, "You chose a Lance");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 18:                     //Sai's
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Sai s = new Sai();
                    s.Identified = true;
                    s.Name       = "Sai";
                    s.LootType   = LootType.Blessed;
                    from.EquipItem(s);
                    from.SendMessage(102, "You chose Sai's");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 19:                     //War Mace
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    WarMace wm = new WarMace();
                    wm.Identified = true;
                    wm.Name       = "War Mace";
                    wm.LootType   = LootType.Blessed;
                    from.EquipItem(wm);
                    from.SendMessage(102, "You chose a War Mace");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 20:                     //War Hammer
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    WarHammer wh = new WarHammer();
                    wh.Identified = true;
                    wh.Name       = "War Hammer";
                    wh.LootType   = LootType.Blessed;
                    from.EquipItem(wh);
                    from.SendMessage(102, "You chose a War Hammer");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 21:                     //Maul
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Maul w = new Maul();
                    w.Identified = true;
                    w.Name       = "Maul";
                    w.LootType   = LootType.Blessed;
                    from.EquipItem(w);
                    from.SendMessage(102, "You chose a Maul");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 22:                     //Club
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Club w = new Club();
                    w.Identified = true;
                    w.Name       = "Club";
                    w.LootType   = LootType.Blessed;
                    from.EquipItem(w);
                    from.SendMessage(102, "You chose a Club");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 23:                     //Q Staff
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    QuarterStaff w = new QuarterStaff();
                    w.Identified = true;
                    w.Name       = "Quarter Staff";
                    w.LootType   = LootType.Blessed;
                    from.EquipItem(w);
                    from.SendMessage(102, "You chose a Quarter Staff");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 24:                     //G Staff
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    GnarledStaff w = new GnarledStaff();
                    w.Identified = true;
                    w.Name       = "Gnarled Staff";
                    w.LootType   = LootType.Blessed;
                    from.EquipItem(w);
                    from.SendMessage(102, "You chose a Gnarled Staff");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 25:                     //B Staff
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    BlackStaff w = new BlackStaff();
                    w.Identified = true;
                    w.Name       = "BlackStaff";
                    w.LootType   = LootType.Blessed;
                    from.EquipItem(w);
                    from.SendMessage(102, "You chose a Black Staff");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 26:                     //Hammer Pick
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    HammerPick w = new HammerPick();
                    w.Identified = true;
                    w.Name       = "Hammer Pick";
                    w.LootType   = LootType.Blessed;
                    from.EquipItem(w);
                    from.SendMessage(102, "You chose a Hammer Pick");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 27:                     //War Axe
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    WarAxe w = new WarAxe();
                    w.Identified = true;
                    w.Name       = "War Axe";
                    w.LootType   = LootType.Blessed;
                    from.EquipItem(w);
                    from.SendMessage(102, "You chose a War Axe");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 28:                     //Bow
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Bow w = new Bow();
                    w.Identified = true;
                    w.Name       = "Bow";
                    w.LootType   = LootType.Blessed;
                    from.EquipItem(w);
                    from.SendMessage(102, "You chose a Bow");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 29:                     //Composite Bow
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    CompositeBow w = new CompositeBow();
                    w.Identified = true;
                    w.Name       = "Composite Bow";
                    w.LootType   = LootType.Blessed;
                    from.EquipItem(w);
                    from.SendMessage(102, "You chose a Composite Bow");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 30:                     //Crossbow
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Crossbow w = new Crossbow();
                    w.Identified = true;
                    w.Name       = "Crossbow";
                    w.LootType   = LootType.Blessed;
                    from.EquipItem(w);
                    from.SendMessage(102, "You chose a Crossbow");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 31:                     //Heavy Crossbow
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    HeavyCrossbow w = new HeavyCrossbow();
                    w.Identified = true;
                    w.Name       = "Heavy Crossbow";
                    w.LootType   = LootType.Blessed;
                    from.EquipItem(w);
                    from.SendMessage(102, "You chose a Heavy Crossbow");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 32:                     //Repeating Crossbow
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    RepeatingCrossbow w = new RepeatingCrossbow();
                    w.Identified = true;
                    w.Name       = "Repeating Crossbow";
                    w.LootType   = LootType.Blessed;
                    from.EquipItem(w);
                    from.SendMessage(102, "You chose a Repeating Crossbow");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }

            case 33:                     //Yumi
            {
                if (module.SkillPts < m_cost)
                {
                    from.SendMessage(37, "Not enough skill points!");
                }
                else
                {
                    module.SkillPts -= m_cost;
                    Yumi w = new Yumi();
                    w.Identified = true;
                    w.Name       = "Yumi";
                    w.LootType   = LootType.Blessed;
                    from.EquipItem(w);
                    from.SendMessage(102, "You chose a Yumi");
                }

                from.SendGump(new WepUpgradeGump(from));
                break;
            }
            }
        }
Exemplo n.º 12
0
        public HumanPaladin() : base(AIType.AI_Melee, FightMode.Agressor, 10, 1, 0.2, 0.4)
        {
            Title     = "the Righteous";
            SpeechHue = Utility.RandomDyedHue();
            Hue       = Utility.RandomSkinHue();
            Body      = 0x190;
            Level     = 10;

            if (this.Female = Utility.RandomBool())
            {
                Body = 0x191;
                Name = NameList.RandomName("female");
                FemalePlateChest fchest = new FemalePlateChest();
                fchest.Hue     = 2122;
                fchest.Movable = false;
                AddItem(fchest);
                Kilt kilt = new Kilt();
                kilt.Movable = false;
                kilt.Hue     = 2971;
                AddItem(kilt);
            }
            else
            {
                Body = 0x190;
                Name = NameList.RandomName("male");
                PlateChest chest = new PlateChest();
                chest.Hue     = 2122;
                chest.Movable = false;
                AddItem(chest);
                Surcoat coat = new Surcoat();
                coat.Hue     = 2971;
                coat.Movable = false;
                AddItem(coat);
                CloseHelm helm = new CloseHelm();
                helm.Hue     = 2122;
                helm.Movable = false;
                AddItem(helm);
            }

            Fame  = 2000;
            Karma = 8000;

            new Nightmare().Rider = this;

            PlateArms arms = new PlateArms();

            arms.Hue     = 2122;
            arms.Movable = false;
            AddItem(arms);
            PlateLegs legs = new PlateLegs();

            legs.Hue     = 2122;
            legs.Movable = false;
            AddItem(legs);
            PlateGorget gorget = new PlateGorget();

            gorget.Hue     = 2122;
            gorget.Movable = false;
            AddItem(gorget);
            PlateGloves gloves = new PlateGloves();

            gloves.Hue     = 2122;
            gloves.Movable = false;
            AddItem(gloves);

            Cloak cloak = new Cloak();

            cloak.Hue     = 2971;
            cloak.Movable = false;
            AddItem(cloak);

            PackGold(10, 17);

            SetSkill(SkillName.MagicResist, 80.0, 90.5);
            SetSkill(SkillName.Swords, 85.0, 101.5);
            SetSkill(SkillName.Tactics, 85.0, 93.5);
            SetSkill(SkillName.Wrestling, 65.0, 72.5);
            SetSkill(SkillName.Fencing, 85.0, 100.5);
            SetSkill(SkillName.Macing, 70.3, 95.5);

            SetStr(316, 440);
            SetDex(161, 223);
            SetInt(141, 165);
            SetHits(380, 433);
            SetDamage(12, 20);

            switch (Utility.Random(8))
            {
            case 0: WarMace wmace = new WarMace();
                wmace.Movable = false;
                wmace.Hue     = 2122;
                AddItem(wmace);

                OrderShield ashield = new OrderShield();
                ashield.Movable = false;
                ashield.Hue     = 2122;
                AddItem(ashield);
                break;

            case 1: Bardiche bd = new Bardiche();
                bd.Movable = false;
                bd.Hue     = 2122;
                AddItem(bd);
                break;

            case 2: Broadsword bsword = new Broadsword();
                bsword.Movable = false;
                bsword.Hue     = 2122;
                AddItem(bsword);

                OrderShield bshield = new OrderShield();
                bshield.Movable = false;
                bshield.Hue     = 2122;
                AddItem(bshield);
                break;

            case 3: Pike pike = new Pike();
                pike.Movable = false;
                pike.Hue     = 2122;
                AddItem(pike);
                break;

            case 4: Halberd hbrd = new Halberd();
                hbrd.Movable = false;
                hbrd.Hue     = 2122;
                AddItem(hbrd);
                break;

            case 5: Maul maul = new Maul();
                maul.Movable = false;
                maul.Hue     = 2122;
                AddItem(maul);

                OrderShield cshield = new OrderShield();
                cshield.Movable = false;
                cshield.Hue     = 2122;
                AddItem(cshield);
                break;

            case 6: VikingSword vsword = new VikingSword();
                vsword.Movable = false;
                vsword.Hue     = 2122;
                AddItem(vsword);

                OrderShield dshield = new OrderShield();
                dshield.Movable = false;
                dshield.Hue     = 2122;
                AddItem(dshield);
                break;

            case 7: Lance lance = new Lance();
                lance.Movable = false;
                lance.Hue     = 2122;
                AddItem(lance);
                break;
            }

            AddItem(Server.Items.Hair.GetRandomHair(Female));
        }
Exemplo n.º 13
0
        public ElvenFighter() : base(AIType.AI_Melee, FightMode.Agressor, 10, 1, 0.2, 0.4)
        {
            Name      = NameList.RandomName("elfmale");
            Title     = "the Fighter";
            SpeechHue = Utility.RandomDyedHue();
            Hue       = 349;
            Body      = 0x190;
            Level     = 7;
            NameHue   = 2454;

            LongHair hair = new LongHair(Utility.RandomNeutralHue());

            hair.Movable = false;
            AddItem(hair);
            ChainChest chest = new ChainChest();

            chest.Hue     = 0x9FF;
            chest.Movable = false;
            AddItem(chest);
            RingmailArms arms = new RingmailArms();

            arms.Hue     = 0x9FF;
            arms.Movable = false;
            AddItem(arms);
            RingmailGloves gloves = new RingmailGloves();

            gloves.Hue     = 0x9FF;
            gloves.Movable = false;
            AddItem(gloves);
            ChainLegs legs = new ChainLegs();

            legs.Hue     = 0x9FF;
            legs.Movable = false;
            AddItem(legs);
            Cloak cloak = new Cloak();

            cloak.Hue     = 0x9C4;
            cloak.Movable = false;
            AddItem(cloak);
            WoodenKiteShield shield = new WoodenKiteShield();

            shield.Hue     = 0x9FF;
            shield.Movable = false;
            AddItem(shield);
            Boots boots = new Boots();

            boots.Hue     = 0x9C4;
            boots.Movable = false;
            AddItem(boots);

            PackGold(6, 8);

            SetSkill(SkillName.MagicResist, 50.0, 61.5);
            SetSkill(SkillName.Swords, 70.0, 90.5);
            SetSkill(SkillName.Tactics, 65.0, 87.5);
            SetSkill(SkillName.Wrestling, 25.0, 47.5);

            SetStr(90, 110);
            SetDex(161, 125);
            SetInt(61, 85);
            SetHits(130, 160);
            SetDamage(10, 16);

            Karma = 2000;
            Fame  = 1000;

            switch (Utility.Random(4))
            {
            case 0: Scimitar scim = new Scimitar();
                scim.Movable = false;
                AddItem(scim);
                break;

            case 1: Longsword lsword = new Longsword();
                lsword.Movable = false;
                AddItem(lsword);
                break;

            case 2: Broadsword bsword = new Broadsword();
                bsword.Movable = false;
                AddItem(bsword);
                break;

            case 3: Cutlass cl = new Cutlass();
                cl.Movable = false;
                AddItem(cl);
                break;
            }
        }
Exemplo n.º 14
0
        public HumanGuard() : base(AIType.AI_Melee, FightMode.Agressor, 10, 1, 0.2, 0.4)
        {
            Title     = "the Guard";
            SpeechHue = Utility.RandomDyedHue();
            Hue       = Utility.RandomSkinHue();
            Body      = 0x190;
            Level     = 8;

            if (this.Female = Utility.RandomBool())
            {
                Body = 0x191;
                Name = NameList.RandomName("female");
            }
            else
            {
                Body = 0x190;
                Name = NameList.RandomName("male");
            }

            Fame  = 1000;
            Karma = 5000;

            RingmailArms arms = new RingmailArms();

            arms.Hue     = 0xA13;
            arms.Movable = false;
            AddItem(arms);
            ChainChest chest = new ChainChest();

            chest.Hue     = 0xA0B;
            chest.Movable = false;
            AddItem(chest);
            ChainLegs legs = new ChainLegs();

            legs.Hue     = 0xA13;
            legs.Movable = false;
            AddItem(legs);
            RingmailGloves gloves = new RingmailGloves();

            gloves.Hue     = 0xA13;
            gloves.Movable = false;
            AddItem(gloves);
            MetalShield shield = new MetalShield();

            shield.Hue     = 0xA0B;
            shield.Movable = false;
            AddItem(shield);

            Cloak cloak = new Cloak();

            cloak.Hue     = 0x95D;
            cloak.Movable = false;
            AddItem(cloak);
            BodySash sash = new BodySash();

            sash.Hue     = 0x95D;
            sash.Movable = false;
            AddItem(sash);
            Boots boots = new Boots();

            boots.Hue     = 0x95D;
            boots.Movable = false;
            AddItem(boots);

            PackGold(6, 8);

            SetSkill(SkillName.MagicResist, 50.0, 61.5);
            SetSkill(SkillName.Swords, 70.0, 90.5);
            SetSkill(SkillName.Tactics, 65.0, 87.5);
            SetSkill(SkillName.Wrestling, 25.0, 47.5);
            SetSkill(SkillName.Macing, 70.0, 90.7);

            SetStr(130, 150);
            SetDex(98, 115);
            SetInt(61, 85);
            SetHits(145, 168);
            SetDamage(9, 16);

            switch (Utility.Random(7))
            {
            case 0: WarMace wmace = new WarMace();
                wmace.Movable = false;
                AddItem(wmace);
                break;

            case 1: Bardiche bd = new Bardiche();
                bd.Movable = false;
                AddItem(bd);
                break;

            case 2: Broadsword bsword = new Broadsword();
                bsword.Movable = false;
                AddItem(bsword);
                break;

            case 3: Pike pike = new Pike();
                pike.Movable = false;
                AddItem(pike);
                break;

            case 4: Halberd hbrd = new Halberd();
                hbrd.Movable = false;
                AddItem(hbrd);
                break;

            case 5: Maul maul = new Maul();
                maul.Movable = false;
                AddItem(maul);
                break;

            case 6: VikingSword vsword = new VikingSword();
                vsword.Movable = false;
                AddItem(vsword);
                break;
            }

            AddItem(Server.Items.Hair.GetRandomHair(Female));
        }
Exemplo n.º 15
0
            public InternalBuyInfo()
            {
                //Tools
                Add(new GenericBuyInfo("Tongs", typeof(Tongs), Tongs.GetSBPurchaseValue(), 50, 0xFBB, 0));
                Add(new GenericBuyInfo("Smith's Hammer", typeof(SmithHammer), SmithHammer.GetSBPurchaseValue(), 50, 0x13E3, 0));

                //Armor
                Add(new GenericBuyInfo("Ringmail Helm", typeof(RingmailHelm), RingmailHelm.GetSBPurchaseValue(), 25, 5131, 0));
                Add(new GenericBuyInfo("Ringmail Gorget", typeof(RingmailGorget), RingmailGorget.GetSBPurchaseValue(), 25, 5078, 1812));
                Add(new GenericBuyInfo("Ringmail Arms", typeof(RingmailArms), RingmailArms.GetSBPurchaseValue(), 25, 0x13EE, 0));
                Add(new GenericBuyInfo("Ringmail Gloves", typeof(RingmailGloves), RingmailGloves.GetSBPurchaseValue(), 25, 0x13eb, 0));
                Add(new GenericBuyInfo("Ringmail Chest", typeof(RingmailChest), RingmailChest.GetSBPurchaseValue(), 25, 0x13ec, 0));
                Add(new GenericBuyInfo("Ringmail Legs", typeof(RingmailLegs), RingmailLegs.GetSBPurchaseValue(), 25, 0x13F0, 0));

                Add(new GenericBuyInfo("Chainmail Coif", typeof(ChainmailCoif), ChainmailCoif.GetSBPurchaseValue(), 25, 0x13BB, 0));
                Add(new GenericBuyInfo("Chainmail Gorget", typeof(ChainmailGorget), ChainmailGorget.GetSBPurchaseValue(), 25, 5063, 2500));
                Add(new GenericBuyInfo("Chainmail Arms", typeof(ChainmailArms), ChainmailArms.GetSBPurchaseValue(), 25, 5103, 2500));
                Add(new GenericBuyInfo("Chainmail Gloves", typeof(ChainmailGloves), ChainmailGloves.GetSBPurchaseValue(), 25, 5106, 2500));
                Add(new GenericBuyInfo("Chainmail Chest", typeof(ChainmailChest), ChainmailChest.GetSBPurchaseValue(), 25, 0x13BF, 0));
                Add(new GenericBuyInfo("Chainmail Legs", typeof(ChainmailLegs), ChainmailLegs.GetSBPurchaseValue(), 25, 0x13BE, 0));

                Add(new GenericBuyInfo("Platemail Helm", typeof(PlateHelm), PlateHelm.GetSBPurchaseValue(), 25, 0x1412, 0));
                Add(new GenericBuyInfo("Platemail Gorget", typeof(PlateGorget), PlateGorget.GetSBPurchaseValue(), 25, 0x1413, 0));
                Add(new GenericBuyInfo("Platemail Arms", typeof(PlateArms), PlateArms.GetSBPurchaseValue(), 25, 0x1410, 0));
                Add(new GenericBuyInfo("Platemail Gloves", typeof(PlateGloves), PlateGloves.GetSBPurchaseValue(), 25, 0x1414, 0));
                Add(new GenericBuyInfo("Platemail PlateChest", typeof(PlateChest), PlateChest.GetSBPurchaseValue(), 25, 0x1415, 0));
                Add(new GenericBuyInfo("Female Plate Chest", typeof(FemalePlateChest), FemalePlateChest.GetSBPurchaseValue(), 25, 7173, 0));
                Add(new GenericBuyInfo("Platemail Legs", typeof(PlateLegs), PlateLegs.GetSBPurchaseValue(), 25, 0x1411, 0));

                Add(new GenericBuyInfo("Bascinet", typeof(Bascinet), Bascinet.GetSBPurchaseValue(), 25, 5132, 0));
                Add(new GenericBuyInfo("Close Helm", typeof(CloseHelm), CloseHelm.GetSBPurchaseValue(), 25, 5129, 0));
                Add(new GenericBuyInfo("Norse Helm", typeof(NorseHelm), NorseHelm.GetSBPurchaseValue(), 25, 5135, 0));

                Add(new GenericBuyInfo("Buckler", typeof(Buckler), Buckler.GetSBPurchaseValue(), 25, 0x1B73, 0));
                Add(new GenericBuyInfo("Metal Shield", typeof(MetalShield), MetalShield.GetSBPurchaseValue(), 25, 0x1B7B, 0));
                Add(new GenericBuyInfo("Bronze Shield", typeof(BronzeShield), BronzeShield.GetSBPurchaseValue(), 25, 0x1B72, 0));
                Add(new GenericBuyInfo("Metal Kite Shield", typeof(MetalKiteShield), MetalKiteShield.GetSBPurchaseValue(), 25, 0x1B74, 0));
                Add(new GenericBuyInfo("Heater Shield", typeof(HeaterShield), HeaterShield.GetSBPurchaseValue(), 25, 0x1B76, 0));

                //Weapons
                Add(new GenericBuyInfo("Dagger", typeof(Dagger), Dagger.GetSBPurchaseValue(), 25, 0xF52, 0));
                Add(new GenericBuyInfo("Kryss", typeof(Kryss), Kryss.GetSBPurchaseValue(), 25, 0x1401, 0));
                Add(new GenericBuyInfo("War Fork", typeof(WarFork), WarFork.GetSBPurchaseValue(), 25, 0x1405, 0));
                Add(new GenericBuyInfo("Short Spear", typeof(ShortSpear), ShortSpear.GetSBPurchaseValue(), 25, 0x1403, 0));
                Add(new GenericBuyInfo("Pitchfork", typeof(Pitchfork), Pitchfork.GetSBPurchaseValue(), 25, 0xE87, 0));
                Add(new GenericBuyInfo("Spear", typeof(Spear), Spear.GetSBPurchaseValue(), 25, 0xF62, 0));

                Add(new GenericBuyInfo("Hammer Pick", typeof(HammerPick), HammerPick.GetSBPurchaseValue(), 25, 0x143D, 0));
                Add(new GenericBuyInfo("War Axe", typeof(WarAxe), WarAxe.GetSBPurchaseValue(), 25, 0x13B0, 0));
                Add(new GenericBuyInfo("Mace", typeof(Mace), Mace.GetSBPurchaseValue(), 25, 0xF5C, 0));
                Add(new GenericBuyInfo("Maul", typeof(Maul), Maul.GetSBPurchaseValue(), 25, 0x143B, 0));
                Add(new GenericBuyInfo("WarHammer", typeof(WarHammer), WarHammer.GetSBPurchaseValue(), 25, 0x1439, 0));
                Add(new GenericBuyInfo("War Mace", typeof(WarMace), WarMace.GetSBPurchaseValue(), 25, 0x1407, 0));

                Add(new GenericBuyInfo("Butcher Knife", typeof(ButcherKnife), ButcherKnife.GetSBPurchaseValue(), 25, 0x13F6, 0));
                Add(new GenericBuyInfo("Skinning Knife", typeof(SkinningKnife), SkinningKnife.GetSBPurchaseValue(), 25, 0xEC4, 0));
                Add(new GenericBuyInfo("Cleaver", typeof(Cleaver), Cleaver.GetSBPurchaseValue(), 25, 0xEC3, 0));
                Add(new GenericBuyInfo("Cutlass", typeof(Cutlass), Cutlass.GetSBPurchaseValue(), 25, 0x1441, 0));
                Add(new GenericBuyInfo("Katana", typeof(Katana), Katana.GetSBPurchaseValue(), 25, 0x13FF, 0));
                Add(new GenericBuyInfo("Scimitar", typeof(Scimitar), Scimitar.GetSBPurchaseValue(), 25, 0x13B6, 0));
                Add(new GenericBuyInfo("Broadsword", typeof(Broadsword), Broadsword.GetSBPurchaseValue(), 25, 0xF5E, 0));
                Add(new GenericBuyInfo("Longsword", typeof(Longsword), Longsword.GetSBPurchaseValue(), 25, 0xF61, 0));
                Add(new GenericBuyInfo("Viking Sword", typeof(VikingSword), VikingSword.GetSBPurchaseValue(), 25, 0x13B9, 0));
                Add(new GenericBuyInfo("Axe", typeof(Axe), Axe.GetSBPurchaseValue(), 25, 0xF49, 0));
                Add(new GenericBuyInfo("Battle Axe", typeof(BattleAxe), BattleAxe.GetSBPurchaseValue(), 25, 0xF47, 0));
                Add(new GenericBuyInfo("Double Axe", typeof(DoubleAxe), DoubleAxe.GetSBPurchaseValue(), 25, 0xF4B, 0));
                Add(new GenericBuyInfo("Executioner's Axe", typeof(ExecutionersAxe), ExecutionersAxe.GetSBPurchaseValue(), 25, 0xF45, 0));
                Add(new GenericBuyInfo("Large Battle Axe", typeof(LargeBattleAxe), LargeBattleAxe.GetSBPurchaseValue(), 25, 0x13FB, 0));
                Add(new GenericBuyInfo("Two-Handed Axe", typeof(TwoHandedAxe), TwoHandedAxe.GetSBPurchaseValue(), 25, 0x1443, 0));
                Add(new GenericBuyInfo("Bardiche", typeof(Bardiche), Bardiche.GetSBPurchaseValue(), 25, 0xF4D, 0));
                Add(new GenericBuyInfo("Halberd", typeof(Halberd), Halberd.GetSBPurchaseValue(), 25, 0x143E, 0));
            }
Exemplo n.º 16
0
            public InternalSellInfo()
            {
                //Tools
                Add(typeof(Tongs), Tongs.GetSBSellValue());
                Add(typeof(SmithHammer), SmithHammer.GetSBSellValue());

                //Armor
                Add(typeof(RingmailHelm), RingmailHelm.GetSBSellValue());
                Add(typeof(RingmailGorget), RingmailGorget.GetSBSellValue());
                Add(typeof(RingmailArms), RingmailArms.GetSBSellValue());
                Add(typeof(RingmailGloves), RingmailGloves.GetSBSellValue());
                Add(typeof(RingmailChest), RingmailChest.GetSBSellValue());
                Add(typeof(RingmailLegs), RingmailLegs.GetSBSellValue());

                Add(typeof(ChainmailCoif), ChainmailCoif.GetSBSellValue());
                Add(typeof(ChainmailGorget), ChainmailGorget.GetSBSellValue());
                Add(typeof(ChainmailArms), ChainmailArms.GetSBSellValue());
                Add(typeof(ChainmailGloves), ChainmailGloves.GetSBSellValue());
                Add(typeof(ChainmailChest), ChainmailChest.GetSBSellValue());
                Add(typeof(ChainmailLegs), ChainmailLegs.GetSBSellValue());

                Add(typeof(PlateHelm), PlateHelm.GetSBSellValue());
                Add(typeof(PlateGorget), PlateGorget.GetSBSellValue());
                Add(typeof(PlateArms), PlateArms.GetSBSellValue());
                Add(typeof(PlateGloves), PlateGloves.GetSBSellValue());
                Add(typeof(PlateChest), PlateChest.GetSBSellValue());
                Add(typeof(FemalePlateChest), FemalePlateChest.GetSBSellValue());
                Add(typeof(PlateLegs), PlateLegs.GetSBSellValue());

                Add(typeof(Bascinet), Bascinet.GetSBSellValue());
                Add(typeof(CloseHelm), CloseHelm.GetSBSellValue());
                Add(typeof(NorseHelm), NorseHelm.GetSBSellValue());

                Add(typeof(Buckler), Buckler.GetSBSellValue());
                Add(typeof(MetalShield), MetalShield.GetSBSellValue());
                Add(typeof(BronzeShield), BronzeShield.GetSBSellValue());
                Add(typeof(MetalKiteShield), MetalKiteShield.GetSBSellValue());
                Add(typeof(HeaterShield), HeaterShield.GetSBSellValue());

                //Weapons
                Add(typeof(Dagger), Dagger.GetSBSellValue());
                Add(typeof(Kryss), Kryss.GetSBSellValue());
                Add(typeof(WarFork), WarFork.GetSBSellValue());
                Add(typeof(ShortSpear), ShortSpear.GetSBSellValue());
                Add(typeof(Pitchfork), Pitchfork.GetSBSellValue());
                Add(typeof(Spear), Spear.GetSBSellValue());

                Add(typeof(HammerPick), HammerPick.GetSBSellValue());
                Add(typeof(WarAxe), WarAxe.GetSBSellValue());
                Add(typeof(Mace), Mace.GetSBSellValue());
                Add(typeof(Maul), Maul.GetSBSellValue());
                Add(typeof(WarHammer), WarHammer.GetSBSellValue());
                Add(typeof(WarMace), WarMace.GetSBSellValue());

                Add(typeof(ButcherKnife), ButcherKnife.GetSBSellValue());
                Add(typeof(SkinningKnife), SkinningKnife.GetSBSellValue());
                Add(typeof(Cleaver), Cleaver.GetSBSellValue());
                Add(typeof(Cutlass), Cutlass.GetSBSellValue());
                Add(typeof(Katana), Katana.GetSBSellValue());
                Add(typeof(Scimitar), Scimitar.GetSBSellValue());
                Add(typeof(Broadsword), Broadsword.GetSBSellValue());
                Add(typeof(Longsword), Longsword.GetSBSellValue());
                Add(typeof(VikingSword), VikingSword.GetSBSellValue());
                Add(typeof(Axe), Axe.GetSBSellValue());
                Add(typeof(BattleAxe), BattleAxe.GetSBSellValue());
                Add(typeof(DoubleAxe), DoubleAxe.GetSBSellValue());
                Add(typeof(ExecutionersAxe), ExecutionersAxe.GetSBSellValue());
                Add(typeof(LargeBattleAxe), LargeBattleAxe.GetSBSellValue());
                Add(typeof(TwoHandedAxe), TwoHandedAxe.GetSBSellValue());
                Add(typeof(Bardiche), Bardiche.GetSBSellValue());
                Add(typeof(Halberd), Halberd.GetSBSellValue());
            }
Exemplo n.º 17
0
        static void PlayerChooseLoadout()
        {
            Render  code  = new Render();
            Program code1 = new Program();

            code.RenderPlayerChoosing(1);
            string info2 = Console.ReadLine();
            int    playerInput;

            try
            {
                playerInput = Int32.Parse(info2);
            }
            catch
            {
                Console.WriteLine("Creation Error... Shutting...Down....");
                PlayerChooseLoadout();
                return;
            }
            switch (playerInput)
            {
            case 1:
                player1.classType = "Warrior";
                Console.WriteLine("Warrior it is...");
                break;

            case 2:
                player1.classType = "Mage";
                Console.WriteLine("Mage it is...");
                break;

            case 3:
                player1.classType = "Rogue";
                Console.WriteLine("Rogue it is...");
                break;

            default:
                Console.WriteLine("Creation Error... Shutting...Down....");
                PlayerChooseLoadout();
                return;
            }

            code.RenderPlayerChoosing(2);
            string info = Console.ReadLine();

            try
            {
                playerInput = Int32.Parse(info);
            }
            catch
            {
                Console.WriteLine("Creation Error... Shutting...Down....");
                PlayerChooseLoadout();
                return;
            }

            int         weaponLevel = GetRandom(1, 5);
            ItemFactory code3       = new ItemFactory();

            switch (playerInput)
            {
            case 1:
                Broadsword PlayerWeapon = new Broadsword("", weaponLevel);
                player1.EntityWeapon = PlayerWeapon;
                Console.WriteLine("Broadsword it is...");
                break;

            case 2:
                Mace PlayerWeapon2 = new Mace("", weaponLevel);
                player1.EntityWeapon = PlayerWeapon2;
                Console.WriteLine("Mace it is...");
                break;

            case 3:
                Daggers PlayerWeapon3 = new Daggers("", weaponLevel);
                player1.EntityWeapon = PlayerWeapon3;
                Console.WriteLine("Twin Daggers it is...");
                break;

            case 4:
                Axe PlayerWeapon4 = new Axe("", weaponLevel);
                player1.EntityWeapon = PlayerWeapon4;
                Console.WriteLine("War Axe it is...");
                break;

            case 5:
                Weapon PlayerWeapon5 = code3.CreateRandomWeapon(weaponLevel);
                player1.EntityWeapon = PlayerWeapon5;
                Console.WriteLine(player1.EntityWeapon.name + " it is...");
                break;

            default:
                Console.WriteLine("Creation Error... Shutting...Down....");
                PlayerChooseLoadout();
                return;
            }

            code.RenderPlayerChoosing(3);
            string info1 = Console.ReadLine();

            try
            {
                playerInput = Int32.Parse(info1);
            }
            catch
            {
                Console.WriteLine("Creation Error... Restarting...");
                PlayerChooseLoadout();
                return;
            }
            int armorLevel = GetRandom(1, 5);

            switch (playerInput)
            {
            case 1:
                Chainmail PlayerArmor = new Chainmail("", armorLevel);
                player1.EntityArmor = PlayerArmor;
                Console.WriteLine("Chainmail it is...");
                break;

            case 2:
                Leather PlayerArmor2 = new Leather("", armorLevel);
                player1.EntityArmor = PlayerArmor2;
                Console.WriteLine("Thick Leather it is...");
                break;

            case 3:
                Cloth PlayerArmor3 = new Cloth("", armorLevel);
                player1.EntityArmor = PlayerArmor3;
                Console.WriteLine("Sleek Silken Thinking Cloth... is that even armor?");
                break;

            case 4:
                Plate PlayerArmor4 = new Plate("", armorLevel);
                player1.EntityArmor = PlayerArmor4;
                Console.WriteLine("Plate it is...");
                break;

            case 5:
                Armor PlayerArmor5 = code3.CreateRandomArmor(armorLevel);
                player1.EntityArmor = PlayerArmor5;
                Console.WriteLine(player1.EntityArmor.name + " it is...");
                break;

            default:
                Console.WriteLine("Creation Error... Restarting...");
                PlayerChooseLoadout();
                return;
            }
            code.RenderPlayerChoosing(4);
            string info3 = Console.ReadLine();

            try
            {
                playerInput = Int32.Parse(info3);
            }
            catch
            {
                Console.WriteLine("Creation Error... Restarting...");
                PlayerChooseLoadout();
                return;
            }
            int potionLevel = GetRandom(1, 5);

            switch (playerInput)
            {
            case 1:
                Health_Potion playerPotion = new Health_Potion("Health_Potion", potionLevel);
                player1.entityPotions.Add(playerPotion);
                Console.WriteLine("Health Potion it is...");
                break;

            case 2:
                Fire_Potion playerPotion1 = new Fire_Potion("Fire_Potion", potionLevel);
                player1.entityPotions.Add(playerPotion1);
                Console.WriteLine("Fire Potion it is...");
                break;

            default:
                Console.WriteLine("Creation Error... Restarting...");
                PlayerChooseLoadout();
                return;
            }
            while (player1.entityPotions.Count < 4)
            {
                Potion empty = new Potion("Empty_Potion", player1.entityPotions.Count + 1);
                player1.entityPotions.Add(empty);
            }
            ColorWriter(ConsoleColor.Gray, "ready yourself, Gladiator...\n");
            Thread.Sleep(1000);
            int howManyMonsters = GetRandom(1, 5);

            MonsterIntro(player1, howManyMonsters);
        }
Exemplo n.º 18
0
        public EvilPaladin() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Body  = 400;
            Name  = "Hinton";
            Title = "The Evil Paladin";
            Hue   = 0;

            SetStr(200, 250);
            SetDex(100, 125);
            SetInt(180, 200);

            SetHits(1900, 2000);

            SetDamage(25, 28);

            SetDamageType(ResistanceType.Physical, 100);

            SetResistance(ResistanceType.Physical, 75);
            SetResistance(ResistanceType.Fire, 60);
            SetResistance(ResistanceType.Cold, 60);
            SetResistance(ResistanceType.Poison, 60);
            SetResistance(ResistanceType.Energy, 60);

            SetSkill(SkillName.Wrestling, 100.0);
            SetSkill(SkillName.Swords, 120);
            SetSkill(SkillName.Anatomy, 120);
            SetSkill(SkillName.MagicResist, 90.1, 100.0);
            SetSkill(SkillName.Tactics, 90.1, 100.0);

            Fame  = 10000;
            Karma = -10000;

            VirtualArmor = 45;

            Broadsword weapon = new Broadsword();

            weapon.Hue     = 2306;
            weapon.Movable = false;
            AddItem(weapon);

            PlateGorget gorget = new PlateGorget();

            gorget.Hue     = 2306;
            gorget.Movable = false;
            AddItem(gorget);

            MetalShield shield = new MetalShield();

            shield.Hue     = 2306;
            shield.Movable = false;
            AddItem(shield);

            PlateHelm helm = new PlateHelm();

            helm.Hue     = 2306;
            helm.Movable = false;
            AddItem(helm);

            PlateArms arms = new PlateArms();

            arms.Hue     = 2306;
            arms.Movable = false;
            AddItem(arms);

            PlateGloves gloves = new PlateGloves();

            gloves.Hue     = 2306;
            gloves.Movable = false;
            AddItem(gloves);

            PlateChest tunic = new PlateChest();

            tunic.Hue     = 2306;
            tunic.Movable = false;
            AddItem(tunic);

            PlateLegs legs = new PlateLegs();

            legs.Hue     = 2306;
            legs.Movable = false;
            AddItem(legs);

            AddItem(new Boots());
            Hue = 2306;
            //PackGold( 3500,4000 );
            PackItem(new LionsCourageMedallion());
        }
Exemplo n.º 19
0
        private void AddEquipment(GuardType type)
        {
            AddItem(new Boots(Faction.primaryHue));
            AddItem(new Cloak(Faction.primaryHue));
            AddItem(new BodySash(Faction.primaryHue));

            switch (type)
            {
            default:
            case GuardType.Archer:
            {
                AddItem(new LeatherLegs());
                AddItem(new StuddedChest());
                AddItem(new LeatherGloves());
                AddItem(new LeatherArms());

                Bow bow = new Bow();
                bow.Quality = WeaponQuality.Exceptional;

                AddItem(bow);
                AddToBackpack(new Arrow(200));
            } break;

            case GuardType.Cavalry:
            {
                AddItem(new PlateLegs());
                AddItem(new RingmailChest());
                AddItem(new FancyShirt());
                AddItem(new PlateGorget());
                AddItem(new RingmailGloves());

                BaseWeapon weapon;

                if (Utility.RandomBool())
                {
                    weapon = new Halberd();
                }
                else
                {
                    weapon = new Bardiche();
                }

                weapon.Quality  = WeaponQuality.Exceptional;
                weapon.Resource = CraftResource.Gold;

                weapon.Speed += (Core.AOS ? 5 : -1);

                AddItem(weapon);
            } break;

            case GuardType.Pikeman:
            {
                AddItem(new RingmailLegs());
                AddItem(new RingmailChest());
                AddItem(new RingmailArms());
                AddItem(new RingmailGloves());
                AddItem(new PlateGorget());

                if (Utility.RandomBool())
                {
                    AddItem(new CloseHelm());
                }
                else
                {
                    AddItem(new NorseHelm());
                }

                AddItem(new Pike());
            } break;

            case GuardType.Swordsman:
            {
                AddItem(new ChainLegs());
                AddItem(new ChainChest());
                AddItem(new RingmailArms());
                AddItem(new RingmailGloves());
                AddItem(new PlateGorget());

                switch (Utility.Random(3))
                {
                case 0: AddItem(new CloseHelm()); break;

                case 1: AddItem(new NorseHelm()); break;

                case 2: AddItem(new PlateHelm()); break;
                }

                BaseWeapon weapon;

                switch (Utility.Random(4))
                {
                default:
                case 0: weapon = new Broadsword(); break;

                case 1: weapon = new Longsword(); break;

                case 2: weapon = new Katana(); break;

                case 3: weapon = new Axe(); break;
                }

                weapon.Quality  = WeaponQuality.Exceptional;
                weapon.Resource = CraftResource.Gold;
                weapon.Layer    = Layer.OneHanded;

                AddItem(weapon);

                if (Utility.RandomBool())
                {
                    AddItem(new HeaterShield());
                }
                else
                {
                    AddItem(new MetalKiteShield());
                }
            }
            break;

            case GuardType.Wizard:
            {
                AddItem(new WizardsHat(Faction.primaryHue));
                AddItem(new Robe(Faction.primaryHue));

                GnarledStaff staff = new GnarledStaff();
                staff.Attributes.SpellDamage = Utility.RandomMinMax(4, 8);

                AddItem(staff);
            }
            break;

            case GuardType.Medic:
            {
                AddItem(new Bandana(Faction.primaryHue));
                AddItem(new Robe(Faction.primaryHue));
            }
            break;
            }
        }
Exemplo n.º 20
0
        public Mercenary()
            : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            this.Title = "the Mercenary";

            this.SpeechHue = Utility.RandomDyedHue();

            this.Hue = Utility.RandomSkinHue();

            this.Female = false;
            this.Body   = 0x190;
            this.Name   = NameList.RandomName("male");

            Utility.AssignRandomHair(this);
            Utility.AssignRandomFacialHair(this, this.HairHue);

            this.AddItem(new ThighBoots(0x1BB));
            this.AddItem(new LeatherChest());
            this.AddItem(new LeatherArms());
            this.AddItem(new LeatherLegs());
            this.AddItem(new LeatherCap());
            this.AddItem(new LeatherGloves());
            this.AddItem(new LeatherGorget());

            Item weapon;

            switch (Utility.Random(6))
            {
            case 0:
                weapon = new Broadsword();
                break;

            case 1:
                weapon = new Cutlass();
                break;

            case 2:
                weapon = new Katana();
                break;

            case 3:
                weapon = new Longsword();
                break;

            case 4:
                weapon = new Scimitar();
                break;

            default:
                weapon = new VikingSword();
                break;
            }
            weapon.Movable = false;
            this.AddItem(weapon);

            Item shield = new BronzeShield();

            shield.Movable = false;
            this.AddItem(shield);

            this.SetStr(150);
            this.SetDex(100);
            this.SetInt(25);

            this.SetHits(150);

            this.SetDamage(8, 15);

            this.SetDamageType(ResistanceType.Physical, 100);

            this.SetResistance(ResistanceType.Physical, 50, 60);
            this.SetResistance(ResistanceType.Fire, 45, 55);
            this.SetResistance(ResistanceType.Cold, 50, 60);
            this.SetResistance(ResistanceType.Poison, 40, 50);
            this.SetResistance(ResistanceType.Energy, 45, 55);

            this.SetSkill(SkillName.MagicResist, 65.1, 80.0);
            this.SetSkill(SkillName.Anatomy, 65.1, 80.0);
            this.SetSkill(SkillName.Healing, 65.1, 80.0);
            this.SetSkill(SkillName.Swords, 65.1, 80.0);
            this.SetSkill(SkillName.Tactics, 65.1, 80.0);
            this.SetSkill(SkillName.Parry, 65.1, 80.0);

            this.Fame  = 3000;
            this.Karma = 3000;

            this.VirtualArmor = 25;

            new InternalTimer(this).Start();
        }
Exemplo n.º 21
0
        public PaladinOfPride() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Body  = 0x190;
            Name  = "Frothos";
            Title = "Master of Pride";
            Hue   = 0;

            SetStr(400, 450);
            SetDex(151, 165);
            SetInt(180, 200);

            SetHits(5000, 5500);

            SetDamage(25, 35);

            SetDamageType(ResistanceType.Physical, 100);
            SetDamageType(ResistanceType.Cold, 25);

            SetResistance(ResistanceType.Physical, 75);
            SetResistance(ResistanceType.Fire, 60);
            SetResistance(ResistanceType.Cold, 60);
            SetResistance(ResistanceType.Poison, 60);
            SetResistance(ResistanceType.Energy, 60);

            SetSkill(SkillName.Wrestling, 100.0);
            SetSkill(SkillName.Swords, 120.1, 130.0);
            SetSkill(SkillName.Anatomy, 120.1, 130.0);
            SetSkill(SkillName.MagicResist, 90.1, 100.0);
            SetSkill(SkillName.Tactics, 90.1, 100.0);

            Fame  = 10000;
            Karma = -10000;

            VirtualArmor = 65;

            Broadsword weapon = new Broadsword();

            weapon.Hue     = 1153;
            weapon.Movable = false;
            AddItem(weapon);

            PlateGorget gorget = new PlateGorget();

            gorget.Hue     = 1153;
            gorget.Movable = false;
            AddItem(gorget);

            MetalShield shield = new MetalShield();

            shield.Hue     = 1153;
            shield.Movable = false;
            AddItem(shield);

            PlateHelm helm = new PlateHelm();

            helm.Hue     = 1153;
            helm.Movable = false;
            AddItem(helm);

            PlateArms arms = new PlateArms();

            arms.Hue     = 1153;
            arms.Movable = false;
            AddItem(arms);

            PlateGloves gloves = new PlateGloves();

            gloves.Hue     = 1153;
            gloves.Movable = false;
            AddItem(gloves);

            PlateChest tunic = new PlateChest();

            tunic.Hue     = 1153;
            tunic.Movable = false;
            AddItem(tunic);

            PlateLegs legs = new PlateLegs();

            legs.Hue     = 1153;
            legs.Movable = false;
            AddItem(legs);

            AddItem(new Boots());
            Hue = 1153;
            PackGold(3500, 4000);
            PackItem(new PrideCrystal());
        }
Exemplo n.º 22
0
        public ChaosDragoon()
            : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.15, 0.4)
        {
            Name = "a chaos dragoon";
            Body = 0x190;
            Hue  = Utility.RandomSkinHue();

            SetStr(176, 225);
            SetDex(81, 95);
            SetInt(61, 85);

            SetHits(176, 225);

            SetDamage(24, 26);

            SetDamageType(ResistanceType.Physical, 25);
            SetDamageType(ResistanceType.Fire, 25);
            SetDamageType(ResistanceType.Cold, 25);
            SetDamageType(ResistanceType.Energy, 25);

            SetSkill(SkillName.Fencing, 77.6, 92.5);
            SetSkill(SkillName.Healing, 60.3, 90.0);
            SetSkill(SkillName.Macing, 77.6, 92.5);
            SetSkill(SkillName.Anatomy, 77.6, 87.5);
            SetSkill(SkillName.MagicResist, 77.6, 97.5);
            SetSkill(SkillName.Swords, 77.6, 92.5);
            SetSkill(SkillName.Tactics, 77.6, 87.5);

            Fame  = 5000;
            Karma = -5000;

            CraftResource res = CraftResource.None;

            switch (Utility.Random(6))
            {
            case 0:
                res = CraftResource.BlackScales;
                break;

            case 1:
                res = CraftResource.RedScales;
                break;

            case 2:
                res = CraftResource.BlueScales;
                break;

            case 3:
                res = CraftResource.YellowScales;
                break;

            case 4:
                res = CraftResource.GreenScales;
                break;

            case 5:
                res = CraftResource.WhiteScales;
                break;
            }

            BaseWeapon melee = null;

            switch (Utility.Random(3))
            {
            case 0:
                melee = new Kryss();
                break;

            case 1:
                melee = new Broadsword();
                break;

            case 2:
                melee = new Katana();
                break;
            }

            AddItem(melee);

            DragonHelm helm = new DragonHelm();

            helm.Resource = res;
            AddItem(helm);

            DragonChest chest = new DragonChest();

            chest.Resource = res;
            AddItem(chest);

            DragonArms arms = new DragonArms();

            arms.Resource = res;
            AddItem(arms);

            DragonGloves gloves = new DragonGloves();

            gloves.Resource = res;
            AddItem(gloves);

            DragonLegs legs = new DragonLegs();

            legs.Resource = res;
            AddItem(legs);

            ChaosShield shield = new ChaosShield();

            AddItem(shield);

            AddItem(new Shirt());
            AddItem(new Boots());
            //AddItem(new Boots(0x455));
            //AddItem(new Shirt(Utility.RandomMetalHue()));

            int amount = Utility.RandomMinMax(1, 3);

            switch (res)
            {
            case CraftResource.BlackScales:
                AddItem(new BlackScales(amount));
                break;

            case CraftResource.RedScales:
                AddItem(new RedScales(amount));
                break;

            case CraftResource.BlueScales:
                AddItem(new BlueScales(amount));
                break;

            case CraftResource.YellowScales:
                AddItem(new YellowScales(amount));
                break;

            case CraftResource.GreenScales:
                AddItem(new GreenScales(amount));
                break;

            case CraftResource.WhiteScales:
                AddItem(new WhiteScales(amount));
                break;
            }

            new SwampDragon().Rider = this;

            SetSpecialAbility(SpecialAbility.DragonBreath);
        }
        public BaneChosenHoundMaster() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.15, 0.4)
        {
            Name = "a bane chosen hound master";
            Body = 0x190;
            Hue  = Utility.RandomSkinHue();

            SetStr(176, 225);
            SetDex(81, 95);
            SetInt(61, 85);

            SetHits(376, 450);

            SetDamage(24, 26);

            SetDamageType(ResistanceType.Physical, 25);
            SetDamageType(ResistanceType.Fire, 25);
            SetDamageType(ResistanceType.Cold, 25);
            SetDamageType(ResistanceType.Energy, 25);

            SetResistance(ResistanceType.Physical, 45, 55);
            SetResistance(ResistanceType.Fire, 15, 25);
            SetResistance(ResistanceType.Cold, 50);
            SetResistance(ResistanceType.Poison, 25, 35);
            SetResistance(ResistanceType.Energy, 25, 35);

            SetSkill(SkillName.Fencing, 77.6, 92.5);
            SetSkill(SkillName.Healing, 60.3, 90.0);
            SetSkill(SkillName.Macing, 77.6, 92.5);
            SetSkill(SkillName.Anatomy, 77.6, 87.5);
            SetSkill(SkillName.MagicResist, 77.6, 97.5);
            SetSkill(SkillName.Swords, 77.6, 92.5);
            SetSkill(SkillName.Tactics, 77.6, 87.5);

            Fame  = 5000;
            Karma = -5000;

            CraftResource res = CraftResource.BlackScales;

            BaseWeapon melee = null;

            switch (Utility.Random(3))
            {
            case 0: melee = new Kryss(); break;

            case 1: melee = new Broadsword(); break;

            case 2: melee = new Katana(); break;
            }

            melee.Movable = false;
            AddItem(melee);

            DragonHelm helm = new DragonHelm();

            helm.Resource = res;
            helm.Movable  = false;
            AddItem(helm);

            DragonChest chest = new DragonChest();

            chest.Resource = res;
            chest.Movable  = false;
            AddItem(chest);

            DragonArms arms = new DragonArms();

            arms.Resource = res;
            arms.Movable  = false;
            AddItem(arms);

            DragonGloves gloves = new DragonGloves();

            gloves.Resource = res;
            gloves.Movable  = false;
            AddItem(gloves);

            DragonLegs legs = new DragonLegs();

            legs.Resource = res;
            legs.Movable  = false;
            AddItem(legs);

            ChaosShield shield = new ChaosShield();

            shield.Movable = false;
            AddItem(shield);

            AddItem(new Shirt());
            AddItem(new Boots());
        }
Exemplo n.º 24
0
        /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

        public static Item CreateMetalWeapon()
        {
            Item item = null;

            int nType = Utility.RandomMinMax(0, 41);

            switch (nType)
            {
            case 1:         item = new Cutlass();                   item.Name = "cutlass";                  break;

            case 2:         item = new Katana();                    item.Name = "katana";                   break;

            case 3:         item = new Kryss();                             item.Name = "kryss";                    break;

            case 4:         item = new Broadsword();                item.Name = "broadsword";               break;

            case 5:         item = new Longsword();                 item.Name = "longsword";                break;

            case 6:         item = new ThinLongsword();             item.Name = "longsword";                break;

            case 7:         item = new VikingSword();               item.Name = "barbarian sword";  break;

            case 8:         item = new Scimitar();                  item.Name = "scimitar";                 break;

            case 9:         item = new BoneHarvester();             item.Name = "sickle";                   break;

            case 10:        item = new CrescentBlade();             item.Name = "crescent blade";   break;

            case 11:        item = new DoubleBladedStaff(); item.Name = "bladed staff";             break;

            case 12:        item = new Lance();                             item.Name = "lance";                    break;

            case 13:        item = new Pike();                              item.Name = "pike";                             break;

            case 14:        item = new Scythe();                    item.Name = "scythe";                   break;

            case 15:        item = new Dagger();                    item.Name = "dagger";                   break;

            case 16:        item = new HammerPick();                item.Name = "hammer pick";              break;

            case 17:        item = new Mace();                              item.Name = "mace";                             break;

            case 18:        item = new Maul();                              item.Name = "maul";                             break;

            case 19:        item = new WarHammer();                 item.Name = "war hammer";               break;

            case 20:        item = new WarMace();                   item.Name = "war mace";                 break;

            case 21:        item = new ExecutionersAxe();   item.Name = "great axe";                break;

            case 22:        item = new BattleAxe();                 item.Name = "battle axe";               break;

            case 23:        item = new TwoHandedAxe();              item.Name = "two-handed axe";   break;

            case 24:        item = new Axe();                               item.Name = "axe";                              break;

            case 25:        item = new DoubleAxe();                 item.Name = "double axe";               break;

            case 26:        item = new RoyalSword();                item.Name = "royal sword";              break;

            case 27:        item = new LargeBattleAxe();    item.Name = "large battle axe"; break;

            case 28:        item = new WarAxe();                    item.Name = "war axe";                  break;

            case 29:        item = new Bardiche();                  item.Name = "bardiche";                 break;

            case 30:        item = new Halberd();                   item.Name = "halberd";                  break;

            case 31:        item = new Pitchfork();                 item.Name = "trident";                  break;

            case 32:        item = new ShortSpear();                item.Name = "short spear";              break;

            case 33:        item = new Spear();                             item.Name = "spear";                    break;

            case 34:        item = new NoDachi();                   item.Name = "no dachi";                 break;

            case 35:        item = new Wakizashi();                 item.Name = "wakizashi";                break;

            case 36:        item = new Tetsubo();                   item.Name = "tetsubo";                  break;

            case 37:        item = new Lajatang();                  item.Name = "lajatang";                 break;

            case 38:        item = new Daisho();                    item.Name = "daisho";                   break;

            case 39:        item = new Tekagi();                    item.Name = "tekagi";                   break;

            case 40:        item = new Kama();                              item.Name = "kama";                             break;

            case 41:        item = new Sai();                               item.Name = "sai";                              break;
            }

            return(item);
        }
Exemplo n.º 25
0
        public override bool OnDragDrop(Mobile from, Item dropped)
        {
            PlayerMobile player = from as PlayerMobile;

            if (player != null)
            {
                QuestSystem qs = player.Quest;

                if (qs is UzeraanTurmoilQuest)
                {
                    if (dropped is UzeraanTurmoilHorn)
                    {
                        if (player.Young)
                        {
                            UzeraanTurmoilHorn horn = (UzeraanTurmoilHorn)dropped;

                            if (horn.Charges < 10)
                            {
                                this.SayTo(from, 1049384); // I have recharged the item for you.
                                horn.Charges = 10;
                            }
                            else
                            {
                                this.SayTo(from, 1049385); // That doesn't need recharging yet.
                            }
                        }
                        else
                        {
                            player.SendLocalizedMessage(1114333); //You must be young to have this item recharged.
                        }

                        return(false);
                    }

                    if (dropped is SchmendrickScrollOfPower)
                    {
                        QuestObjective obj = qs.FindObjective(typeof(ReturnScrollOfPowerObjective));

                        if (obj != null && !obj.Completed)
                        {
                            Container cont = GetNewContainer();

                            cont.DropItem(new TreasureMap(player.Young ? 0 : 1, Map.Trammel));
                            cont.DropItem(new Shovel());
                            cont.DropItem(new UzeraanTurmoilHorn());

                            if (!player.PlaceInBackpack(cont))
                            {
                                cont.Delete();
                                player.SendLocalizedMessage(1046260); // You need to clear some space in your inventory to continue with the quest.  Come back here when you have more space in your inventory.
                                return(false);
                            }
                            else
                            {
                                dropped.Delete();
                                obj.Complete();
                                return(true);
                            }
                        }
                    }
                    else if (dropped is QuestFertileDirt)
                    {
                        QuestObjective obj = qs.FindObjective(typeof(ReturnFertileDirtObjective));

                        if (obj != null && !obj.Completed)
                        {
                            Container cont = GetNewContainer();

                            if (player.Profession == 2) // magician
                            {
                                cont.DropItem(new BlackPearl(20));
                                cont.DropItem(new Bloodmoss(20));
                                cont.DropItem(new Garlic(20));
                                cont.DropItem(new Ginseng(20));
                                cont.DropItem(new MandrakeRoot(20));
                                cont.DropItem(new Nightshade(20));
                                cont.DropItem(new SulfurousAsh(20));
                                cont.DropItem(new SpidersSilk(20));

                                for (int i = 0; i < 3; i++)
                                {
                                    cont.DropItem(Loot.RandomScroll(0, 23, SpellbookType.Regular));
                                }
                            }
                            else
                            {
                                cont.DropItem(new Gold(300));
                                cont.DropItem(new Bandage(25));

                                for (int i = 0; i < 5; i++)
                                {
                                    cont.DropItem(new LesserHealPotion());
                                }
                            }

                            if (!player.PlaceInBackpack(cont))
                            {
                                cont.Delete();
                                player.SendLocalizedMessage(1046260); // You need to clear some space in your inventory to continue with the quest.  Come back here when you have more space in your inventory.
                                return(false);
                            }
                            else
                            {
                                dropped.Delete();
                                obj.Complete();
                                return(true);
                            }
                        }
                    }
                    else if (dropped is QuestDaemonBlood)
                    {
                        QuestObjective obj = qs.FindObjective(typeof(ReturnDaemonBloodObjective));

                        if (obj != null && !obj.Completed)
                        {
                            Item reward;

                            if (player.Profession == 2) // magician
                            {
                                Container cont = GetNewContainer();

                                cont.DropItem(new ExplosionScroll(4));
                                cont.DropItem(new MagicWizardsHat());

                                reward = cont;
                            }
                            else
                            {
                                BaseWeapon weapon;
                                switch (Utility.Random(6))
                                {
                                case 0:
                                    weapon = new Broadsword();
                                    break;

                                case 1:
                                    weapon = new Cutlass();
                                    break;

                                case 2:
                                    weapon = new Katana();
                                    break;

                                case 3:
                                    weapon = new Longsword();
                                    break;

                                case 4:
                                    weapon = new Scimitar();
                                    break;

                                default:
                                    weapon = new VikingSword();
                                    break;
                                }

                                if (Core.AOS)
                                {
                                    BaseRunicTool.ApplyAttributesTo(weapon, 3, 20, 40);
                                }
                                else
                                {
                                    weapon.DamageLevel     = (WeaponDamageLevel)BaseCreature.RandomMinMaxScaled(2, 4);
                                    weapon.AccuracyLevel   = (WeaponAccuracyLevel)BaseCreature.RandomMinMaxScaled(2, 4);
                                    weapon.DurabilityLevel = (WeaponDurabilityLevel)BaseCreature.RandomMinMaxScaled(2, 4);
                                }

                                weapon.Slayer = SlayerName.Silver;

                                reward = weapon;
                            }

                            if (!player.PlaceInBackpack(reward))
                            {
                                reward.Delete();
                                player.SendLocalizedMessage(1046260); // You need to clear some space in your inventory to continue with the quest.  Come back here when you have more space in your inventory.
                                return(false);
                            }
                            else
                            {
                                dropped.Delete();
                                obj.Complete();
                                return(true);
                            }
                        }
                    }
                    else if (dropped is QuestDaemonBone)
                    {
                        QuestObjective obj = qs.FindObjective(typeof(ReturnDaemonBoneObjective));

                        if (obj != null && !obj.Completed)
                        {
                            Container cont = GetNewContainer();
                            cont.DropItem(new BankCheck(2000));
                            cont.DropItem(new EnchantedSextant());

                            if (!player.PlaceInBackpack(cont))
                            {
                                cont.Delete();
                                player.SendLocalizedMessage(1046260); // You need to clear some space in your inventory to continue with the quest.  Come back here when you have more space in your inventory.
                                return(false);
                            }
                            else
                            {
                                dropped.Delete();
                                obj.Complete();
                                return(true);
                            }
                        }
                    }
                }
            }

            return(base.OnDragDrop(from, dropped));
        }
Exemplo n.º 26
0
        public ElvenBladeMaster() : base(AIType.AI_Melee, FightMode.Agressor, 10, 1, 0.2, 0.4)
        {
            Name      = NameList.RandomName("elfmale");
            Title     = "the Blade Master";
            SpeechHue = Utility.RandomDyedHue();
            Hue       = 349;
            Body      = 0x190;
            Level     = 10;
            NameHue   = 2454;

            new Horse().Rider = this;

            LongHair hair = new LongHair(Utility.RandomNeutralHue());

            hair.Movable = false;
            AddItem(hair);
            ChainChest chest = new ChainChest();

            chest.Hue     = 0x9C4;
            chest.Movable = false;
            AddItem(chest);
            RingmailArms arms = new RingmailArms();

            arms.Hue     = 0x9C4;
            arms.Movable = false;
            AddItem(arms);
            RingmailGloves gloves = new RingmailGloves();

            gloves.Hue     = 0x9C4;
            gloves.Movable = false;
            AddItem(gloves);
            ChainLegs legs = new ChainLegs();

            legs.Hue     = 0x9C4;
            legs.Movable = false;
            AddItem(legs);
            Cloak cloak = new Cloak();

            cloak.Hue     = 0xA17;
            cloak.Movable = false;
            AddItem(cloak);
            OrderShield shield = new OrderShield();

            shield.Hue     = 0x9C4;
            shield.Movable = false;
            AddItem(shield);
            Boots boots = new Boots();

            boots.Hue     = 0xA17;
            boots.Movable = false;
            AddItem(boots);

            PackGold(10, 17);

            SetSkill(SkillName.MagicResist, 80.0, 99.5);
            SetSkill(SkillName.Swords, 90.0, 102.5);
            SetSkill(SkillName.Tactics, 85.0, 97.5);
            SetSkill(SkillName.Wrestling, 65.0, 77.5);

            SetResistance(ResistanceType.Physical, 10, 25);
            SetResistance(ResistanceType.Fire, 10, 25);
            SetResistance(ResistanceType.Energy, 10, 25);
            SetResistance(ResistanceType.Cold, 10, 25);
            SetResistance(ResistanceType.Poison, 20, 30);

            SetStr(316, 370);
            SetDex(351, 415);
            SetInt(141, 165);
            SetHits(420, 483);
            SetDamage(11, 17);

            Karma = 5000;
            Fame  = 5000;

            switch (Utility.Random(4))
            {
            case 0: Scimitar scim = new Scimitar();
                scim.Movable = false;
                AddItem(scim);
                break;

            case 1: Longsword lsword = new Longsword();
                lsword.Movable = false;
                AddItem(lsword);
                break;

            case 2: Broadsword bsword = new Broadsword();
                bsword.Movable = false;
                AddItem(bsword);
                break;

            case 3: Cutlass cl = new Cutlass();
                cl.Movable = false;
                AddItem(cl);
                break;
            }
        }
Exemplo n.º 27
0
        public ChaosDragoonElite()
            : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.15, 0.4)
        {
            this.Name = "a chaos dragoon elite";
            this.Body = 0x190;
            this.Hue  = Utility.RandomSkinHue();

            this.SetStr(276, 350);
            this.SetDex(66, 90);
            this.SetInt(126, 150);

            this.SetHits(276, 350);

            this.SetDamage(29, 34);

            this.SetDamageType(ResistanceType.Physical, 100);

            /*SetResistance(ResistanceType.Physical, 45, 55);
             * SetResistance(ResistanceType.Fire, 15, 25);
             * SetResistance(ResistanceType.Cold, 50);
             * SetResistance(ResistanceType.Poison, 25, 35);
             * SetResistance(ResistanceType.Energy, 25, 35);*/

            this.SetSkill(SkillName.Tactics, 80.1, 100.0);
            this.SetSkill(SkillName.MagicResist, 100.1, 110.0);
            this.SetSkill(SkillName.Anatomy, 80.1, 100.0);
            this.SetSkill(SkillName.Magery, 85.1, 100.0);
            this.SetSkill(SkillName.EvalInt, 85.1, 100.0);
            this.SetSkill(SkillName.Swords, 72.5, 95.0);
            this.SetSkill(SkillName.Fencing, 85.1, 100);
            this.SetSkill(SkillName.Macing, 85.1, 100);

            this.Fame  = 8000;
            this.Karma = -8000;

            CraftResource res = CraftResource.None;

            switch (Utility.Random(6))
            {
            case 0:
                res = CraftResource.BlackScales;
                break;

            case 1:
                res = CraftResource.RedScales;
                break;

            case 2:
                res = CraftResource.BlueScales;
                break;

            case 3:
                res = CraftResource.YellowScales;
                break;

            case 4:
                res = CraftResource.GreenScales;
                break;

            case 5:
                res = CraftResource.WhiteScales;
                break;
            }

            BaseWeapon melee = null;

            switch (Utility.Random(3))
            {
            case 0:
                melee = new Kryss();
                break;

            case 1:
                melee = new Broadsword();
                break;

            case 2:
                melee = new Katana();
                break;
            }

            melee.Movable = false;
            this.AddItem(melee);

            DragonChest Tunic = new DragonChest();

            Tunic.Resource = res;
            Tunic.Movable  = false;
            this.AddItem(Tunic);

            DragonLegs Legs = new DragonLegs();

            Legs.Resource = res;
            Legs.Movable  = false;
            this.AddItem(Legs);

            DragonArms Arms = new DragonArms();

            Arms.Resource = res;
            Arms.Movable  = false;
            this.AddItem(Arms);

            DragonGloves Gloves = new DragonGloves();

            Gloves.Resource = res;
            Gloves.Movable  = false;
            this.AddItem(Gloves);

            DragonHelm Helm = new DragonHelm();

            Helm.Resource = res;
            Helm.Movable  = false;
            this.AddItem(Helm);

            ChaosShield shield = new ChaosShield();

            shield.Movable = false;
            this.AddItem(shield);

            this.AddItem(new Boots(0x455));
            this.AddItem(new Shirt(Utility.RandomMetalHue()));

            int amount = Utility.RandomMinMax(1, 3);

            switch (res)
            {
            case CraftResource.BlackScales:
                this.AddItem(new BlackScales(amount));
                break;

            case CraftResource.RedScales:
                this.AddItem(new RedScales(amount));
                break;

            case CraftResource.BlueScales:
                this.AddItem(new BlueScales(amount));
                break;

            case CraftResource.YellowScales:
                this.AddItem(new YellowScales(amount));
                break;

            case CraftResource.GreenScales:
                this.AddItem(new GreenScales(amount));
                break;

            case CraftResource.WhiteScales:
                this.AddItem(new WhiteScales(amount));
                break;
            }
            switch (Utility.Random(9))
            {
            case 0:
                res = CraftResource.DullCopper;
                break;

            case 1:
                res = CraftResource.ShadowIron;
                break;

            case 2:
                res = CraftResource.Copper;
                break;

            case 3:
                res = CraftResource.Bronze;
                break;

            case 4:
                res = CraftResource.Gold;
                break;

            case 5:
                res = CraftResource.Agapite;
                break;

            case 6:
                res = CraftResource.Verite;
                break;

            case 7:
                res = CraftResource.Valorite;
                break;

            case 8:
                res = CraftResource.Iron;
                break;
            }

            SwampDragon mt = new SwampDragon();

            mt.HasBarding      = true;
            mt.BardingResource = res;
            mt.BardingHP       = mt.BardingMaxHP;
            mt.Rider           = this;
        }
Exemplo n.º 28
0
        public override void OnAfterSpawn()
        {
            base.OnAfterSpawn();

            Region reg = Region.Find(this.Location, this.Map);

            string World = Server.Misc.Worlds.GetMyWorld(this.Map, this.Location, this.X, this.Y);

            int clothColor = 0;
            int shieldType = 0;
            int helmType   = 0;
            int cloakColor = 0;

            Item weapon = new VikingSword(); weapon.Delete();

            if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Whisper")
            {
                clothColor = 0x96D;             shieldType = 0x1B72;    helmType = 0x140E;              cloakColor = 0x972;             weapon = new Longsword();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Town of Glacial Hills")
            {
                clothColor = 0x482;             shieldType = 0x1B74;    helmType = 0x1412;              cloakColor = 0x542;             weapon = new Kryss();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Springvale")
            {
                clothColor = 0x595;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x593;             weapon = new Pike();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the City of Elidor")
            {
                clothColor = 0x665;             shieldType = 0x1B7B;    helmType = 0x1412;              cloakColor = 0x664;             weapon = new Katana();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Islegem")
            {
                clothColor = 0x7D1;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x7D6;             weapon = new Spear();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "Greensky Village")
            {
                clothColor = 0x7D7;             shieldType = 0;                 helmType = 0x1412;              cloakColor = 0x7DA;             weapon = new Bardiche();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Port of Dusk")
            {
                clothColor = 0x601;             shieldType = 0x1B76;    helmType = 0x140E;              cloakColor = 0x600;             weapon = new Cutlass();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Port of Starguide")
            {
                clothColor = 0x751;             shieldType = 0;                 helmType = 0x1412;              cloakColor = 0x758;             weapon = new BladedStaff();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Portshine")
            {
                clothColor = 0x847;             shieldType = 0x1B7A;    helmType = 0x140E;              cloakColor = 0x851;             weapon = new Mace();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Ranger Outpost")
            {
                clothColor = 0x598;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x83F;             weapon = new Spear();
            }
            else if (World == "the Land of Lodoria")               // ( Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the City of Lodoria" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Castle of Knowledge" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Lodoria City Park" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Village of Lodoria" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Lodoria Cemetery" )
            {
                clothColor = 0x6E4;             shieldType = 0x1BC4;    helmType = 0x1412;              cloakColor = 0x6E7;             weapon = new Scimitar();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Lunar City of Dawn")
            {
                clothColor = 0x9C4;             shieldType = 0x1B76;    helmType = 0x140E;              cloakColor = 0x9C4;             weapon = new DiamondMace();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "The Town of Devil Guard" || Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "The Farmland of Devil Guard")
            {
                clothColor = 0x430;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0;                 weapon = new LargeBattleAxe();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Town of Moon")
            {
                clothColor = 0x8AF;             shieldType = 0x1B72;    helmType = 0x1412;              cloakColor = 0x972;             weapon = new Longsword();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Grey")
            {
                clothColor = 0;                 shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x763;             weapon = new Halberd();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the City of Montor")
            {
                clothColor = 0x96F;             shieldType = 0x1B74;    helmType = 0x1412;              cloakColor = 0x529;             weapon = new Broadsword();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Fawn")
            {
                clothColor = 0x59D;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x59C;             weapon = new DoubleAxe();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Yew")
            {
                clothColor = 0x83C;             shieldType = 0;                 helmType = 0x1412;              cloakColor = 0x850;             weapon = new Spear();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "Iceclad Fisherman's Village" || Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Town of Mountain Crest" || Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "Glacial Coast Village")
            {
                clothColor = 0x482;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x47E;             weapon = new Bardiche();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Undercity of Umbra")
            {
                clothColor = 0x964;             shieldType = 0x1BC3;    helmType = 0x140E;              cloakColor = 0x966;             weapon = new BoneHarvester();
            }
            else if (World == "the Island of Umber Veil")
            {
                clothColor = 0xA5D;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x96D;             weapon = new Halberd();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the City of Kuldara")
            {
                clothColor = 0x965;             shieldType = 0x1BC3;    helmType = 0x140E;              cloakColor = 0x845;             weapon = new Maul();
            }
            else if (World == "the Isles of Dread")
            {
                clothColor = 0x978;             shieldType = 0;                 helmType = 0x2645;              cloakColor = 0x973;             weapon = new OrnateAxe();
            }
            else if (Server.Misc.Worlds.GetRegionName(this.Map, this.Location) == "the Village of Barako")
            {
                clothColor = 0x515;             shieldType = 0x1B72;    helmType = 0x2645;              cloakColor = 0x58D;             weapon = new WarMace();
            }
            else if (World == "the Savaged Empire")               // ( Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Village of Kurak" )
            {
                clothColor = 0x515;             shieldType = 0;                 helmType = 0x140E;              cloakColor = 0x59D;             weapon = new Spear();
            }
            else if (World == "the Serpent Island")               // ( Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the City of Furnace" )
            {
                clothColor = 0x515;             shieldType = 0;                 helmType = 0x2FBB;              cloakColor = 0;                 weapon = new Halberd();
            }
            else             // if ( Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the City of Britain" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Britain Castle Grounds" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "Lord British Castle" || Server.Misc.Worlds.GetRegionName( this.Map, this.Location ) == "the Britain Dungeons" )
            {
                clothColor = 0x9C4;             shieldType = 0x1BC4;    helmType = 0x140E;              cloakColor = 0x845;             weapon = new VikingSword();
            }

            weapon.Movable = false;
            ((BaseWeapon)weapon).MaxHitPoints = 1000;
            ((BaseWeapon)weapon).HitPoints    = 1000;
            ((BaseWeapon)weapon).MinDamage    = 500;
            ((BaseWeapon)weapon).MaxDamage    = 900;
            AddItem(weapon);

            AddItem(new PlateChest());
            if (World == "the Serpent Island")
            {
                AddItem(new RingmailArms());
            }
            else
            {
                AddItem(new PlateArms());
            }                                                                                                                       // FOR GARGOYLES
            AddItem(new PlateLegs());
            AddItem(new PlateGorget());
            AddItem(new PlateGloves());
            AddItem(new Boots( ));

            if (helmType > 0)
            {
                PlateHelm helm = new PlateHelm();
                helm.ItemID = helmType;
                helm.Name   = "helm";
                AddItem(helm);
            }
            if (shieldType > 0)
            {
                ChaosShield shield = new ChaosShield();
                shield.ItemID = shieldType;
                shield.Name   = "shield";
                AddItem(shield);
            }

            MorphingTime.ColorMyClothes(this, clothColor);

            if (cloakColor > 0)
            {
                Cloak cloak = new Cloak();
                cloak.Hue = cloakColor;
                AddItem(cloak);
            }

            Server.Misc.MorphingTime.CheckMorph(this);
        }
Exemplo n.º 29
0
        public static void MimicThem(BaseCreature from, Mobile targ, bool allowskillchanges, bool allowAIchanges)
        {
            if (targ == null)
            {
                return;
            }

            if (from.BodyMod == 0)
            {
                from.BodyMod = targ.Body;
                from.Hue     = targ.Hue;

                from.NameMod = targ.Name;
                from.Title   = targ.Title;

                from.HairItemID       = targ.HairItemID;
                from.FacialHairItemID = targ.FacialHairItemID;

                from.VirtualArmor = targ.VirtualArmor;

                foreach (Item item in targ.Items)
                {
                    if (item.Layer != Layer.Backpack && item.Layer != Layer.Mount)
                    {
                        /*
                         * We don't dupe armor because the creatures base seed stacks with armor
                         * By duping a high resistance player we shoot the creature up into the 100's in res
                         * Imagine being the player facing your 400+ HP creature and EVERY attack & spell only deals 1 damage to them.
                         */

                        if (item is BaseShield)
                        {
                            Buckler shieldtomake = new Buckler();
                            shieldtomake.PoisonBonus = 0;
                            shieldtomake.ItemID      = item.ItemID;
                            shieldtomake.Hue         = item.Hue;
                            shieldtomake.Layer       = item.Layer;
                            shieldtomake.Movable     = false;
                            shieldtomake.Name        = item.Name;
                            from.EquipItem(shieldtomake);
                        }
                        else if (item is BaseWeapon)
                        {
                            Broadsword weapontomake = new Broadsword();
                            weapontomake.ItemID  = item.ItemID;
                            weapontomake.Hue     = item.Hue;
                            weapontomake.Layer   = item.Layer;
                            weapontomake.Movable = false;
                            weapontomake.Name    = item.Name;

                            BaseWeapon weapon = item as BaseWeapon;
                            weapontomake.Animation = weapon.Animation;
                            weapontomake.HitSound  = weapon.HitSound;
                            weapontomake.MissSound = weapon.MissSound;
                            weapontomake.MinDamage = weapon.MinDamage;
                            weapontomake.MaxDamage = weapon.MaxDamage;
                            weapontomake.Speed     = weapon.Speed;
                            from.EquipItem(weapontomake);
                        }
                        else
                        {
                            Item itemtomake = new Item(item.ItemID);
                            itemtomake.Hue     = item.Hue;
                            itemtomake.Layer   = item.Layer;
                            itemtomake.Movable = false;
                            itemtomake.Name    = item.Name;
                            from.EquipItem(itemtomake);
                        }
                    }
                }

                /*
                 * Duping skills can mess up the AI.
                 * What good is trying to melee when you have 0 tactics?
                 * On the other side, What good is stopping it's attack to try and cast something it can't do?
                 * The bool allows you to use it as a staff command or spell or make clone creatures that don't run around with the same exact skills as the others.
                 */

                if (allowskillchanges)
                {
                    for (int i = 0; i < targ.Skills.Length && i < from.Skills.Length; i++)
                    {
                        from.Skills[i].Base = targ.Skills[i].Base;
                    }
                }
            }
            else
            {
                from.BodyMod = 0;
                from.Hue     = 0;

                from.NameMod = null;
                from.Title   = null;

                from.HairItemID       = 0;
                from.FacialHairItemID = 0;

                from.VirtualArmor = 0;

                List <Item> list = new List <Item>(from.Items);

                foreach (Item item in list)
                {
                    if (item != null)
                    {
                        item.Delete();
                    }
                }

                if (allowskillchanges)
                {
                    for (int i = 0; i < targ.Skills.Length; ++i)
                    {
                        from.Skills[i].Base = 50.0;
                    }
                }
            }

            return;
        }
Exemplo n.º 30
0
        public Vampire() : base(AIType.AI_SphereMage, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Hue  = 0x497;
            Body = 0x190;
            Name = "Vampire";

            SetStr(450);
            SetDex(200, 300);
            SetInt(150, 200);
            SetHits(200, 300);
            SetStam(200, 300);
            SetMana(150, 200);
            SetDamage(10, 20);

            SetSkill(SkillName.Parry, 75.0, 80.0);
            SetSkill(SkillName.Poisoning, 90.0, 100.0);
            SetSkill(SkillName.MagicResist, 75.0, 88.0);
            SetSkill(SkillName.Swords, 75.0, 85.0);
            SetSkill(SkillName.Tactics, 80.0, 90.0);
            SetSkill(SkillName.Wrestling, 67.0, 80.0);
            SetSkill(SkillName.Magery, 65.0, 80.0);
            SetSkill(SkillName.EvalInt, 75.0, 85.0);

            Fame         = 4000;
            Karma        = -4000;
            VirtualArmor = 20;

            Item temp = new PlateGloves {
                Movable = false, Hue = 0x0590, Name = "Vampire Plate Gauntlets"
            };

            AddItem(temp);
            temp = new PlateArms {
                Hue = 0x0845, Movable = false, Name = "Vampire Plate Arms"
            };
            AddItem(temp);
            temp = new PlateGorget {
                Movable = false, Hue = 0x0590, Name = "Vampire Plate Gorget"
            };
            AddItem(temp);
            temp = new PlateLegs {
                Movable = false, Hue = 0x0590, Name = "Vampire Plate Legs"
            };
            AddItem(temp);
            temp = new PlateChest {
                Movable = false, Hue = 0x0590, Name = "Vampire Plate Chest"
            };
            AddItem(temp);
            temp = new Cloak(0x1)
            {
                Movable = false
            };
            AddItem(temp);

            HairItemID = 8252;
            HairHue    = Utility.RandomHairHue();

            BaseSword twep;

            switch (Utility.Random(8))
            {
            case 0:
                twep = new Broadsword();
                break;

            case 1:
                twep = new Cutlass();
                break;

            case 2:
                twep = new Scimitar();
                break;

            case 3:
                twep = new Katana();
                break;

            case 4:
                twep = new Kryss();
                break;

            case 5:
                twep = new Longsword();
                break;

            case 6:
                twep = new ThinLongsword();
                break;

            default:
                twep = new VikingSword();
                break;
            }
            switch (Utility.Random(3))
            {
            case 0:
                twep.DamageLevel = WeaponDamageLevel.Ruin;
                break;

            case 1:
                twep.DamageLevel = WeaponDamageLevel.Might;
                break;

            case 2:
                twep.DamageLevel = WeaponDamageLevel.Force;
                break;
            }

            AddItem(twep);
        }