Пример #1
0
        public MercenaryC()
            : base()
        {
            Name = "Mercenaire aguerri";

            // stats
            SetStr(90, 100);
            SetDex(70, 100);
            SetInt(30, 50);

            // equip
            AddItem(new PlateArms());
            Console.WriteLine("1");
            AddItem(new PlateChest());
            Console.WriteLine("2");
            AddItem(new PlateGloves());
            Console.WriteLine("3");
            AddItem(new PlateGorget());
            Console.WriteLine("4");
            AddItem(new PlateHelm());
            Console.WriteLine("5");
            AddItem(new PlateLegs());
            Console.WriteLine("6");
            AddItem(new Broadsword());
            Console.WriteLine("7");
            AddItem(new Cloak(Utility.RandomDyedHue()));
            Console.WriteLine("8");
            Item shield = new HeaterShield(Utility.RandomDyedHue());
            AddItem(shield);
            Console.WriteLine("9");
            AddItem(new Shoes(1527));
            Console.WriteLine("0");

            // skills
            SetSkill(SkillName.Swords, 50, 70);
            SetSkill(SkillName.Parry, 30, 50);
            SetSkill(SkillName.Anatomy, 30, 50);
            SetSkill(SkillName.Tactics, 30, 50);
        }
Пример #2
0
        public static void EquipInsularii(Armament a, Mobile m)
        {
            if (a == Armament.LightCavalry)
                a = (Armament)1;
            else if (a == Armament.HeavyCavalry)
                a = (Armament)3;

            switch (a)
            {
                case Armament.Light:
                    {
                        MaleDress dress = new MaleDress();
                        dress.Name = "A Ceremonial Robe";
                        dress.Layer = Layer.InnerTorso;
                        dress.Hue = 2990;

                        PlateArms arms = new PlateArms();
                        arms.Resource = CraftResource.Bronze;
                        arms.Hue = 2990;

                        ElegantDoublet doub = new ElegantDoublet();
                        doub.Name = "A Ceremonial Tunic";
                        doub.Hue = 2707;

                        KhemetarRogueTurban gorget = new KhemetarRogueTurban();
                        gorget.Hue = 2990;

                        PlateGloves gloves = new PlateGloves();
                        gloves.Resource = CraftResource.Bronze;
                        gloves.Hue = 2990;

                        HardenedThighBoots boots = new HardenedThighBoots();
                        boots.Resource = CraftResource.BeastLeather;
                        boots.Hue = 2990;

                        BeltPouch belt = new BeltPouch();
                        belt.Hue = 2990;

                        FancyGlasses glasses = new FancyGlasses();
                        glasses.Hue = 2707;

                        m.EquipItem(dress);
                        m.EquipItem(arms);
                        m.EquipItem(doub);
                        m.EquipItem(gorget);
                        m.EquipItem(gloves);
                        m.EquipItem(boots);
                        m.EquipItem(belt);
                        m.EquipItem(glasses);

                        Shortsword ss = new Shortsword();
                        ss.Resource = CraftResource.Iron;
                        m.EquipItem(ss);

                        Buckler shield = new Buckler();
                        shield.Resource = CraftResource.Bronze;
                        shield.Hue = 2707;
                        m.EquipItem(shield);

                        break;
                    }
                case Armament.Medium:
                    {
                        MaleDress dress = new MaleDress();
                        dress.Name = "A Ceremonial Robe";
                        dress.Layer = Layer.InnerTorso;
                        dress.Hue = 2990;

                        PlateArms arms = new PlateArms();
                        arms.Resource = CraftResource.Bronze;
                        arms.Hue = 2990;

                        ElegantDoublet doub = new ElegantDoublet();
                        doub.Name = "A Ceremonial Tunic";
                        doub.ItemID = 15502;
                        doub.Hue = 2707;

                        KhemetarRogueTurban gorget = new KhemetarRogueTurban();
                        gorget.Layer = Layer.Neck;
                        gorget.Hue = 2990;

                        PlateGloves gloves = new PlateGloves();
                        gloves.Resource = CraftResource.Bronze;
                        gloves.Hue = 2990;

                        HardenedThighBoots boots = new HardenedThighBoots();
                        boots.Resource = CraftResource.BeastLeather;
                        boots.Hue = 2990;

                        TyreanHornedPlateHelm helm = new TyreanHornedPlateHelm();
                        helm.Resource = CraftResource.Bronze;
                        helm.Name = "A Horned Helmet";
                        helm.Hue = 2990;

                        BeltPouch belt = new BeltPouch();
                        belt.Hue = 2990;

                        FancyGlasses glasses = new FancyGlasses();
                        glasses.Hue = 2707;

                        m.EquipItem(dress);
                        m.EquipItem(arms);
                        m.EquipItem(doub);
                        m.EquipItem(gorget);
                        m.EquipItem(gloves);
                        m.EquipItem(boots);
                        m.EquipItem(helm);
                        m.EquipItem(belt);
                        m.EquipItem(glasses);

                        Machete ss = new Machete();
                        ss.Resource = CraftResource.Iron;
                        m.EquipItem(ss);

                        MetalShield shield = new MetalShield();
                        shield.Resource = CraftResource.Bronze;
                        shield.Hue = 2707;
                        m.EquipItem(shield);

                        break;
                    }
                case Armament.Heavy:
                    {
                        MaleDress dress = new MaleDress();
                        dress.Name = "A Ceremonial Robe";
                        dress.Layer = Layer.InnerTorso;
                        dress.Hue = 2707;

                        TyreanHalfPlateChest chest = new TyreanHalfPlateChest();
                        chest.Name = "A Ceremonial Breastplate";
                        chest.Layer = Layer.MiddleTorso;
                        chest.Hue = 2990;

                        PlateArms arms = new PlateArms();
                        arms.Resource = CraftResource.Bronze;
                        arms.Hue = 2990;

                        LargeScarf gorget = new LargeScarf();
                        gorget.Layer = Layer.Neck;
                        gorget.Hue = 2990;

                        PlateGloves gloves = new PlateGloves();
                        gloves.Resource = CraftResource.Bronze;
                        gloves.Hue = 2990;

                        HardenedThighBoots boots = new HardenedThighBoots();
                        boots.Resource = CraftResource.BeastLeather;
                        boots.Hue = 2990;

                        TyreanHornedHelm helm = new TyreanHornedHelm();
                        helm.Resource = CraftResource.Bronze;
                        helm.Name = "A Horned Helmet";
                        helm.Hue = 2707;

                        BeltPouch belt = new BeltPouch();
                        belt.Hue = 2990;

                        FemaleLoinCloth lc = new FemaleLoinCloth();
                        lc.Hue = 2990;
                        lc.Name = "A Ceremonial Loin Cloth";

                        FancyGlasses glasses = new FancyGlasses();
                        glasses.Hue = 2707;

                        m.EquipItem(dress);
                        m.EquipItem(chest);
                        m.EquipItem(arms);
                        m.EquipItem(gorget);
                        m.EquipItem(gloves);
                        m.EquipItem(boots);
                        m.EquipItem(helm);
                        m.EquipItem(belt);
                        m.EquipItem(lc);
                        m.EquipItem(glasses);

                        SerratedSword ss = new SerratedSword();
                        ss.Resource = CraftResource.Iron;
                        m.EquipItem(ss);

                        HeaterShield shield = new HeaterShield();
                        shield.Resource = CraftResource.Iron;
                        shield.Hue = 2990;
                        m.EquipItem(shield);

                        break;
                    }
                case Armament.Ranged:
                    {
                        MaleDress dress = new MaleDress();
                        dress.Name = "A Ceremonial Robe";
                        dress.Layer = Layer.InnerTorso;
                        dress.Hue = 2990;

                        ElegantDoublet doub = new ElegantDoublet();
                        doub.Name = "A Ceremonial Tunic";
                        doub.Hue = 2707;

                        KhemetarRogueTurban gorget = new KhemetarRogueTurban();
                        gorget.Layer = Layer.Neck;
                        gorget.Hue = 2990;

                        FancyGloves gloves = new FancyGloves();
                        gloves.Hue = 2990;

                        HardenedThighBoots boots = new HardenedThighBoots();
                        boots.Resource = CraftResource.BeastLeather;
                        boots.Hue = 2990;

                        KhemetarScaleHelmet helm = new KhemetarScaleHelmet();
                        helm.Resource = CraftResource.Bronze;
                        helm.Name = "A Ceremonial Helmet";
                        helm.Hue = 2990;

                        BeltPouch belt = new BeltPouch();
                        belt.Hue = 2990;

                        FancyGlasses glasses = new FancyGlasses();
                        glasses.Hue = 2707;

                        m.EquipItem(dress);
                        m.EquipItem(doub);
                        m.EquipItem(gorget);
                        m.EquipItem(gloves);
                        m.EquipItem(boots);
                        m.EquipItem(helm);
                        m.EquipItem(belt);
                        m.EquipItem(glasses);

                        AlyrianGiantBow bow = new AlyrianGiantBow();
                        bow.Resource = CraftResource.Oak;

                        m.EquipItem(bow);

                        if (m is BaseCreature)
                        {
                            BaseCreature bc = m as BaseCreature;
                            bc.AI = AIType.AI_Archer;
                            bc.PackItem(new Arrow(Utility.RandomMinMax(35, 55)));
                        }

                        break;
                    }
            }
        }
		public CrookedGuard() : base( AIType.AI_Melee, FightMode.Agressor, 20, 1, 1.5, 3.0 )
		{
			InitStats( 500, 200, 200 );
			Title = "the Crooked Guard";

			SpeechHue = Utility.RandomDyedHue();

			Hue = Utility.RandomSkinHue();

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

				AddItem( new FemalePlateChest() );
				AddItem( new PlateArms() );
				AddItem( new PlateLegs() );

				switch( Utility.Random( 2 ) )
				{
					case 0: AddItem( new Doublet( Utility.RandomNondyedHue() ) ); break;
					case 1: AddItem( new BodySash( Utility.RandomNondyedHue() ) ); break;
				}

				switch( Utility.Random( 2 ) )
				{
					case 0: AddItem( new Skirt( Utility.RandomNondyedHue() ) ); break;
					case 1: AddItem( new Kilt( Utility.RandomNondyedHue() ) ); break;
				}
			}
			else
			{
				Body = 0x190;
				Name = NameList.RandomName( "male" );

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

				switch( Utility.Random( 3 ) )
				{
					case 0: AddItem( new Doublet( Utility.RandomNondyedHue() ) ); break;
					case 1: AddItem( new Tunic( Utility.RandomNondyedHue() ) ); break;
					case 2: AddItem( new BodySash( Utility.RandomNondyedHue() ) ); break;
				}
			}

			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 );
			}

			VikingSword weapon = new VikingSword();
			weapon.Movable = false;
			AddItem( weapon );

			HeaterShield shield = new HeaterShield();
			shield.Movable = false;
			AddItem( shield );

			PackGold( 250, 500 );

			Skills[SkillName.Anatomy].Base = 120.0;
			Skills[SkillName.Tactics].Base = 120.0;
			Skills[SkillName.Swords].Base = 120.0;
			Skills[SkillName.MagicResist].Base = 120.0;
			Skills[SkillName.DetectHidden].Base = 100.0;
		}
Пример #4
0
        public RatmenFortressBossChest() : base(0x2DF2)
        {
            Name    = "a boss treasure chest -25-";
            Movable = true;
            Weight  = 1000.0;

            TrapPower = 0;
            Locked    = true;

            RequiredSkill = 25;
            LockLevel     = 25;
            MaxLockLevel  = 30;

            // Gold
            if (Utility.RandomDouble() < 0.50)
            {
                DropItem(new Gold(Utility.Random(250, 400)));
            }

/////////////////////////////////////// Jewelry

            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new Agate());
            }
            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new Beryl());
            }
            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new ChromeDiopside());
            }
            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new FireOpal());
            }
            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new MoonstoneCustom());
            }
            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new Onyx());
            }
            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new Opal());
            }
            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new Pearl());
            }
            if (Utility.RandomDouble() < 0.04)
            {
                DropItem(new TurquoiseCustom());
            }

            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Bloodstone());
            }
            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Citrine());
            }
            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Demantoid());
            }
            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Jasper());
            }
            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Lolite());
            }
            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Lupis());
            }
            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Peridot());
            }
            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Tsavorite());
            }
            if (Utility.RandomDouble() < 0.03)
            {
                DropItem(new Zircon());
            }

            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Amber());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Amethyst());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Andalusite());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Chrysoberyl());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Garnet());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Jade());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Mandarin());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Morganite());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Paraiba());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new TigerEye());
            }
            if (Utility.RandomDouble() < 0.02)
            {
                DropItem(new Tourmaline());
            }

            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Alexandrite());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Ametrine());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Kunzite());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Ruby());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Sapphire());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Tanzanite());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Topaz());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Zultanite());
            }

            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Diamond());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new Emerald());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new PinkQuartz());
            }
            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new StarSapphire());
            }

/////////////////////////////////////// Supplies

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Arrow(Utility.Random(35, 50)));
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Bolt(Utility.Random(35, 50)));
            }

            Item ReagentLoot = Loot.RandomReagent();

            ReagentLoot.Amount = Utility.Random(35, 40);
            DropItem(ReagentLoot);

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Bandage(Utility.Random(25, 40)));
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Bedroll());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Bottle(Utility.Random(15, 25)));
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Lockpick(Utility.Random(15, 25)));
            }

            Item PotionLoot1 = Loot.RandomPotion();

            DropItem(PotionLoot1);

            Item PotionLoot2 = Loot.RandomPotion();

            DropItem(PotionLoot2);

            Item PotionLoot3 = Loot.RandomPotion();

            DropItem(PotionLoot3);

/////////////////////////////////////// Tools

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new FishingPole());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Shovel());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Skillet());
            }

/////////////////////////////////////// Rare Items

            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new DyeTub());
            }

            if (Utility.RandomDouble() < 0.20)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                switch (Utility.Random(38))
                {
                case 0: weapon = new Hatchet(); break;

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

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

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

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

                case 5: weapon = new Maul(); break;

                case 6: weapon = new Pitchfork(); break;

                case 7: weapon = new ShortSpear(); break;

                case 8: weapon = new GnarledStaff(); break;

                case 9: weapon = new ShepherdsCrook(); break;

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

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

                case 12: weapon = new Kryss(); break;

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

                case 14: weapon = new AssassinSpike(); break;

                case 15: weapon = new DiamondMace(); break;

                case 16: weapon = new Leafblade(); break;

                case 17: weapon = new MagicalShortbow(); break;

                case 18: weapon = new RadiantScimitar(); break;

                case 19: weapon = new WildStaff(); break;

                case 20: weapon = new Axe(); break;

                case 21: weapon = new ExecutionersAxe(); break;

                case 22: weapon = new Pickaxe(); break;

                case 23: weapon = new TwoHandedAxe(); break;

                case 24: weapon = new WarAxe(); break;

                case 25: weapon = new HeavyCrossbow(); break;

                case 26: weapon = new HammerPick(); break;

                case 27: weapon = new WarMace(); break;

                case 28: weapon = new Spear(); break;

                case 29: weapon = new WarFork(); break;

                case 30: weapon = new BlackStaff(); break;

                case 31: weapon = new QuarterStaff(); break;

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

                case 33: weapon = new ElvenCompositeLongbow(); break;

                case 34: weapon = new ElvenMachete(); break;

                case 35: weapon = new ElvenSpellblade(); break;

                case 36: weapon = new RuneBlade(); break;

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

                BaseRunicTool.ApplyAttributesTo(weapon, 5, 15, 20);

                DropItem(weapon);
            }

            if (Utility.RandomDouble() < 0.20)
            {
                BaseArmor armor = Loot.RandomArmor(true);
                switch (Utility.Random(13))
                {
                case 0: armor = new FemaleStuddedChest(); break;

                case 1: armor = new StuddedArms(); break;

                case 2: armor = new StuddedBustierArms(); break;

                case 3: armor = new StuddedGloves(); break;

                case 4: armor = new StuddedGorget(); break;

                case 5: armor = new ChainCoif(); break;

                case 6: armor = new ChainChest(); break;

                case 7: armor = new ChainLegs(); break;

                case 8: armor = new RingmailArms(); break;

                case 9: armor = new RingmailChest(); break;

                case 10: armor = new RingmailGloves(); break;

                case 11: armor = new RingmailLegs(); break;

                default: armor = new StuddedChest(); break;
                }

                BaseRunicTool.ApplyAttributesTo(armor, 5, 15, 20);

                DropItem(armor);
            }

            if (Utility.RandomDouble() < 0.20)
            {
                BaseHat hat = Loot.RandomHat(true);
                switch (Utility.Random(5))
                {
                case 0: hat = new BearMask(); break;

                case 1: hat = new DeerMask(); break;

                case 2: hat = new FeatheredHat(); break;

                case 3: hat = new WizardsHat(); break;

                default: hat = new TribalMask(); break;
                }

                BaseRunicTool.ApplyAttributesTo(hat, 5, 15, 20);

                DropItem(hat);
            }

            if (Utility.RandomDouble() < 0.20)
            {
                BaseClothing clothing = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing, 5, 15, 20);

                DropItem(clothing);
            }

            if (Utility.RandomDouble() < 0.20)
            {
                BaseShield shield = new HeaterShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield, 5, 15, 20);
                }

                DropItem(shield);
            }

            if (Utility.RandomDouble() < 0.20)
            {
                BaseJewel bracelet = new SilverBracelet();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(bracelet, 5, 15, 20);
                }

                DropItem(bracelet);
            }

            if (Utility.RandomDouble() < 0.20)
            {
                BaseJewel earrings = new SilverEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(earrings, 5, 15, 20);
                }

                DropItem(earrings);
            }

            if (Utility.RandomDouble() < 0.20)
            {
                BaseJewel necklace = new SilverNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 5, 15, 20);
                }

                DropItem(necklace);
            }

            if (Utility.RandomDouble() < 0.20)
            {
                BaseJewel ring = new SilverRing();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(ring, 5, 15, 20);
                }

                DropItem(ring);
            }
        }
Пример #5
0
        public static string MakeThisTask()
        {
            string task = null;

            switch (Utility.RandomMinMax(1, 10))
            {
            case 1: task = "Repair"; break;

            case 2: task = "Fix"; break;

            case 3: task = "Buff"; break;

            case 4: task = "Modify"; break;

            case 5: task = "Polish"; break;

            case 6: task = "Engrave"; break;

            case 7: task = "Adjust"; break;

            case 8: task = "Improve"; break;

            case 9: task = "Smooth the dents from"; break;

            case 10: task = "Remove the dents from"; break;
            }

            Item item = null;

            switch (Utility.RandomMinMax(1, 79))
            {
            case 1: item = new AssassinSpike(); break;

            case 2: item = new Axe(); break;

            case 3: item = new Bardiche(); break;

            case 4: item = new Bascinet(); break;

            case 5: item = new BattleAxe(); break;

            case 6: item = new BoneHarvester(); break;

            case 7: item = new Broadsword(); break;

            case 8: item = new BronzeShield(); break;

            case 9: item = new Buckler(); break;

            case 10: item = new ButcherKnife(); break;

            case 11: item = new ChainChest(); break;

            case 12: item = new ChainCoif(); break;

            case 13: item = new ChainLegs(); break;

            case 14: item = new ChampionShield(); break;

            case 15: item = new Cleaver(); break;

            case 16: item = new CloseHelm(); break;

            case 17: item = new CloseHelm(); break;

            case 18: item = new CrescentBlade(); break;

            case 19: item = new CrestedShield(); break;

            case 20: item = new Cutlass(); break;

            case 21: item = new Dagger(); break;

            case 22: item = new DarkShield(); break;

            case 23: item = new DiamondMace(); break;

            case 24: item = new DoubleAxe(); break;

            case 25: item = new DoubleBladedStaff(); break;

            case 26: item = new DreadHelm(); break;

            case 27: item = new ElvenMachete(); break;

            case 28: item = new ElvenShield(); break;

            case 29: item = new ElvenSpellblade(); break;

            case 30: item = new ExecutionersAxe(); break;

            case 31: item = new FemalePlateChest(); break;

            case 32: item = new GuardsmanShield(); break;

            case 33: item = new Halberd(); break;

            case 34: item = new HammerPick(); break;

            case 35: item = new HeaterShield(); break;

            case 36: item = new Helmet(); break;

            case 37: item = new Helmet(); break;

            case 38: item = new JeweledShield(); break;

            case 39: item = new Katana(); break;

            case 40: item = new Kryss(); break;

            case 41: item = new Lance(); break;

            case 42: item = new LargeBattleAxe(); break;

            case 43: item = new Leafblade(); break;

            case 44: item = new Longsword(); break;

            case 45: item = new Mace(); break;

            case 46: item = new Maul(); break;

            case 47: item = new MetalKiteShield(); break;

            case 48: item = new MetalShield(); break;

            case 49: item = new NorseHelm(); break;

            case 50: item = new NorseHelm(); break;

            case 51: item = new OrnateAxe(); break;

            case 52: item = new Pickaxe(); break;

            case 53: item = new Pike(); break;

            case 54: item = new Pitchfork(); break;

            case 55: item = new PlateArms(); break;

            case 56: item = new PlateChest(); break;

            case 57: item = new PlateGloves(); break;

            case 58: item = new PlateGorget(); break;

            case 59: item = new PlateHelm(); break;

            case 60: item = new PlateHelm(); break;

            case 61: item = new PlateLegs(); break;

            case 62: item = new RadiantScimitar(); break;

            case 63: item = new RingmailArms(); break;

            case 64: item = new RingmailChest(); break;

            case 65: item = new RingmailGloves(); break;

            case 66: item = new RingmailLegs(); break;

            case 67: item = new RuneBlade(); break;

            case 68: item = new Scimitar(); break;

            case 69: item = new Scythe(); break;

            case 70: item = new ShortSpear(); break;

            case 71: item = new SkinningKnife(); break;

            case 72: item = new Spear(); break;

            case 73: item = new ThinLongsword(); break;

            case 74: item = new TwoHandedAxe(); break;

            case 75: item = new VikingSword(); break;

            case 76: item = new WarAxe(); break;

            case 77: item = new WarCleaver(); break;

            case 78: item = new WarHammer(); break;

            case 79: item = new WarMace(); break;
            }

            if (Utility.RandomMinMax(1, 5) == 1)
            {
                bool evil   = false;
                bool orient = false;

                switch (Utility.RandomMinMax(1, 8))
                {
                case 1: evil = true; break;

                case 2: orient = true; break;
                }

                string sAdjective = "unusual";
                string eAdjective = "might";

                sAdjective = Server.LootPackEntry.MagicItemAdj("start", orient, evil, item.ItemID);
                eAdjective = Server.LootPackEntry.MagicItemAdj("end", orient, evil, item.ItemID);

                string name  = "item";
                string xName = ContainerFunctions.GetOwner("property");

                if (item.Name != null && item.Name != "")
                {
                    name = item.Name.ToLower();
                }
                if (name == "item")
                {
                    name = MorphingItem.AddSpacesToSentence((item.GetType()).Name).ToLower();
                }

                switch (Utility.RandomMinMax(0, 5))
                {
                case 0: name = sAdjective + " " + name + " of " + xName;        break;

                case 1: name = name + " of " + xName;                                           break;

                case 2: name = sAdjective + " " + name;                                         break;

                case 3: name = sAdjective + " " + name + " of " + xName;        break;

                case 4: name = name + " of " + xName;                                           break;

                case 5: name = sAdjective + " " + name;                                         break;
                }

                task = task + " their " + name;
            }
            else
            {
                string[] sMetals = new string[] { "iron ", "dull copper ", "shadow iron ", "copper ", "bronze ", "gold ", "agapite ", "verite ", "valorite ", "nepturite ", "obsidian ", "steel ", "brass ", "mithril ", "xormite ", "dwarven " };
                string   sMetal  = sMetals[Utility.RandomMinMax(0, (sMetals.Length - 1))];

                string name = "item";
                if (item.Name != null && item.Name != "")
                {
                    name = item.Name.ToLower();
                }
                if (name == "item")
                {
                    name = MorphingItem.AddSpacesToSentence((item.GetType()).Name).ToLower();
                }

                task = task + " their " + sMetal + name;
            }

            item.Delete();

            return(task);
        }
Пример #6
0
        public RatmenFortressTreasureChest2() : base(0xE43)
        {
            Name    = "a treasure chest -20-";
            Movable = true;
            Weight  = 1000.0;

            TrapPower = 0;
            Locked    = true;

            RequiredSkill = 20;
            LockLevel     = 20;
            MaxLockLevel  = 25;

            // Gold
            if (Utility.RandomDouble() < 0.25)
            {
                DropItem(new Gold(Utility.Random(30, 350)));
            }

/////////////////////////////////////// Supplies

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Arrow(Utility.Random(10, 14)));
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Bolt(Utility.Random(10, 14)));
            }

            Item ReagentLoot = Loot.RandomReagent();

            ReagentLoot.Amount = Utility.Random(10, 14);
            DropItem(ReagentLoot);

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Bandage(Utility.Random(10, 14)));
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Bedroll());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Bottle(Utility.Random(10, 14)));
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Lockpick(Utility.Random(10, 14)));
            }

            Item PotionLoot = Loot.RandomPotion();

            DropItem(PotionLoot);

/////////////////////////////////////// Tools

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new FishingPole());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Shovel());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Skillet());
            }

/////////////////////////////////////// Rare Items

            if (Utility.RandomDouble() < 0.01)
            {
                DropItem(new DyeTub());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                switch (Utility.Random(38))
                {
                case 0: weapon = new Hatchet(); break;

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

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

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

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

                case 5: weapon = new Maul(); break;

                case 6: weapon = new Pitchfork(); break;

                case 7: weapon = new ShortSpear(); break;

                case 8: weapon = new GnarledStaff(); break;

                case 9: weapon = new ShepherdsCrook(); break;

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

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

                case 12: weapon = new Kryss(); break;

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

                case 14: weapon = new AssassinSpike(); break;

                case 15: weapon = new DiamondMace(); break;

                case 16: weapon = new Leafblade(); break;

                case 17: weapon = new MagicalShortbow(); break;

                case 18: weapon = new RadiantScimitar(); break;

                case 19: weapon = new WildStaff(); break;

                case 20: weapon = new Axe(); break;

                case 21: weapon = new ExecutionersAxe(); break;

                case 22: weapon = new Pickaxe(); break;

                case 23: weapon = new TwoHandedAxe(); break;

                case 24: weapon = new WarAxe(); break;

                case 25: weapon = new HeavyCrossbow(); break;

                case 26: weapon = new HammerPick(); break;

                case 27: weapon = new WarMace(); break;

                case 28: weapon = new Spear(); break;

                case 29: weapon = new WarFork(); break;

                case 30: weapon = new BlackStaff(); break;

                case 31: weapon = new QuarterStaff(); break;

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

                case 33: weapon = new ElvenCompositeLongbow(); break;

                case 34: weapon = new ElvenMachete(); break;

                case 35: weapon = new ElvenSpellblade(); break;

                case 36: weapon = new RuneBlade(); break;

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

                BaseRunicTool.ApplyAttributesTo(weapon, 4, 15, 20);

                DropItem(weapon);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseArmor armor = Loot.RandomArmor(true);
                switch (Utility.Random(13))
                {
                case 0: armor = new FemaleStuddedChest(); break;

                case 1: armor = new StuddedArms(); break;

                case 2: armor = new StuddedBustierArms(); break;

                case 3: armor = new StuddedGloves(); break;

                case 4: armor = new StuddedGorget(); break;

                case 5: armor = new ChainCoif(); break;

                case 6: armor = new ChainChest(); break;

                case 7: armor = new ChainLegs(); break;

                case 8: armor = new RingmailArms(); break;

                case 9: armor = new RingmailChest(); break;

                case 10: armor = new RingmailGloves(); break;

                case 11: armor = new RingmailLegs(); break;

                default: armor = new StuddedChest(); break;
                }

                BaseRunicTool.ApplyAttributesTo(armor, 4, 15, 20);

                DropItem(armor);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseHat hat = Loot.RandomHat(true);
                switch (Utility.Random(5))
                {
                case 0: hat = new BearMask(); break;

                case 1: hat = new DeerMask(); break;

                case 2: hat = new FeatheredHat(); break;

                case 3: hat = new WizardsHat(); break;

                default: hat = new TribalMask(); break;
                }

                BaseRunicTool.ApplyAttributesTo(hat, 4, 15, 20);

                DropItem(hat);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseClothing clothing = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing, 4, 15, 20);

                DropItem(clothing);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseShield shield = new HeaterShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield, 4, 15, 20);
                }

                DropItem(shield);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel bracelet = new SilverBracelet();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(bracelet, 4, 15, 20);
                }

                DropItem(bracelet);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel earrings = new SilverEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(earrings, 4, 15, 20);
                }

                DropItem(earrings);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel necklace = new SilverNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 4, 15, 20);
                }

                DropItem(necklace);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel ring = new SilverRing();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(ring, 4, 15, 20);
                }

                DropItem(ring);
            }
        }
Пример #7
0
		public void DoSpecialAbility( Mobile target )
		{
			if (target is PlayerMobile)
			{
				int resnum = 0;
				PlayerMobile owner = target as PlayerMobile;
				BaseArmor helm1 = new PlateHelm();
				BaseArmor gorget1 = new PlateGorget();
				BaseArmor tunic1 = new PlateChest();
				BaseArmor arms1 = new PlateArms();
				BaseArmor gloves1 = new PlateGloves();
				BaseArmor legs1 = new PlateLegs();
				BaseShield shield1 = new HeaterShield();
				BaseWeapon wep1 = new Kryss();
				Item helm = owner.FindItemOnLayer(Layer.Helm );
				if (helm != null) helm1 = helm as BaseArmor;
				Item gorget = owner.FindItemOnLayer(Layer.Neck );
				if (gorget != null) gorget1 = gorget as BaseArmor;
				Item tunic = owner.FindItemOnLayer(Layer.InnerTorso );
				if (tunic != null) tunic1 = tunic as BaseArmor;
				Item arms = owner.FindItemOnLayer(Layer.Arms );
				if (arms != null) arms1 = arms as BaseArmor;
				Item gloves = owner.FindItemOnLayer(Layer.Gloves );
				if (gloves != null) gloves1 = gloves as BaseArmor;
				Item legs   = owner.FindItemOnLayer(Layer.Pants );
				if (legs != null) legs1 = legs as BaseArmor;
				Item shield = owner.FindItemOnLayer(Layer.TwoHanded );
				if (shield != null) shield1 = shield as BaseShield;
				Item wep = owner.FindItemOnLayer(Layer.FirstValid );
				if (wep != null) wep1 = wep as BaseWeapon;

				if (shield1 != null)
				{
					resnum = (int)(shield1.Resource);
					if (resnum >=1 && resnum <= 99 && shield1.HitPoints >= 21) {shield1.HitPoints -= 20; target.SendMessage("one of your items has been affected by rust"); return; }
				}

				if (tunic1 != null)
				{
					resnum = (int)(tunic1.Resource);
					if (resnum >=1 && resnum <= 99 && tunic1.HitPoints >= 21) {tunic1.HitPoints -= 20; target.SendMessage("one of your items has been affected by rust"); return; }
				}

				if (legs1 != null)
				{
					resnum = (int)(legs1.Resource);
					if (resnum >=1 && resnum <= 99 && legs1.HitPoints >= 21) {legs1.HitPoints -= 20; target.SendMessage("one of your items has been affected by rust"); return; }
				}

				if (arms1 != null)
				{
					resnum = (int)(arms1.Resource);
					if (resnum >=1 && resnum <= 99 && arms1.HitPoints >= 21) {arms1.HitPoints -= 20; target.SendMessage("one of your items has been affected by rust"); return; }
				}

				if (helm1 != null)
				{
					resnum = (int)(helm1.Resource);
					if (resnum >=1 && resnum <= 99 && helm1.HitPoints >= 21) {helm1.HitPoints -= 20; target.SendMessage("one of your items has been affected by rust"); return; }
				}

				if (gloves1 != null)
				{
					resnum = (int)(gloves1.Resource);
					if (resnum >=1 && resnum <= 99 && gloves1.HitPoints >= 21) {gloves1.HitPoints -= 20; target.SendMessage("one of your items has been affected by rust"); return; }
				}

				if (gorget1 != null)
				{
					resnum = (int)(gorget1.Resource);
					if (resnum >=1 && resnum <= 99 && gorget1.HitPoints >= 21) {gorget1.HitPoints -= 20; target.SendMessage("one of your items has been affected by rust"); return; }
				}

				if (wep1 != null)
				{
					resnum = (int)(wep1.Resource);
					if (resnum >=1 && resnum <= 99 && wep1.HitPoints >= 21) {wep1.HitPoints -= 20; target.SendMessage("one of your items has been affected by rust"); return; }
				}

				if (shield1 != null)
				{
					resnum = (int)(shield1.Resource);
					if (resnum >=1 && resnum <= 99 && shield1.HitPoints >= 11) {shield1.HitPoints -= 10; target.SendMessage("one of your items has been affected by rust"); return; }
				}

				if (tunic1 != null)
				{
					resnum = (int)(tunic1.Resource);
					if (resnum >=1 && resnum <= 99 && tunic1.HitPoints >= 11) {tunic1.HitPoints -= 10; target.SendMessage("one of your items has been affected by rust"); return; }
				}

				if (legs1 != null)
				{
					resnum = (int)(legs1.Resource);
					if (resnum >=1 && resnum <= 99 && legs1.HitPoints >= 11) {legs1.HitPoints -= 10; target.SendMessage("one of your items has been affected by rust"); return; }
				}

				if (arms1 != null)
				{
					resnum = (int)(arms1.Resource);
					if (resnum >=1 && resnum <= 99 && arms1.HitPoints >= 11) {arms1.HitPoints -= 10; target.SendMessage("one of your items has been affected by rust"); return; }
				}

				if (helm1 != null)
				{
					resnum = (int)(helm1.Resource);
					if (resnum >=1 && resnum <= 99 && helm1.HitPoints >= 11) {helm1.HitPoints -= 10; target.SendMessage("one of your items has been affected by rust"); return; }
				}

				if (gloves1 != null)
				{
					resnum = (int)(gloves1.Resource);
					if (resnum >=1 && resnum <= 99 && gloves1.HitPoints >= 11) {gloves1.HitPoints -= 10; target.SendMessage("one of your items has been affected by rust"); return; }
				}

				if (gorget1 != null)
				{
					resnum = (int)(gorget1.Resource);
					if (resnum >=1 && resnum <= 99 && gorget1.HitPoints >= 11) {gorget1.HitPoints -= 10; target.SendMessage("one of your items has been affected by rust"); return; }
				}

				if (wep1 != null)
				{
					resnum = (int)(wep1.Resource);
					if (resnum >=1 && resnum <= 99 && wep1.HitPoints >= 11) {wep1.HitPoints -= 10; target.SendMessage("one of your items has been affected by rust"); return; }
				}
			}
			return;
		}
Пример #8
0
        public Paladin()
            : base(AIType.AI_Melee, FightMode.Aggressor, 10, 1, 0.36, 0.56)
        {
            Female = Utility.RandomBool();
            Body = Female ? 401 : 400;
            Title = "the paladin";
            Name = NameList.RandomName( Female ? "female" : "male" );
            Hue = Utility.RandomSkinHue();
            SetStr( 64, 92 );
            SetDex( 46, 88 );
            SetInt( 37, 49 );
            Karma = Utility.RandomMinMax( 33, -25 );

            SetSkill( SkillName.Tactics, 55, 77.5 );
            SetSkill( SkillName.MagicResist, 55, 77.5 );
            SetSkill( SkillName.Parry, 55, 77.5 );
            SetSkill( SkillName.Swords, 55, 77.5 );
            SetSkill( SkillName.Macing, 55, 77.5 );
            SetSkill( SkillName.Fencing, 55, 77.5 );
            SetSkill( SkillName.Wrestling, 55, 77.5 );
            SetSkill( SkillName.ArmsLore, 52.5, 75 );

            Item item = null;
            if ( !Female )
            {
                int hairHue = Utility.RandomHairHue();
                Utility.AssignRandomHair(this, hairHue);
                Utility.AssignRandomFacialHair( this, hairHue );
                item = new PlateChest();
                AddItem( item );
                item = new PlateLegs();
                AddItem( item );
                item = new PlateArms();
                AddItem( item );
                item = new PlateGloves();
                AddItem( item );
                item = new PlateGorget();
                AddItem( item );
                switch ( Utility.Random( 5 ) )
                {
                    case 0: item = new PlateHelm(); break;
                    case 1: item = new Helmet(); break;
                    case 2: item = new CloseHelm(); break;
                    case 3: item = new Bascinet(); break;
                    case 4: default: item = new NorseHelm(); break;
                }
                AddItem( item );
                item = new Tunic();
                item.Hue = Utility.RandomNondyedHue();
                AddItem( item );
                item = new HeaterShield();
                item.Hue = Utility.RandomNondyedHue();
                AddItem( item );
                item = new VikingSword();
                AddItem( item );
                item = Utility.RandomBool() ? (Item)new Boots() : (Item)new ThighBoots();
                AddItem( item );
                PackGold( 15, 100 );
            }
            else
            {
                int hairHue = Utility.RandomHairHue();
                Utility.AssignRandomHair(this, hairHue);
                item = new PlateChest();
                AddItem( item );
                item = new PlateLegs();
                AddItem( item );
                item = new PlateArms();
                AddItem( item );
                item = new PlateGloves();
                AddItem( item );
                item = new PlateGorget();
                AddItem( item );
                switch ( Utility.Random( 5 ) )
                {
                    case 0: item = new PlateHelm(); break;
                    case 1: item = new Helmet(); break;
                    case 2: item = new CloseHelm(); break;
                    case 3: item = new Bascinet(); break;
                    case 4: default: item = new NorseHelm(); break;
                }
                AddItem( item );
                item = new Tunic();
                item.Hue = Utility.RandomNondyedHue();
                AddItem( item );
                item = new HeaterShield();
                item.Hue = Utility.RandomNondyedHue();
                AddItem( item );
                item = new VikingSword();
                AddItem( item );
                item = Utility.RandomBool() ? (Item)new Boots() : (Item)new ThighBoots();
                AddItem( item );
                PackGold( 15, 100 );
            }
        }
        public TownChestBlacksmith() : base(0xE43)
        {
            Name    = "a metal chest -20-";
            Movable = true;
            Weight  = 1000.0;

            Hue = 83;

            TrapPower = 0;
            Locked    = true;

            RequiredSkill = 20;
            LockLevel     = 20;
            MaxLockLevel  = 25;

            // Gold
            if (Utility.RandomDouble() < 0.25)
            {
                DropItem(new Gold(Utility.Random(1, 50)));
            }

            // Supplies

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new SmithHammer());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new Tongs());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new SledgeHammer());
            }

            if (Utility.RandomDouble() < 0.25)
            {
                DropItem(new IronOre(Utility.Random(25, 50)));
            }

            if (Utility.RandomDouble() < 0.25)
            {
                DropItem(new IronIngot(Utility.Random(50, 100)));
            }

            if (Utility.RandomDouble() < 0.10)
            {
                DropItem(new DullCopperIngot(Utility.Random(35, 50)));
            }

            if (Utility.RandomDouble() < 0.10)
            {
                DropItem(new ShadowIronIngot(Utility.Random(30, 45)));
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new IronWire());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new SilverWire());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new GoldWire());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                DropItem(new CopperWire());
            }

            if (Utility.RandomDouble() < 0.10)
            {
                DropItem(new HorseShoes());
            }

            if (Utility.RandomDouble() < 0.20)
            {
                DropItem(new ForgedMetal());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseShield shield = new HeaterShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield, 5, 15, 20);
                }

                DropItem(shield);
            }
        }
Пример #10
0
        public SpiritSoldier()
            : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Hue = 12345678;
            Name = "a spirit soldier";

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

            SetStr( 186, 200 );
            SetDex( 51, 65 );
            SetInt( 35 );

            SetHits( 156, 170 );

            SetDamage( 12, 14 );

            SetDamageType( ResistanceType.Energy, 100 );

            SetResistance( ResistanceType.Blunt, 35, 45 );
            SetResistance( ResistanceType.Piercing, 30, 40 );
            SetResistance( ResistanceType.Slashing, 30, 40 );
            SetResistance( ResistanceType.Fire, 25, 30 );
            SetResistance( ResistanceType.Cold, 25, 30 );
            SetResistance( ResistanceType.Poison, 100 );
            SetResistance( ResistanceType.Energy, 10, 20 );

            SetSkill( SkillName.Anatomy, 125.0 );
            SetSkill( SkillName.Fencing, 46.0, 77.5 );
            SetSkill( SkillName.Macing, 35.0, 57.5 );
            SetSkill( SkillName.Poisoning, 60.0, 82.5 );
            SetSkill( SkillName.MagicResist, 83.5, 92.5 );
            SetSkill( SkillName.Swords, 125.0 );
            SetSkill( SkillName.Tactics, 125.0 );
            SetSkill( SkillName.Lumberjacking, 125.0 );

            Fame = 6500;
            Karma = -6500;

            VirtualArmor = 40;

            Broadsword weapon = new Broadsword();
            weapon.Hue = 12345678;
            AddItem( weapon );

            PlateChest armor = new PlateChest();
            armor.Hue = 12345678;
            AddItem( armor );

            PlateHelm helm = new PlateHelm();
            helm.Hue = 12345678;
            AddItem( helm );

            PlateGorget gorget = new PlateGorget();
            gorget.Hue = 12345678;
            AddItem( gorget );

            PlateArms arms = new PlateArms();
            arms.Hue = 12345678;
            AddItem( arms );

            PlateGloves gloves = new PlateGloves();
            gloves.Hue = 12345678;
            AddItem( gloves );

            PlateLegs legs = new PlateLegs();
            legs.Hue = 12345678;
            AddItem( legs );

            HeaterShield shield = new HeaterShield();
            shield.Hue = 12345678;
            AddItem( shield );

            PackItem( new Necroplasm( 5 ) );
        }
Пример #11
0
        public Mercenary()
            : base(AIType.AI_Melee, FightMode.Agressor, 10, 1, 0.45, 0.8)
        {
            Female = Utility.RandomBool();
            Body = Female ? 401 : 400;
            Title = "the mercenary";
            Name = NameList.RandomName( Female ? "female" : "male" );
            Hue = Utility.RandomSkinHue();
            SetStr( 25, 88 );
            SetDex( 25, 88 );
            SetInt( 37, 49 );
            Karma = Utility.RandomMinMax( 13, -45 );

            SetSkill( SkillName.Tactics, 45, 67.5 );
            SetSkill( SkillName.MagicResist, 45, 67.5 );
            SetSkill( SkillName.Parry, 45, 67.5 );
            SetSkill( SkillName.Swords, 45, 67.5 );
            SetSkill( SkillName.Macing, 45, 67.5 );
            SetSkill( SkillName.Fencing, 45, 67.5 );
            SetSkill( SkillName.Wrestling, 45, 67.5 );
            SetSkill( SkillName.ArmsLore, 42.5, 65 );

            Item item = null;
            if ( !Female )
            {
                item = AddRandomHair();
                item.Hue = Utility.RandomHairHue();
                item = AddRandomFacialHair( item.Hue );
                switch ( Utility.Random( 5 ) )
                {
                    case 0: item = new PlateChest(); break;
                    case 1: item = new ChainChest(); break;
                    case 2: item = new StuddedChest(); break;
                    case 3: item = new RingmailChest(); break;
                    case 4: default: item = new LeatherChest(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 5 ) )
                {
                    case 0: item = new PlateLegs(); break;
                    case 1: item = new ChainLegs(); break;
                    case 2: item = new StuddedLegs(); break;
                    case 3: item = new RingmailLegs(); break;
                    case 4: default: item = new LeatherLegs(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 4 ) )
                {
                    case 0: item = new PlateArms(); break;
                    case 1: item = new RingmailArms(); break;
                    case 2: item = new StuddedArms(); break;
                    case 3: default: item = new LeatherArms(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 3 ) )
                {
                    case 0: item = new PlateGloves(); break;
                    case 1: item = new StuddedGloves(); break;
                    case 2: default: item = new LeatherGloves(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 6 ) )
                {
                    case 0: item = new PlateHelm(); break;
                    case 1: item = new ChainCoif(); break;
                    case 2: item = new CloseHelm(); break;
                    case 3: item = new Bascinet(); break;
                    case 4: item = new NorseHelm(); break;
                    case 5: default: item = new Helmet(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 7 ) )
                {
                    case 0: item = new BronzeShield(); break;
                    case 1: item = new Buckler(); break;
                    case 2: item = new HeaterShield(); break;
                    case 3: item = new MetalKiteShield(); break;
                    case 4: item = new MetalShield(); break;
                    case 5: item = new WoodenKiteShield(); break;
                    case 6: default: item = new WoodenShield(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 4 ) )
                {
                    case 0: item = new PlateGorget(); break;
                    case 1: item = new StuddedGorget(); break;
                    default: case 2: item = new LeatherGorget(); break;
                }
                AddItem( item );
                item = Loot.RandomWeapon();
                AddItem( item );
                PackGold( 15, 100 );
            } else {
                item = AddRandomHair();
                item.Hue = Utility.RandomHairHue();
                switch ( Utility.Random( 5 ) )
                {
                    case 0: item = new PlateChest(); break;
                    case 1: item = new ChainChest(); break;
                    case 2: item = new StuddedChest(); break;
                    case 3: item = new RingmailChest(); break;
                    case 4: default: item = new LeatherChest(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 5 ) )
                {
                    case 0: item = new PlateLegs(); break;
                    case 1: item = new ChainLegs(); break;
                    case 2: item = new StuddedLegs(); break;
                    case 3: item = new RingmailLegs(); break;
                    case 4: default: item = new LeatherLegs(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 3 ) )
                {
                    case 0: item = new PlateGloves(); break;
                    case 1: item = new StuddedGloves(); break;
                    case 2: default: item = new LeatherGloves(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 6 ) )
                {
                    case 0: item = new PlateHelm(); break;
                    case 1: item = new ChainCoif(); break;
                    case 2: item = new CloseHelm(); break;
                    case 3: item = new Bascinet(); break;
                    case 4: item = new NorseHelm(); break;
                    case 5: default: item = new Helmet(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 7 ) )
                {
                    case 0: item = new BronzeShield(); break;
                    case 1: item = new Buckler(); break;
                    case 2: item = new HeaterShield(); break;
                    case 3: item = new MetalKiteShield(); break;
                    case 4: item = new MetalShield(); break;
                    case 5: item = new WoodenKiteShield(); break;
                    case 6: default: item = new WoodenShield(); break;
                }
                AddItem( item );
                switch ( Utility.Random( 4 ) )
                {
                    case 0: item = new PlateGorget(); break;
                    case 1: item = new StuddedGorget(); break;
                    default: case 2: item = new LeatherGorget(); break;
                }
                AddItem( item );
                item = Loot.RandomWeapon();
                AddItem( item );
                PackGold( 15, 100 );
            }
        }