public WindSummoner() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.15, 0.2 )
		{
			Title = "the Wind Summoner";

			Hue = Utility.RandomSkinHue();
			Body = 0x190;
			Name = NameList.RandomName( "male" );
			BaseSoundID = 0;

			Item hat = new WizardsHat();
			hat.Movable = false;
			hat.Hue = 1154;
			EquipItem( hat );

			Item shirt = new Shirt();
			shirt.Movable = false;
			shirt.Hue = 1154;
			EquipItem( shirt );

			Item skirt = new Skirt();
			skirt.Movable = false;
			skirt.Hue = 1154;
			EquipItem( skirt );

			Item Sandals = new Sandals();
			Sandals.Movable = false;
			Sandals.Hue = 1154;
			EquipItem( Sandals );

			SetStr( 110, 120 );
			SetDex( 86, 95 );
			SetInt( 161, 170 );

			SetHits( 120, 130 );

			SetDamage( 5, 13 );

			SetSkill( SkillName.Wrestling, 70.3, 77.8 );
			SetSkill( SkillName.Tactics, 80.5, 87.0 );
			SetSkill( SkillName.MagicResist, 90.6, 92.8);
			SetSkill( SkillName.Magery, 94.7, 96.0 );
			SetSkill( SkillName.EvalInt, 40.1, 44.1 );
			SetSkill( SkillName.Meditation, 21.1, 30.1 );

			Fame = 9000;
			Karma = -9000;

			VirtualArmor = 45;

			PackPotion();
			PackItem( new Bandage( Utility.RandomMinMax( 5, 10 ) ) );

			if ( 0.005 > Utility.RandomDouble() )
				PackItem( new ObsidianStatue() );
		}
		public FakeWindcaller() : base( AIType.AI_Mage )
		{
			Name = NameList.RandomName( "male" );
			Title = "the WindCaller";
			Body = 0x190;
			Hue = Utility.RandomSkinHue();

			SetStr( 300 );
			SetDex( 300 );
			SetInt( 600 );

			SetHits( 800 );

			SetDamage( 15, 20 );

			SetDamageType( ResistanceType.Physical, 100 );

			SetResistance( ResistanceType.Physical, 20, 30 );
			SetResistance( ResistanceType.Fire, 35, 45 );
			SetResistance( ResistanceType.Cold, 30, 40 );
			SetResistance( ResistanceType.Poison, 10, 20 );
			SetResistance( ResistanceType.Energy, 35, 45 );

			SetSkill( SkillName.Anatomy, 120.0 );
			SetSkill( SkillName.EvalInt, 120.0 );
			SetSkill( SkillName.Magery, 120.0 );
			SetSkill( SkillName.Meditation, 120.0 );
			SetSkill( SkillName.MagicResist, 200.0 );
			SetSkill( SkillName.Tactics, 120.0 );
			SetSkill( SkillName.Wrestling, 120.0 );

			Fame = 100;
			Karma = 100;

			VirtualArmor = 30;

			Sandals foot = new Sandals();
			foot.Hue = 1154;
			foot.LootType = LootType.Blessed;
			AddItem( foot );

			WizardsHat top = new WizardsHat();
			top.Hue = 1154;
			top.LootType = LootType.Blessed;
			AddItem( top );

			Skirt bottom = new Skirt();
			bottom.Hue = 1154;
			bottom.LootType = LootType.Blessed;
			AddItem ( bottom );

		}
Beispiel #3
0
		public CrazyMage() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
		{
			Name = NameList.RandomName( "male" ) + ", the insane mage";
			Body = 400;
			Hue = Utility.RandomSkinHue();

			HairItemID = Hair.LongHair;
			FacialHairItemID = Beard.MediumLongBeard;

			HairHue = FacialHairHue = Utility.RandomHairHue();
			
			Robe robe = new Robe();
			robe.Hue = Utility.RandomList( 1157, 1109, 1156, 1175, 1 );
			robe.Name = "a ragged robe";
			AddItem( robe );
			
			WizardsHat hat = new WizardsHat();
			hat.Hue = Utility.RandomMetalHue();
			hat.Name = "a well-used wizard's hat";
			AddItem( hat );
			
			SetStr( 120, 150 );
			SetDex( 80, 100 );
			SetInt( 150, 180 );
			
			SetHits( 200, 300 );
			SetMana( 200, 250 );
			
			SetDamage( 5, 10 );
			
			SetDamageType( ResistanceType.Energy, 100 );
			
			SetResistance( ResistanceType.Physical, 40, 50 );
			SetResistance( ResistanceType.Cold, 20, 30 );
			SetResistance( ResistanceType.Fire, 25, 35 );
			SetResistance( ResistanceType.Energy, 50, 60 );
			SetResistance( ResistanceType.Poison, 35, 45 );
			
			SetSkill( SkillName.EvalInt, 85, 95 );
			SetSkill( SkillName.Meditation, 75, 80 );
			SetSkill( SkillName.Magery, 95, 100 );
			SetSkill( SkillName.Tactics, 70, 80 );
			SetSkill( SkillName.Wrestling, 60, 75 );
			
			Fame = 3000;
			Karma = -15000;
			
			VirtualArmor = 20;
			
			PackItem( new BagOfReagents( 50 ) );
		}
Beispiel #4
0
        public LordSanta()
        {
            Name = "Lord Santa";
                        Title = "the Ruler of the green dudes";
            Body = 0x190;
            CantWalk = true;
            Hue = Utility.RandomSkinHue();

            Item Boots = new Boots();
            Boots.Hue = 33;
              	    Boots.Name = "Santa Boots";
            Boots.Movable = false;
            AddItem( Boots );

            Item Doublet = new Doublet();
            Doublet.Hue = 33;
              	    Doublet.Name = "Santa's Doublet";
            Doublet.Movable = false;
            AddItem( Doublet );

            Item FancyShirt = new FancyShirt();
            FancyShirt.Hue = 33;
              	    FancyShirt.Name = "Santa's Shirt";
            FancyShirt.Movable = false;
            AddItem( FancyShirt );

            Item LongPants = new LongPants();
            LongPants.Hue = 33;
              	    LongPants.Name = "Santa's Pants";
            LongPants.Movable = false;
            AddItem( LongPants );

            Item WizardsHat = new WizardsHat();
            WizardsHat.Hue = 33;
              	    WizardsHat.Name = "Santa's Hat";
            WizardsHat.Movable = false;
            AddItem( WizardsHat );

                        int hairHue = 1153;

            switch ( Utility.Random( 1 ) )
            {
                case 0: AddItem( new LongHair( hairHue ) ); break;
                case 1: AddItem( new LongBeard( hairHue ) ); break;
            }

            Blessed = true;
        }
		public ExplodingSanta() : base( AIType.AI_Melee, FightMode.None, 10, 1, 0.001, 0.001 )
		{
			Name = "a santa";
			Body = 400;
			Hue = 33814;
			SpeechHue = 1150;

			m_Target = null;

			SetStr( 100 );
			SetDex( 100 );
			SetInt( 100 );

			SetHits( 200 );

			SetDamage( 1, 2 );

			SetSkill( SkillName.MagicResist, 150.0 );

			Robe robe = new Robe();
			robe.Hue = 37;
			robe.Movable = false;
			AddItem( robe );

			WizardsHat hat = new WizardsHat();
			hat.Hue = 37;
			hat.Movable = false;
			AddItem( hat );

			LongBeard b = new LongBeard();
			b.Hue = 1150;
			b.Movable = false;
			AddItem( b );

			LongHair h = new LongHair();
			h.Hue = 1150;
			h.Movable = false;
			AddItem( h );

			AddItem( new Boots() );
		}
Beispiel #6
0
        public override void IncreaseTier()
        {
            base.IncreaseTier();

            List <object> list = new List <object>();
            Item          c;

            switch (Tier)
            {
            case 1:
                // wizard's hat
                c = new WizardsHat();
                c.MoveToWorld(new Point3D(1410, 1603, 57), Map);
                list.Add(c);

                // crystal ball
                c = new Static(0xE2D)
                {
                    Weight = 10.0
                };
                c.MoveToWorld(new Point3D(1410, 1604, 57), Map);
                list.Add(c);

                // spellbook
                c = new Spellbook(0x0, 0xE3B);
                c.MoveToWorld(new Point3D(1408, 1603, 63), Map);
                list.Add(c);

                // garlic
                c = new Garlic();
                c.MoveToWorld(new Point3D(1408, 1603, 62), Map);
                list.Add(c);

                break;
            }

            if (list.Count > 0)
            {
                Tiers.Add(list);
            }
        }
Beispiel #7
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);
            }
        }
		public Archmage() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.15, 0.2 )
		{
			Title = "the Archmage";

			Hue = Utility.RandomSkinHue();
			Body = 0x190;
			Name = NameList.RandomName( "male" );
			BaseSoundID = 0;
			Kills = 10;
			ShortTermMurders = 10;

                        Item WizardsHat = new WizardsHat();
			WizardsHat.Movable=false;
			WizardsHat.Hue=2118;
			EquipItem( WizardsHat );

			Item Robe = new Robe();
			Robe.Movable=false;
			Robe.Hue=2118;
			EquipItem( Robe );

                        Item Sandals = new Sandals();
			Sandals.Movable=false;
			Sandals.Hue=2118;
			EquipItem( Sandals );

			SetStr( 101, 110 );
			SetDex( 66, 75 );
			SetInt( 161, 170 );

			SetHits( 140, 150 );

			SetDamage( 7, 15 );

			SetSkill( SkillName.Wrestling, 80.3, 87.8 );
			SetSkill( SkillName.Tactics, 80.5, 97.0 );
			SetSkill( SkillName.MagicResist, 120.6, 136.8);
			SetSkill( SkillName.Magery, 97.7, 100.0 );
			SetSkill( SkillName.EvalInt, 75.1, 87.1 );
			SetSkill( SkillName.Meditation, 41.1, 50.1 );

			Fame = 12500;
			Karma = -12500;

			VirtualArmor = 10;

			switch( Utility.Random(100) )
	{
			case 0: PackItem( new EnchantedWood() ); break;
	}

			PackGold( 600, 800 );
			PackReg( Utility.RandomMinMax( 2, 20 ) );
			PackArmor( 0, 5 );
			PackWeapon( 0, 5 );
			PackSlayer();
			PackScroll( 8, 8 );

				if ( 0.05 > Utility.RandomDouble() )
					PackItem( new Obsidian() );
		}
Beispiel #9
0
		public BloodStoneHighWitch() : base( AIType.AI_SphereMage, FightMode.Closest, 10, 1, 0.2, 0.4 )
		{
			Name = NameList.RandomName( "female" );
			Title = "the Blood Stone High Witch";
			Body = 0x0191;
			Hue = 0x0493;
			Female = true;
			SetStr( 200, 250 );
			SetDex( 100, 200 );
			SetInt( 300 );

			SetHits( 200, 250 );
			SetStam( 100, 200 );
			SetMana( 300 );
			SetDamage( 40, 50 );

			AddItem( new LongHair( Utility.RandomHairHue() ) );

			Item temp;
			temp = new PlainDress( 1 );
			temp.Movable = false;
			AddItem( temp );

			temp = new WizardsHat( 1 );
			temp.Movable = false;
			AddItem( temp );

			temp = new ThighBoots( 1 );
			temp.Movable = false;
			AddItem( temp );

			temp = new BlackStaff();
			AddItem( temp );
			//PackGold(200, 300);
			AddItem( new EyesOfNewt( Utility.RandomMinMax( 1, 5 ) ) );
			AddItem( new BatWing( 2 ) );
			PackPotion();
			PackPotion();

			SetSkill( SkillName.MagicResist, 90.0, 95.0 );
			SetSkill( SkillName.Magery, 200.0, 250.0 );
			SetSkill( SkillName.Macing, 75.0, 95.0 );
			SetSkill( SkillName.Tactics, 80.0, 90.0 );
			SetSkill( SkillName.Wrestling, 40.0, 55.0 );

			Fame = -2000;
			Karma = -6000;

			VirtualArmor = 55;

			PackItem( new Sandals() );
		}
Beispiel #10
0
		public Witch() : base( AIType.AI_SphereMage, FightMode.Closest, 10, 1, 0.2, 0.4 )
		{
			Name = NameList.RandomName( "female" );
			Title = "the Witch";
			Body = 0x0191;
			Hue = 0x0599;
			Female = true;
			SetStr( 70, 90 );
			SetDex( 81, 95 );
			SetInt( 80, 100 );

			SetHits( 70, 90 );
			SetStam( 81, 95 );
			SetMana( 100 );
			SetDamage( 15, 20 );

			AddItem( new LongHair( Utility.RandomHairHue() ) );

			Item temp;
			temp = new FancyShirt( 0 );
			temp.Movable = false;
			AddItem( temp );

			temp = new Skirt( 1 );
			temp.Movable = false;
			AddItem( temp );

			temp = new WizardsHat( 1 );
			temp.Movable = false;
			AddItem( temp );

			temp = new ThighBoots( 1 );
			temp.Movable = false;
			AddItem( temp );

			temp = new GnarledStaff();
			AddItem( temp );
			//PackGold(50, 80);
			AddItem( new EyesOfNewt( Utility.RandomMinMax( 1, 5 ) ) );
			AddItem( new BatWing( Utility.RandomMinMax( 1, 5 ) ) );
			PackPotion();
			PackPotion();

			SetSkill( SkillName.MagicResist, 80.0, 90.0 );
			SetSkill( SkillName.Magery, 65.0, 85.0 );
			SetSkill( SkillName.Macing, 55.0, 75.0 );
			SetSkill( SkillName.Tactics, 70.0, 90.0 );
			SetSkill( SkillName.Wrestling, 40.0, 55.0 );

			Fame = Utility.RandomMinMax( 2000, 4000 );
			Karma = Utility.RandomMinMax( -3000, -5000 );

			VirtualArmor = 16;

			PackItem( new Sandals() );

            if (Utility.RandomDouble() <= 0.7)
            {
                Spellbook book = new Spellbook();
                book.Content = ulong.MaxValue;
                book.LootType = LootType.Regular;
                AddItem(book);
            }
		}
Beispiel #11
0
        public FortressCalcifinaTreasureChest1() : base(0xE43)
        {
            Name    = "a treasure chest -25-";
            Movable = true;
            Weight  = 1000.0;

            TrapPower = 0;
            Locked    = true;

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

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

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

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

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

            Item ReagentLoot = Loot.RandomReagent();

            ReagentLoot.Amount = Utility.Random(15, 20);
            DropItem(ReagentLoot);

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

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

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

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

            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, 18, 22);

                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, 18, 22);

                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, 18, 22);

                DropItem(hat);
            }

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

                DropItem(clothing);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseShield shield = new MetalKiteShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield, 4, 18, 22);
                }

                DropItem(shield);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel bracelet = new GoldBracelet();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(bracelet, 4, 18, 22);
                }

                DropItem(bracelet);
            }

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

                DropItem(earrings);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 4, 18, 22);
                }

                DropItem(necklace);
            }

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

                DropItem(ring);
            }
        }
		public MadSorceress() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.2)
		{

			Name = "a mad sorceress";
			Hue= 33770;
			Body = 401;
			Kills = 10;
			ShortTermMurders = 10;

			SetStr( 175, 275);
			SetDex( 80, 95);
			SetInt( 250, 300);

			SetHits(250, 325);
			SetMana(350, 450);

			SetDamage( 7, 12 );

			SetSkill( SkillName.Tactics, 95.7, 98.4);
			SetSkill( SkillName.MagicResist, 77.4, 87.7);
                        SetSkill( SkillName.Magery, 98.4, 99.7);
			SetSkill( SkillName.Parry, 97.4, 98.7);
			SetSkill( SkillName.Wrestling, 89.4, 95.7);
                        SetSkill( SkillName.EvalInt, 75.4, 80.7);

                        Fame=15000;
			Karma=-15000;

			VirtualArmor= 0;
			Female = true;

			Item BronzeShield = new BronzeShield();
			BronzeShield.Movable=false;
			BronzeShield.Hue=1156;
		        EquipItem( BronzeShield );

                        Item WizardsHat = new WizardsHat();
			WizardsHat.Movable=false;
			WizardsHat.Hue=1153;
			EquipItem( WizardsHat );

                        Item LeatherGloves = new LeatherGloves();
			LeatherGloves.Movable=false;
			LeatherGloves.Hue=1153;
                        EquipItem( LeatherGloves );

                        Item Robe = new Robe();
			Robe.Movable=false;
			Robe.Hue=1156;
			EquipItem( Robe );

			Item Sandals = new Sandals();
			Sandals.Movable=false;
			Sandals.Hue=1153;
			EquipItem( Sandals );

			Item GoldEarrings = new GoldEarrings();
			GoldEarrings.Movable=false;
			GoldEarrings.Hue=1153;
			EquipItem( GoldEarrings );

			Item GoldNecklace = new GoldNecklace();
			GoldNecklace.Movable=false;
			GoldNecklace.Hue=1153;
			EquipItem( GoldNecklace );

			Item hair = new Item( 0x203C);
			hair.Hue = 1156;
			hair.Layer = Layer.Hair;
			hair.Movable = false;
			AddItem( hair );

			switch( Utility.Random(125) )
			{
				case 0: PackItem( new DarkIronWire() ); break;
			}

			int gems = Utility.RandomMinMax( 1, 5 );

			for ( int i = 0; i < gems; ++i )
				PackGem();

			switch ( Utility.Random( 6 ) )
			{
				case 0: PackItem( new BlackPearl( Utility.RandomMinMax( 10, 15 ) ) ); break;
				case 1: PackItem( new MandrakeRoot( Utility.RandomMinMax( 10, 15 ) ) ); break;
				case 2: PackItem( new SulfurousAsh( Utility.RandomMinMax( 10, 15 ) ) ); break;
			}

			PackGold( 700, 1000);
			PackScroll( 1, 8 );
			PackSlayer();

			switch ( Utility.Random( 10 ) )
			{
				case 0: PackItem( new MortarPestle() ); break;
				case 1: PackItem( new GreaterExplosionPotion() ); break;
			}

			switch ( Utility.Random( 2 ) )
			{
				case 0: PackWeapon( 0, 5 ); break;
				case 1: PackArmor( 0, 5 ); break;
			}

			switch ( Utility.Random( 3 ) )
			{
				case 0: PackWeapon( 0, 5 ); break;
				case 1: PackArmor( 0, 5 ); break;
			}

			switch ( Utility.Random( 4 ) )
			{
				case 0: PackWeapon( 1, 5 ); break;
				case 1: PackArmor( 1, 5 ); break;
			}

		}
		public ClonedDarkMaster( Mobile owner ) : base()
		{
			Name = "Deimos";
			Title = "the Dark Master";
			Hue = 22222;
			BodyValue = 400;
			BaseSoundID = 1001;

			SetStr( 500 );
			SetDex( 100 );
			SetInt( 1500 );

			SetHits( 500 );

			SetDamage( 10, 15 );

			SetDamageType( ResistanceType.Physical, 100 );

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

			SetSkill( SkillName.Anatomy, 100.0 );
			SetSkill( SkillName.EvalInt, 100.0 );
			SetSkill( SkillName.Magery, 115.0 );
			SetSkill( SkillName.Poisoning, 100.0 );
			SetSkill( SkillName.MagicResist, 150.0 );
			SetSkill( SkillName.Wrestling, 105.0 );
			SetSkill( SkillName.Tactics, 105.0 );
			SetSkill( SkillName.Meditation, 200.0 );

			Fame = 5000;
			Karma = -5000;

			VirtualArmor = 100;

			m_Owner = owner;

			WizardsHat hat = new WizardsHat();
			hat.Hue = 1157;
			hat.LootType = LootType.Blessed;
			AddItem( hat );

			Sandals foot = new Sandals();
			foot.Hue = 1157;
			foot.LootType = LootType.Blessed;
			AddItem( foot );

			Robe robe = new Robe();
			robe.Hue = 22222;
			robe.LootType = LootType.Blessed;
			AddItem( robe );

			Cloak back = new Cloak();
			back.Hue = 1157;
			back.LootType = LootType.Blessed;
			AddItem ( back );

			Spellbook book = new Spellbook();
			book.Hue = 1157;
			book.Content = 18446744073709551615;
			book.Movable = false;
			AddItem( book );

			BodySash top = new BodySash();
			top.Hue = 1157;
			top.Layer = Layer.Earrings;
			top.LootType = LootType.Blessed;
			AddItem( top );

		}
        /// <summary>
        /// This is the function gives weaponry to players.
        /// </summary>
        private static void ArmPlayer(CTFPlayerGameData pgd)
        {
            Mobile m = pgd.Mob;

            if (!m.Alive)
                m.Resurrect();

            for (int i = m.Items.Count - 1; i >= 0; --i)
            {
                Item item = (Item)m.Items[i];
                if (item.Layer == Layer.OuterTorso)
                {
                    item.Delete();
                    break;
                }
            }

            List<Item> armthis = new List<Item>();

            if(GiveRobe)
                armthis.Add(new CTFRobe(pgd.Team));

            Item rankedCloth = null;
            CTFTeam team = pgd.Team;

            // 21 Ranks
            switch (CTFData.GetRank(m))
            {
                default:
                case 0: rankedCloth = new JesterHat(team.Hue); break;
                case 1: rankedCloth = new TallStrawHat(team.Hue); break;
                case 2: rankedCloth = new FloppyHat(team.Hue); break;
                case 3: rankedCloth = new WideBrimHat(team.Hue); break;
                case 4: rankedCloth = new Cap(team.Hue); break;
                case 5: rankedCloth = new SkullCap(team.Hue); break;
                case 6: rankedCloth = new FlowerGarland(team.Hue); break;
                case 7: rankedCloth = new StrawHat(team.Hue); break;
                case 8: rankedCloth = new FeatheredHat(team.Hue); break;
                case 9: rankedCloth = new TricorneHat(team.Hue); break;
                case 10: rankedCloth = new TribalMask(team.Hue); break;
                case 11: rankedCloth = new HornedTribalMask(team.Hue); break;
                case 12: rankedCloth = new BearMask(team.Hue); break;
                case 13: rankedCloth = new DeerMask(team.Hue); break;
                case 14: rankedCloth = new OrcishKinMask(team.Hue); break;
                case 15: rankedCloth = new SavageMask(team.Hue); break;
                case 16: rankedCloth = new WizardsHat(team.Hue); break;
                case 17: rankedCloth = new Bandana(team.Hue); break;
                case 18: rankedCloth = new ClothNinjaHood(team.Hue); break;
                case 19: rankedCloth = new Kasa(team.Hue); break;
                case 20:
                    rankedCloth = new BoneHelm();
                    rankedCloth.Hue = team.Hue;
                    ((BaseArmor)rankedCloth).ArmorAttributes.MageArmor = 1;
                    break;
            }
            if (rankedCloth != null)
            {
                rankedCloth.Movable = false;
                armthis.Add(rankedCloth);
            }

            //Alchemy removed by Blady
            /* 			if (m.Skills[SkillName.Alchemy].Value >= (m_MinSupplySkill + 15)) //80 Alchemy req - by Blady
            {
                for (int i = 0; i < 6; i++) //Amount reduced to 6 by Blady - used to be 10
                {
                    armthis.Add(new ExplosionPotion());
                    armthis.Add(new GreaterHealPotion());
                    armthis.Add(new GreaterCurePotion());
                    armthis.Add(new GreaterAgilityPotion());
                    armthis.Add(new RefreshPotion());
                    armthis.Add(new GreaterStrengthPotion());
                }
            } */

            if (m.Skills[SkillName.Chivalry].Value >= m_MinSupplySkill)
            {
                BookOfChivalry book = new BookOfChivalry();
                book.Content = 1023;//all spells
                armthis.Add(book);
            }

            if (m.Skills[SkillName.Necromancy].Value >= m_MinSupplySkill)
            {
                NecromancerSpellbook book = new NecromancerSpellbook();
                book.Content = 0x1FFFF;
                armthis.Add(book);
            }

            if (m.Skills[SkillName.Magery].Value >= m_MinSupplySkill)
            {
                GnarledStaff gs = new GnarledStaff();
                gs.Attributes.SpellChanneling = 1;
                gs.WeaponAttributes.MageWeapon = 20;
                armthis.Add(gs);

                Spellbook book = new Spellbook();
                book.Content = ulong.MaxValue;
                armthis.Add(book);
            }

            if (m.Skills[SkillName.Healing].Value >= m_MinSupplySkill)
                armthis.Add(new Bandage(1000));

            if (m.Skills[SkillName.Fencing].Value >= m_MinSupplySkill)
            {
                Spear sp = new Spear();
                sp.Attributes.SpellChanneling = 1;
                armthis.Add(sp);

                ShortSpear ssp = new ShortSpear();
                ssp.Attributes.SpellChanneling = 1;
                armthis.Add(ssp);

                WarFork wf = new WarFork();
                wf.Attributes.SpellChanneling = 1;
                armthis.Add(wf);

                Kryss k = new Kryss();
                k.Attributes.SpellChanneling = 1;
                armthis.Add(k);
            }

            if (m.Skills[SkillName.Swords].Value >= m_MinSupplySkill)
            {
                if (m.Skills[SkillName.Lumberjacking].Value >= m_MinSupplySkill)
                {
                    ExecutionersAxe ea = new ExecutionersAxe();
                    ea.Attributes.SpellChanneling = 1;
                    armthis.Add(ea);
                }

                Katana k = new Katana();
                k.Attributes.SpellChanneling = 1;
                armthis.Add(k);

                Longsword ls = new Longsword();
                ls.Attributes.SpellChanneling = 1;
                armthis.Add(ls);

                Cleaver c = new Cleaver();
                c.Attributes.SpellChanneling = 1;
                armthis.Add(c);

                BoneHarvester bh = new BoneHarvester();
                bh.Attributes.SpellChanneling = 1;
                armthis.Add(bh);
            }

            if (m.Skills[SkillName.Macing].Value >= m_MinSupplySkill)
            {
                WarAxe wa = new WarAxe();
                wa.Attributes.SpellChanneling = 1;
                armthis.Add(wa);

                HammerPick hp = new HammerPick();
                hp.Attributes.SpellChanneling = 1;
                armthis.Add(hp);

                QuarterStaff qs = new QuarterStaff();
                qs.Attributes.SpellChanneling = 1;
                armthis.Add(qs);
            }

            if (m.Skills[SkillName.Archery].Value >= m_MinSupplySkill)
            {
                Bow b = new Bow();
                b.Attributes.SpellChanneling = 1;
                armthis.Add(b);

                Crossbow xb = new Crossbow();
                xb.Attributes.SpellChanneling = 1;
                armthis.Add(xb);

                CompositeBow cb = new CompositeBow();
                cb.Attributes.SpellChanneling = 1;
                armthis.Add(cb);

                armthis.Add(new Arrow(150));
                armthis.Add(new Bolt(150));
            }

            if (m.Skills[SkillName.Poisoning].Value >= m_MinSupplySkill)
            {
                for (int i = 0; i < 2; i++)
                    armthis.Add(new GreaterPoisonPotion());
            }

            if (m.Skills[SkillName.Parry].Value >= m_MinSupplySkill)
            {
                MetalKiteShield ks = new MetalKiteShield();
                ks.Attributes.SpellChanneling = 1;
                armthis.Add(ks);
            }

            SunnySystem.ArmPlayer(m, armthis);
        }
		public Worshipper() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.15, 0.2 )
		{
			Title = "the Worshipper";

			Hue = Utility.RandomSkinHue();
			Body = 0x190;
			Name = NameList.RandomName( "male" );
			BaseSoundID = 0;
			Kills = 10;
			ShortTermMurders = 10;

                        Item WizardsHat = new WizardsHat();
			WizardsHat.Movable=false;
			WizardsHat.Hue=1;
			EquipItem( WizardsHat );

			Item Skirt = new Skirt();
			Skirt.Movable=false;
			Skirt.Hue=1;
			EquipItem( Skirt );

			Item Shirt = new Shirt();
			Shirt.Movable=false;
			Shirt.Hue=1;
			EquipItem( Shirt );

                        Item Sandals = new Sandals();
			Sandals.Movable=false;
			Sandals.Hue=1;
			EquipItem( Sandals );

			SetStr( 110, 120 );
			SetDex( 86, 95 );
			SetInt( 461, 570 );

			SetHits( 320, 350 );

			SetDamage( 10, 13 );

			SetSkill( SkillName.Wrestling, 80.3, 87.8 );
			SetSkill( SkillName.Tactics, 80.5, 87.0 );
			SetSkill( SkillName.MagicResist, 108.6, 112.8);
			SetSkill( SkillName.Magery, 91.7, 100.0 );
			SetSkill( SkillName.EvalInt, 65.1, 80.1 );
			SetSkill( SkillName.Meditation, 31.1, 40.1 );

			Fame = 15000;
			Karma = -15000;

			VirtualArmor = 15;

			switch( Utility.Random(100) )
	{
			case 0: PackItem( new EnchantedWood() ); break;
	}

			PackGold( 900, 1300 );
			PackArmor( 0, 5 );
			PackWeapon( 0, 5 );

			switch ( Utility.Random( 5 ) )
			{
				case 0: PackReg( 36 ); break;
				case 1: PackScroll( 7, 7 ); break;
				case 2: PackScroll( 8, 8 ); break;
				case 3: PackReg( 33 ); break;
				case 4: PackReg( 31 ); break;
			}

				if ( 0.05 > Utility.RandomDouble() )
					PackItem( new Obsidian() );
		}
Beispiel #16
0
		public SpriteSorceress() : base( AIType.AI_SphereMage, FightMode.Closest, 10, 1, 0.2, 0.4 )
		{
			Name = "Sprite Sorceress";
			Hue = 0x045e;
			Body = 0x191;
			Female = true;
			AddItem( new LongHair( 0x0597 ) );

			SetStr( 86, 90 );
			SetDex( 91, 100 );
			SetInt( 71, 85 );

			SetHits( 86, 95 );
			SetStam( 91, 100 );
			SetMana( 100 );

			SetDamage( 6, 10 );

			SetDamageType( ResistanceType.Physical, 100 );

			SetSkill( SkillName.Magery, 75.0, 95.0 );
			SetSkill( SkillName.MagicResist, 70.0, 85.0 );

			SetSkill( SkillName.Wrestling, 68.0, 88.0 );

			Fame = Utility.RandomMinMax( 1700, 3700 );
			Karma = Utility.RandomMinMax( -2000, -6500 );

			VirtualArmor = 5;

			Item temp;
			temp = new Sandals();
			temp.Hue = 0x0599;
			temp.Movable = false;
			AddItem( temp );
			temp = new WizardsHat();
			temp.Hue = 0x0599;
			temp.Movable = false;
			AddItem( temp );
			temp = new Robe();
			temp.Hue = 0x0595;
			temp.Movable = false;
			AddItem( temp );
		}
Beispiel #17
0
        public override void IncreaseTier()
        { 
            base.IncreaseTier();
			
            List<object> list = new List<object>();
            Item c;			
			
            switch ( this.Tier )
            { 
                case 1:
                    // wizard's hat
                    c = new WizardsHat();
                    c.MoveToWorld(new Point3D(1410, 1603, 57), this.Map);
                    list.Add(c);

                    // crystal ball
                    c = new Static(0xE2D);
                    c.Weight = 10.0;
                    c.MoveToWorld(new Point3D(1410, 1604, 57), this.Map);
                    list.Add(c);

                    // spellbook
                    c = new Spellbook(0x0, 0xE3B);
                    c.MoveToWorld(new Point3D(1408, 1603, 63), this.Map);
                    list.Add(c);

                    // garlic
                    c = new Garlic();
                    c.MoveToWorld(new Point3D(1408, 1603, 62), this.Map);
                    list.Add(c);
					
                    break;					
            }
			
            if (list.Count > 0)
                this.Tiers.Add(list);
        }
		public EvilMageLord() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
		{
			Name = NameList.RandomName( "evil mage lord" );
			//Body = Utility.RandomList( 125, 126 );
			Body = 400;
			Hue = 33788;

			Robe robe = new Robe();
			robe.Hue = Utility.RandomList(1102 , 1107);
			AddItem( robe );

			WizardsHat hat = new WizardsHat();
			hat.Hue = robe.Hue;
			AddItem( hat );

			AddItem( new Sandals( Utility.RandomBlueHue() ) );

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

			/*PackItem( new Robe( Utility.RandomMetalHue() ) );
			PackItem( new WizardsHat( Utility.RandomMetalHue() ) ); */

			SetStr( 81, 105 );
			SetDex( 191, 215 );
			SetInt( 126, 150 );

			SetHits( 49, 63 );

			SetDamage( 5, 10 );

			SetDamageType( ResistanceType.Physical, 100 );

			SetResistance( ResistanceType.Physical, 35, 40 );
			SetResistance( ResistanceType.Fire, 30, 40 );
			SetResistance( ResistanceType.Cold, 30, 40 );
			SetResistance( ResistanceType.Poison, 30, 40 );
			SetResistance( ResistanceType.Energy, 30, 40 );

			SetSkill( SkillName.EvalInt, 80.2, 100.0 );
			SetSkill( SkillName.Magery, 95.1, 100.0 );
			SetSkill( SkillName.Meditation, 27.5, 50.0 );
			SetSkill( SkillName.MagicResist, 77.5, 100.0 );
			SetSkill( SkillName.Tactics, 65.0, 87.5 );
			SetSkill( SkillName.Wrestling, 20.3, 80.0 );

			Fame = 10500;
			Karma = -10500;

			VirtualArmor = 36;

			switch ( Utility.Random( 5 ) )
			{
				case 0: PackReg( 11 ); break;
				case 1: PackScroll( 4, 7 ); break;
				case 2: PackGem(); break;
				case 3: PackReg( 12 ); break;
				case 4: PackReg( 10 ); break;
			}

			PackGold( 200, 230 );
                        PackJewel( 0.01 );

                        switch ( Utility.Random( 100 ))
        		 {
           			case 0: PackItem( new HairDye() ); break;
        		 }

			/*AddItem( new WizardsHat( Utility.RandomNeutralHue() ) );
			AddItem( new Robe( Utility.RandomNeutralHue() ) ); // TODO: Proper hue
			if ( Utility.RandomBool() )
				AddItem( new Shoes() );
			else
				AddItem( new Sandals() );*/
		}
Beispiel #19
0
		public override void InitOutfit()
		{
			WipeLayers();
			if ( Utility.RandomBool() )
				AddItem( new Shoes( Utility.RandomBlueHue() ) );
			else
				AddItem( new Sandals( Utility.RandomBlueHue() ) );

			//New Fall Fashions!

			Item EvilMageRobe = new Robe();
			EvilMageRobe.Hue = 0x1;
			EvilMageRobe.LootType = LootType.Newbied;
			AddItem( EvilMageRobe );

			Item EvilWizHat = new WizardsHat();
			EvilWizHat.Hue = 0x1;
			EvilWizHat.LootType = LootType.Newbied;
			AddItem( EvilWizHat );

			Item Bracelet = new GoldBracelet();
			Bracelet.LootType = LootType.Newbied;
			AddItem( Bracelet );

			Item Ring = new GoldRing();
			Ring.LootType = LootType.Newbied;
			AddItem ( Ring );

			Item hair = new LongHair();
			hair.Hue = 0x47E;
			hair.Layer = Layer.Hair;
			hair.Movable = false;
			AddItem( hair );

			Item beard = new MediumLongBeard();
			beard.Hue = 0x47E;
			beard.Movable = false;
			beard.Layer = Layer.FacialHair;
			AddItem(beard);
			
			//End Fashion Statement
			
		}
        public AmazonTreeSettlementTreasureChest() : base(0xE43)
        {
            Name    = "a treasure chest -10-";
            Movable = true;
            Weight  = 1000.0;

            TrapPower = 0;
            Locked    = true;

            RequiredSkill = 10;
            LockLevel     = 10;
            MaxLockLevel  = 15;

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

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

            if (Utility.RandomDouble() < 0.10)
            {
                DropItem(new Arrow(Utility.Random(2, 6)));
            }

            if (Utility.RandomDouble() < 0.10)
            {
                DropItem(new Bolt(Utility.Random(2, 6)));
            }

            Item ReagentLoot = Loot.RandomReagent();

            ReagentLoot.Amount = Utility.Random(2, 6);
            DropItem(ReagentLoot);

            if (Utility.RandomDouble() < 0.10)
            {
                DropItem(new Bandage(Utility.Random(2, 6)));
            }

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

            if (Utility.RandomDouble() < 0.10)
            {
                DropItem(new Bottle(Utility.Random(2, 6)));
            }

            if (Utility.RandomDouble() < 0.10)
            {
                DropItem(new Lockpick(Utility.Random(2, 6)));
            }

            Item PotionLoot = Loot.RandomPotion();

            DropItem(PotionLoot);

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

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

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

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

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

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

            if (Utility.RandomDouble() < 0.05)
            {
                DropItem(new AmazonianFighterBelt());
            }
            if (Utility.RandomDouble() < 0.05)
            {
                DropItem(new AmazonianFighterBoots());
            }
            if (Utility.RandomDouble() < 0.05)
            {
                DropItem(new AmazonianFighterBustier());
            }
            if (Utility.RandomDouble() < 0.05)
            {
                DropItem(new AmazonianFighterGloves());
            }
            if (Utility.RandomDouble() < 0.05)
            {
                DropItem(new AmazonianFighterHelmet());
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseWeapon weapon = Loot.RandomWeapon(true);
                switch (Utility.Random(21))
                {
                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;

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

                BaseRunicTool.ApplyAttributesTo(weapon, 2, 10, 15);
                weapon.DamageLevel     = (WeaponDamageLevel)Utility.Random(2);
                weapon.AccuracyLevel   = (WeaponAccuracyLevel)Utility.Random(2);
                weapon.DurabilityLevel = (WeaponDurabilityLevel)Utility.Random(2);
                weapon.Quality         = WeaponQuality.Regular;

                DropItem(weapon);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseArmor armor = Loot.RandomArmor(true);
                switch (Utility.Random(10))
                {
                case 0: armor = new FemaleLeatherChest(); break;

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

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

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

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

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

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

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

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

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

                BaseRunicTool.ApplyAttributesTo(armor, 3, 10, 15);
                armor.ProtectionLevel = (ArmorProtectionLevel)Utility.Random(3);
                armor.Durability      = (ArmorDurabilityLevel)Utility.Random(3);
                armor.Quality         = ArmorQuality.Regular;

                DropItem(armor);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                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, 3, 10, 15);

                DropItem(hat);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseClothing clothing = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing, 3, 10, 15);

                DropItem(clothing);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseShield shield = new MetalShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield, 3, 10, 15);
                }

                DropItem(shield);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseJewel bracelet = new GoldBracelet();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(bracelet, 3, 10, 15);
                }

                DropItem(bracelet);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseJewel earrings = new GoldEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(earrings, 3, 10, 15);
                }

                DropItem(earrings);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 3, 10, 15);
                }

                DropItem(necklace);
            }

            if (Utility.RandomDouble() < 0.10)
            {
                BaseJewel ring = new GoldRing();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(ring, 3, 10, 15);
                }

                DropItem(ring);
            }
        }
		//[Constructable]
		public EthyDarkMaster() : base()
		{
			ms_Active = true;
			Name = "Deimos";
			Title = "the Dark Master";
			Hue = 22222;
			BodyValue = 400;
			BaseSoundID = 1001;
			Team = 2;

			SetStr( 1500 );
			SetDex( 250 );
			SetInt( 50000 );

			SetHits( 50000 );

			SetDamage( 30, 30 );

			SetSkill( SkillName.Anatomy, 150.0 );
			SetSkill( SkillName.EvalInt, 200.0 );
			SetSkill( SkillName.Magery, 220.0 );
			SetSkill( SkillName.Poisoning, 200.0 );
			SetSkill( SkillName.MagicResist, 250.0 );
			SetSkill( SkillName.Wrestling, 150.0 );
			SetSkill( SkillName.Tactics, 150.0 );
			SetSkill( SkillName.Meditation, 600.0 );
			SetSkill( SkillName.DetectHidden, 200.0 );

			Fame = 50000;
			Karma = -50000;

			VirtualArmor = 200;

			WizardsHat hat = new WizardsHat();
			hat.Hue = 1150;
			hat.LootType = LootType.Blessed;
			AddItem( hat );

			Sandals foot = new Sandals();
			foot.Hue = 1150;
			foot.LootType = LootType.Blessed;
			AddItem( foot );

			Robe robe = new Robe();
			robe.Hue = 22222;
			robe.LootType = LootType.Blessed;
			AddItem( robe );

			Cloak back = new Cloak();
			back.Hue = 1150;
			back.LootType = LootType.Blessed;
			AddItem ( back );

			Spellbook book = new Spellbook();
			book.Hue = 1150;
			book.Content = 18446744073709551615;
			book.Movable = false;
			AddItem( book );

			BodySash top = new BodySash();
			top.Hue = 1150;
			top.Layer = Layer.Earrings;
			top.LootType = LootType.Blessed;
			AddItem( top );

			m_Timer = new AppearTimer( this );
			m_Timer.Start();
		}
        public OphidianPalaceChest() : base(0x2DF1)
        {
            Name    = "a treasure chest -45-";
            Movable = true;
            Weight  = 1000.0;

            TrapPower = 0;
            Locked    = true;

            RequiredSkill = 45;
            LockLevel     = 45;
            MaxLockLevel  = 50;

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

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

            Item GemLoot = Loot.RandomGem();

            DropItem(GemLoot);

            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

            Item ReagentLoot1 = Loot.RandomReagent();

            ReagentLoot1.Amount = Utility.Random(25, 35);
            DropItem(ReagentLoot1);

            Item ReagentLoot2 = Loot.RandomReagent();

            ReagentLoot2.Amount = Utility.Random(25, 35);
            DropItem(ReagentLoot2);

            Item ReagentLoot3 = Loot.RandomReagent();

            ReagentLoot3.Amount = Utility.Random(25, 35);
            DropItem(ReagentLoot3);

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

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

            Item ReagentLoot = Loot.RandomReagent();

            ReagentLoot.Amount = Utility.Random(17, 22);
            DropItem(ReagentLoot);

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

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

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

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

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

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

            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.01)
            {
                DropItem(new SuperRod());
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseWeapon weapon1 = Loot.RandomWeapon(true);
                BaseRunicTool.ApplyAttributesTo(weapon1, 5, 30, 35);

                DropItem(weapon1);
            }
            if (Utility.RandomDouble() < 0.15)
            {
                BaseWeapon weapon2 = Loot.RandomWeapon(true);
                BaseRunicTool.ApplyAttributesTo(weapon2, 5, 30, 35);

                DropItem(weapon2);
            }
            if (Utility.RandomDouble() < 0.15)
            {
                BaseWeapon weapon3 = Loot.RandomWeapon(true);
                BaseRunicTool.ApplyAttributesTo(weapon3, 5, 30, 35);

                DropItem(weapon3);
            }
            if (Utility.RandomDouble() < 0.15)
            {
                BaseArmor armor1 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor1, 5, 30, 35);

                DropItem(armor1);
            }
            if (Utility.RandomDouble() < 0.15)
            {
                BaseArmor armor2 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor2, 5, 30, 35);

                DropItem(armor2);
            }
            if (Utility.RandomDouble() < 0.15)
            {
                BaseArmor armor3 = Loot.RandomArmor(true);
                BaseRunicTool.ApplyAttributesTo(armor3, 5, 30, 35);

                DropItem(armor3);
            }
            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, 5, 30, 35);

                DropItem(hat);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseClothing clothing1 = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing1, 5, 30, 35);

                DropItem(clothing1);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseClothing clothing2 = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing2, 5, 30, 35);

                DropItem(clothing2);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseShield shield1 = new JewelShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield1, 5, 30, 35);
                }

                DropItem(shield1);
            }
            if (Utility.RandomDouble() < 0.15)
            {
                BaseShield shield2 = new ScarabShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield2, 4, 25, 35);
                }

                DropItem(shield2);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel bracelet = new GoldBracelet();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(bracelet, 5, 30, 35);
                }

                DropItem(bracelet);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel earrings = new SilverEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(earrings, 5, 30, 35);
                }

                DropItem(earrings);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 5, 30, 35);
                }

                DropItem(necklace);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel ring = new SilverRing();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(ring, 5, 30, 35);
                }

                DropItem(ring);
            }
        }
Beispiel #23
0
        public override void InitOutfit()
		{
//			base.InitOutfit();

//			AddItem( new Server.Items.Robe( Utility.RandomBlueHue() ) );
			AddItem( new Server.Items.GnarledStaff() );

            if (Utility.RandomBool())
                AddItem(new Shoes(Utility.RandomBlueHue()));
            else
                AddItem(new Sandals(Utility.RandomBlueHue()));

            Item EvilMageRobe = new Robe();
            EvilMageRobe.Hue = 0x1;
            EvilMageRobe.LootType = LootType.Newbied;
            AddItem(EvilMageRobe);

            Item EvilWizHat = new WizardsHat();
            EvilWizHat.Hue = 0x1;
            EvilWizHat.LootType = LootType.Newbied;
            AddItem(EvilWizHat);

            Item Bracelet = new GoldBracelet();
            Bracelet.LootType = LootType.Newbied;
            AddItem(Bracelet);

            Item Ring = new GoldRing();
            Ring.LootType = LootType.Newbied;
            AddItem(Ring);

            Item hair = new LongHair();
            hair.Hue = 0x47E;
            hair.Layer = Layer.Hair;
            hair.Movable = false;
            AddItem(hair);

            if ( !this.Female )
            {
                Item beard = new MediumLongBeard();
                beard.Hue = 0x47E;
                beard.Movable = false;
                beard.Layer = Layer.FacialHair;
                AddItem(beard);
            }

        }        
		public Windcaller() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.15, 0.2 )
		{
			Title = "the Windcaller";

			Hue = Utility.RandomSkinHue();
			Body = 0x190;
			Name = NameList.RandomName( "male" );
			BaseSoundID = 0;
			Kills = 10;
			ShortTermMurders = 10;

                        Item WizardsHat = new WizardsHat();
			WizardsHat.Movable=false;
			WizardsHat.Hue=1154;
			EquipItem( WizardsHat );

			Item Skirt = new Skirt();
			Skirt.Movable=false;
			Skirt.Hue=1154;
			EquipItem( Skirt );

                        Item Sandals = new Sandals();
			Sandals.Movable=false;
			Sandals.Hue=1154;
			EquipItem( Sandals );

			SetStr( 110, 120 );
			SetDex( 86, 95 );
			SetInt( 161, 170 );

			SetHits( 120, 130 );

			SetDamage( 5, 13 );

			SetSkill( SkillName.Wrestling, 70.3, 77.8 );
			SetSkill( SkillName.Tactics, 80.5, 87.0 );
			SetSkill( SkillName.MagicResist, 90.6, 92.8);
			SetSkill( SkillName.Magery, 94.7, 96.0 );
			SetSkill( SkillName.EvalInt, 40.1, 44.1 );
			SetSkill( SkillName.Meditation, 21.1, 30.1 );

			Fame = 10000;
			Karma = -10000;

			VirtualArmor = 20;

			switch( Utility.Random(175) )
	{
			case 0: PackItem( new EnchantedWood() ); break;
	}

			PackGold( 400, 700 );
			PackReg( Utility.RandomMinMax( 2, 16 ) );
			PackSlayer();
			PackScroll( 1, 7 );

			switch ( Utility.Random( 2 ) )
			{
				case 0: PackWeapon( 0, 5 ); break;
				case 1: PackArmor( 0, 5 ); break;
			}

			switch ( Utility.Random( 3 ) )
			{
				case 0: PackWeapon( 0, 5 ); break;
				case 1: PackArmor( 0, 5 ); break;
			}

			switch ( Utility.Random( 5 ) )
			{
				case 0: PackWeapon( 1, 5 ); break;
				case 1: PackArmor( 1, 5 ); break;
			}

				if ( 0.05 > Utility.RandomDouble() )
					PackItem( new Obsidian() );
		}
        public NewbElderMage()
            : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            SpeechHue = Utility.RandomDyedHue();
            Title = "the elder mage";
            Hue = Utility.RandomSkinHue();

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

            SetStr( 81, 105 );
            SetDex( 51, 75 );
            SetInt( 166, 180 );

            SetHits( 181, 200 );

            SetDamage( 7, 12 );

            SetDamageType( ResistanceType.Physical, 100 );

            SetResistance( ResistanceType.Physical, 10, 20 );
            SetResistance( ResistanceType.Fire, 10, 20 );
            SetResistance( ResistanceType.Cold, 6, 16 );
            SetResistance( ResistanceType.Poison, 10, 20 );
            SetResistance( ResistanceType.Energy, 10, 20 );

            SetSkill( SkillName.EvalInt, 85.1, 100.0 );
            SetSkill( SkillName.Magery, 85.1, 100.0 );
            SetSkill( SkillName.Meditation, 90.4, 100.0 );
            SetSkill( SkillName.MagicResist, 75.1, 97.5 );
            SetSkill( SkillName.Tactics, 65.0, 87.5 );
            SetSkill( SkillName.Wrestling, 20.1, 40.0 );

            Fame = 7500;
            Karma = -7500;

            PackReg( Utility.Random( 25, 12 ) );

            int itemHue = Utility.Random( 5 ) + 1154;

            BaseClothing toAdd = new Robe( itemHue );
            toAdd.LootType = LootType.Blessed;
            AddItem( toAdd );

            toAdd = new WizardsHat( itemHue );
            toAdd.LootType = LootType.Blessed;
            AddItem( toAdd );

            toAdd = new Sandals( itemHue );
            toAdd.LootType = LootType.Blessed;
            AddItem( toAdd );

            if( Utility.RandomDouble() < 0.3 )
                PackItem( NewbMage.NewbLRCArmor() );
        }
		public KrassKringle() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
        {

		Name = "Krass Kringle";
        Title = "The Anti Claus";
		Female = false; 
		Body = 0x190; 
		Hue = 1873; 

		NameHue = 1272;
        FancyShirt shirt = new FancyShirt();
        shirt.Hue = 1;
        shirt.Movable = false;
        AddItem(shirt);
        Surcoat surcoat = new Surcoat();
        surcoat.Hue = 1;
        surcoat.Movable = false;
        AddItem(surcoat);
        LongPants longpants = new LongPants();
        longpants.Hue = 1;
        longpants.Movable = false;
        AddItem(longpants);
        Boots boots = new Boots();
        boots.Hue = 1;
        boots.Movable = false;
        AddItem(boots);
        WizardsHat hat = new WizardsHat();
        hat.Hue = 1;
        hat.Movable = false;
        AddItem(hat);
        LeatherGloves gloves = new LeatherGloves();
        gloves.Hue = 1;
        gloves.Movable = false;
        AddItem(gloves);
                  	
        HairItemID = 0x203C;
      	HairHue = 1153;
      
		FacialHairItemID = 0x204B;
      	FacialHairHue = 1153;
            {
	
          }

			SetStr( 410, 580 );
			SetDex( 185, 210 );
			SetInt( 300, 450 );

            SetDamage(40, 75);

            SetHits(5000, 10000);
            SetMana(5000);

            SetResistance(ResistanceType.Physical, 65, 75);
            SetResistance(ResistanceType.Fire, 35, 45);
            SetResistance(ResistanceType.Cold, 100, 110);
            SetResistance(ResistanceType.Poison, 75, 90);
            SetResistance(ResistanceType.Energy, 60, 75);


			SetSkill( SkillName.Fencing, 96.0, 117.5 );
			SetSkill( SkillName.Macing, 95.0, 107.5 );
			SetSkill( SkillName.MagicResist, 85.0, 107.5 );
			SetSkill( SkillName.Swords, 85.0, 119.5 );
			SetSkill( SkillName.Tactics, 95.0, 119.5 );
			SetSkill( SkillName.Wrestling, 75.0, 97.5 );
            SetSkill(SkillName.Anatomy, 90.1, 100.0);
            SetSkill(SkillName.MagicResist, 140.1, 150.0);
            SetSkill(SkillName.Necromancy, 100.5, 110.9);
            SetSkill(SkillName.Healing, 70.2, 79.4);

			Fame = 1000;
			Karma = -15000;
            VirtualArmor = 72;


			switch ( Utility.Random( 7 ))
			{
				case 0: AddItem( new Longsword() ); break;
				case 1: AddItem( new Cutlass() ); break;
				case 2: AddItem( new Broadsword() ); break;
				case 3: AddItem( new Axe() ); break;
				case 4: AddItem( new Club() ); break;
				case 5: AddItem( new Dagger() ); break;
				case 6: AddItem( new Spear() ); break;
			}
        }
        public override void IncreaseTier()
        {
            base.IncreaseTier();

            List<object> list = new List<object>();
            Item c;

            // don't know names above lev 6
            switch ( this.Tier )
            {
                case 1:
                    c = new BookOfChivalry();
                    c.MoveToWorld(new Point3D(2924, 979, -18), this.Map);
                    c.Movable = false;
                    list.Add(c);

                    c = new Longsword();
                    c.MoveToWorld(new Point3D(2923, 980, -18), this.Map);
                    c.Movable = false;
                    c.ItemID = 0x26CF;
                    list.Add(c);

                    c = new Shirt();
                    c.MoveToWorld(new Point3D(2924, 978, -18), this.Map);
                    c.Movable = false;
                    c.ItemID = 0x2662;
                    c.Name = "Crisp White Shirt";
                    list.Add(c);
                    break;
                case 2:
                    c = new GraveDust();
                    c.MoveToWorld(new Point3D(2921, 972, -17), this.Map);
                    c.Movable = false;
                    list.Add(c);

                    c = new NoxCrystal();
                    c.MoveToWorld(new Point3D(2921, 972, -17), this.Map);
                    c.Movable = false;
                    list.Add(c);

                    c = new Static(0xF91);
                    c.MoveToWorld(new Point3D(2921, 972, -17), this.Map);
                    c.Movable = false;
                    list.Add(c);

                    c = new NecromancerSpellbook();
                    c.MoveToWorld(new Point3D(2922, 972, -18), this.Map);
                    c.Movable = false;
                    list.Add(c);

                    c = new AnimateDeadScroll();
                    c.MoveToWorld(new Point3D(2923, 972, -18), this.Map);
                    c.Movable = false;
                    list.Add(c);

                    c = new HorrificBeastScroll();
                    c.MoveToWorld(new Point3D(2923, 972, -18), this.Map);
                    c.Movable = false;
                    list.Add(c);

                    c = new VampiricEmbraceScroll();
                    c.MoveToWorld(new Point3D(2923, 971, -20), this.Map);
                    c.Movable = false;
                    list.Add(c);

                    c = new Static(0xFDD);
                    c.MoveToWorld(new Point3D(2922, 971, -21), this.Map);
                    list.Add(c);

                    c = new Static(0xFDE);
                    c.MoveToWorld(new Point3D(2923, 971, -21), this.Map);
                    list.Add(c);

                    break;
                case 3:
                    c = new JesterSuit();
                    c.MoveToWorld(new Point3D(2919, 985, -16), this.Map);
                    c.Movable = false;
                    list.Add(c);

                    c = new LocalizedStatic(0xE74, 1073424);
                    c.MoveToWorld(new Point3D(2919, 984, -11), this.Map);
                    c.Movable = false;
                    c.Weight = 50.0;
                    c.Hue = 0x113;
                    list.Add(c);

                    c = new JesterHat();
                    c.MoveToWorld(new Point3D(2919, 983, -13), this.Map);
                    c.Movable = false;
                    c.Hue = 0x113;
                    list.Add(c);

                    break;
                case 4:
                    c = new Static(0xD25);
                    c.MoveToWorld(new Point3D(2916, 984, -13), this.Map);
                    c.Movable = false;
                    list.Add(c);

                    c = new Static(0x20D9);
                    c.MoveToWorld(new Point3D(2916, 982, -12), this.Map);
                    c.Name = "Gargoyle";
                    list.Add(c);

                    c = new Static(0x2132);
                    c.MoveToWorld(new Point3D(2914, 982, -9), this.Map);
                    list.Add(c);

                    c = new Static(0x25B6);
                    c.MoveToWorld(new Point3D(2913, 982, -13), this.Map);
                    list.Add(c);

                    c = new Static(0x25B6);
                    c.MoveToWorld(new Point3D(2913, 982, -13), this.Map);
                    list.Add(c);

                    c = new Static(0x222E);
                    c.MoveToWorld(new Point3D(2915, 983, -14), this.Map);
                    list.Add(c);

                    c = new Static(0x2211);
                    c.MoveToWorld(new Point3D(2914, 984, -13), this.Map);
                    list.Add(c);

                    break;
                case 5:
                    c = new LocalizedStatic(0xE30, 1073421);
                    c.MoveToWorld(new Point3D(2911, 983, -12), this.Map);
                    c.Weight = 10.0;
                    list.Add(c);

                    c = new LocalizedStatic(0x2937, 1073422);
                    c.MoveToWorld(new Point3D(2911, 984, -13), this.Map);
                    list.Add(c);

                    c = new LocalizedStatic(0x12AA, 1073423);
                    c.MoveToWorld(new Point3D(2911, 985, -14), this.Map);
                    list.Add(c);

                    c = new Static(0xEAF);
                    c.MoveToWorld(new Point3D(2910, 985, -21), this.Map);
                    c.Weight = 5.0;
                    list.Add(c);

                    c = new Static(0xEAE);
                    c.MoveToWorld(new Point3D(2910, 986, -21), this.Map);
                    c.Weight = 5.0;
                    list.Add(c);

                    break;
                case 6:
                    c = new Tessen();
                    c.MoveToWorld(new Point3D(2910, 966, -17), this.Map);
                    c.Movable = false;
                    list.Add(c);

                    c = new Shuriken();
                    c.MoveToWorld(new Point3D(2910, 965, -17), this.Map);
                    c.Movable = false;
                    list.Add(c);

                    c = new Static(0x2855);
                    c.MoveToWorld(new Point3D(2910, 964, -16), this.Map);
                    c.Weight = 5.0;
                    list.Add(c);

                    c = new Static(0x241D);
                    c.MoveToWorld(new Point3D(2910, 963, -20), this.Map);
                    c.Weight = 5.0;
                    list.Add(c);

                    c = new Static(0x2409);
                    c.MoveToWorld(new Point3D(2910, 963, -17), this.Map);
                    list.Add(c);

                    c = new Static(0x2416);
                    c.MoveToWorld(new Point3D(2909, 965, -17), this.Map);
                    list.Add(c);

                    break;
                case 7:
                    c = new Static(0x3069);
                    c.MoveToWorld(new Point3D(2914, 964, -21), this.Map);
                    list.Add(c);

                    c = new Static(0x306A);
                    c.MoveToWorld(new Point3D(2913, 964, -21), this.Map);
                    list.Add(c);

                    c = new Static(0x306B);
                    c.MoveToWorld(new Point3D(2912, 964, -21), this.Map);
                    list.Add(c);

                    c = new ElvenLoveseatEastAddon();
                    c.MoveToWorld(new Point3D(2913, 966, -21), this.Map);
                    c.Movable = false;
                    list.Add(c);

                    c = new Static(0x2CFC);
                    c.MoveToWorld(new Point3D(2912, 963, -21), this.Map);
                    list.Add(c);

                    c = new LocalizedStatic(0x2D74, 1073425);
                    c.MoveToWorld(new Point3D(2914, 963, -21), this.Map);
                    list.Add(c);

                    break;
                case 8:
                    c = new Static(0x2);
                    c.MoveToWorld(new Point3D(2905, 970, -15), this.Map);
                    list.Add(c);

                    c = new Static(0x3);
                    c.MoveToWorld(new Point3D(2905, 969, -15), this.Map);
                    list.Add(c);

                    c = new OrderShield();
                    c.MoveToWorld(new Point3D(2905, 971, -17), this.Map);
                    c.Movable = false;
                    list.Add(c);

                    c = new Static(0x1579);
                    c.MoveToWorld(new Point3D(2904, 971, -21), this.Map);
                    list.Add(c);

                    c = new Static(0x1613);
                    c.MoveToWorld(new Point3D(2908, 969, -21), this.Map);
                    list.Add(c);

                    c = new Static(0x1614);
                    c.MoveToWorld(new Point3D(2908, 968, -21), this.Map);
                    list.Add(c);

                    break;
                case 9:
                    c = new Static(0x1526);
                    c.MoveToWorld(new Point3D(2905, 976, -15), this.Map);
                    list.Add(c);

                    c = new Static(0x1527);
                    c.MoveToWorld(new Point3D(2905, 975, -15), this.Map);
                    list.Add(c);

                    c = new Static(0x151A);
                    c.MoveToWorld(new Point3D(2905, 972, -21), this.Map);
                    list.Add(c);

                    c = new Static(0x151A);
                    c.MoveToWorld(new Point3D(2905, 977, -21), this.Map);
                    list.Add(c);

                    c = new Static(0x151A);
                    c.MoveToWorld(new Point3D(2908, 972, -21), this.Map);
                    list.Add(c);

                    c = new Static(0x151A);
                    c.MoveToWorld(new Point3D(2908, 977, -21), this.Map);
                    list.Add(c);

                    c = new Static(0x1514);
                    c.MoveToWorld(new Point3D(2904, 975, -17), this.Map);
                    list.Add(c);

                    break;
                case 10:
                    c = new Static(0x15C5);
                    c.MoveToWorld(new Point3D(2904, 982, -21), this.Map);
                    list.Add(c);

                    c = new Static(0x15C5);
                    c.MoveToWorld(new Point3D(2904, 979, -21), this.Map);
                    list.Add(c);

                    c = new Static(0x157B);
                    c.MoveToWorld(new Point3D(2904, 981, -21), this.Map);
                    list.Add(c);

                    c = new Static(0x14E3);
                    c.MoveToWorld(new Point3D(2905, 980, -21), this.Map);
                    list.Add(c);

                    c = new Static(0x14E4);
                    c.MoveToWorld(new Point3D(2905, 981, -21), this.Map);
                    list.Add(c);

                    c = new Static(0x14E5);
                    c.MoveToWorld(new Point3D(2906, 981, -21), this.Map);
                    list.Add(c);

                    c = new Static(0x14E6);
                    c.MoveToWorld(new Point3D(2906, 980, -21), this.Map);
                    list.Add(c);

                    c = new ChaosShield();
                    c.MoveToWorld(new Point3D(2905, 978, -19), this.Map);
                    c.Movable = false;
                    list.Add(c);

                    break;
                case 11:
                    c = new FemaleStuddedChest();
                    c.MoveToWorld(new Point3D(2912, 976, -16), this.Map);
                    c.Movable = false;
                    c.Hue = 0x497;
                    list.Add(c);

                    c = new Static(0x1EA8);
                    c.MoveToWorld(new Point3D(2913, 973, -13), this.Map);
                    c.Hue = 0x497;
                    list.Add(c);

                    c = new Static(0x20F8);
                    c.MoveToWorld(new Point3D(2913, 975, -11), this.Map);
                    c.Hue = 0x113;
                    list.Add(c);

                    c = new Static(0x20E9);
                    c.MoveToWorld(new Point3D(2912, 974, -11), this.Map);
                    c.Name = "Troll";
                    list.Add(c);

                    c = new Static(0x2607);
                    c.MoveToWorld(new Point3D(2913, 974, -11), this.Map);
                    list.Add(c);

                    c = new Static(0x25F9);
                    c.MoveToWorld(new Point3D(2912, 975, -11), this.Map);
                    list.Add(c);

                    break;
                case 12:
                    c = new Static(0x1D8A);
                    c.MoveToWorld(new Point3D(2915, 976, -13), this.Map);
                    list.Add(c);

                    c = new Static(0x1D8B);
                    c.MoveToWorld(new Point3D(2916, 976, -13), this.Map);
                    list.Add(c);

                    c = new Static(0x234D);
                    c.MoveToWorld(new Point3D(2915, 975, -10), this.Map);
                    list.Add(c);

                    c = new WizardsHat();
                    c.MoveToWorld(new Point3D(2915, 974, -13), this.Map);
                    c.Movable = false;
                    list.Add(c);
                    break;
            }

            if (list.Count > 0)
                this.Tiers.Add(list);
        }
Beispiel #28
0
        public override void IncreaseTier()
        {
            base.IncreaseTier();

            List <object> list = new List <object>();
            Item          c;

            // don't know names above lev 6
            switch (Tier)
            {
            case 1:
                c = new BookOfChivalry();
                c.MoveToWorld(new Point3D(2924, 979, -18), Map);
                c.Movable = false;
                list.Add(c);

                c = new Longsword();
                c.MoveToWorld(new Point3D(2923, 980, -18), Map);
                c.Movable = false;
                c.ItemID  = 0x26CF;
                list.Add(c);

                c = new Shirt();
                c.MoveToWorld(new Point3D(2924, 978, -18), Map);
                c.Movable = false;
                c.ItemID  = 0x2662;
                c.Name    = "Crisp White Shirt";
                list.Add(c);
                break;

            case 2:
                c = new GraveDust();
                c.MoveToWorld(new Point3D(2921, 972, -17), Map);
                c.Movable = false;
                list.Add(c);

                c = new NoxCrystal();
                c.MoveToWorld(new Point3D(2921, 972, -17), Map);
                c.Movable = false;
                list.Add(c);

                c = new Static(0xF91);
                c.MoveToWorld(new Point3D(2921, 972, -17), Map);
                c.Movable = false;
                list.Add(c);

                c = new NecromancerSpellbook();
                c.MoveToWorld(new Point3D(2922, 972, -18), Map);
                c.Movable = false;
                list.Add(c);

                c = new AnimateDeadScroll();
                c.MoveToWorld(new Point3D(2923, 972, -18), Map);
                c.Movable = false;
                list.Add(c);

                c = new HorrificBeastScroll();
                c.MoveToWorld(new Point3D(2923, 972, -18), Map);
                c.Movable = false;
                list.Add(c);

                c = new VampiricEmbraceScroll();
                c.MoveToWorld(new Point3D(2923, 971, -20), Map);
                c.Movable = false;
                list.Add(c);

                c = new Static(0xFDD);
                c.MoveToWorld(new Point3D(2922, 971, -21), Map);
                list.Add(c);

                c = new Static(0xFDE);
                c.MoveToWorld(new Point3D(2923, 971, -21), Map);
                list.Add(c);

                break;

            case 3:
                c = new JesterSuit();
                c.MoveToWorld(new Point3D(2919, 985, -16), Map);
                c.Movable = false;
                list.Add(c);

                c = new LocalizedStatic(0xE74, 1073424);
                c.MoveToWorld(new Point3D(2919, 984, -11), Map);
                c.Movable = false;
                c.Weight  = 50.0;
                c.Hue     = 0x113;
                list.Add(c);

                c = new JesterHat();
                c.MoveToWorld(new Point3D(2919, 983, -13), Map);
                c.Movable = false;
                c.Hue     = 0x113;
                list.Add(c);

                break;

            case 4:
                c = new Static(0xD25);
                c.MoveToWorld(new Point3D(2916, 984, -13), Map);
                c.Movable = false;
                list.Add(c);

                c = new Static(0x20D9);
                c.MoveToWorld(new Point3D(2916, 982, -12), Map);
                c.Name = "Gargoyle";
                list.Add(c);

                c = new Static(0x2132);
                c.MoveToWorld(new Point3D(2914, 982, -9), Map);
                list.Add(c);

                c = new Static(0x25B6);
                c.MoveToWorld(new Point3D(2913, 982, -13), Map);
                list.Add(c);

                c = new Static(0x25B6);
                c.MoveToWorld(new Point3D(2913, 982, -13), Map);
                list.Add(c);

                c = new Static(0x222E);
                c.MoveToWorld(new Point3D(2915, 983, -14), Map);
                list.Add(c);

                c = new Static(0x2211);
                c.MoveToWorld(new Point3D(2914, 984, -13), Map);
                list.Add(c);

                break;

            case 5:
                c = new LocalizedStatic(0xE30, 1073421);
                c.MoveToWorld(new Point3D(2911, 983, -12), Map);
                c.Weight = 10.0;
                list.Add(c);

                c = new LocalizedStatic(0x2937, 1073422);
                c.MoveToWorld(new Point3D(2911, 984, -13), Map);
                list.Add(c);

                c = new LocalizedStatic(0x12AA, 1073423);
                c.MoveToWorld(new Point3D(2911, 985, -14), Map);
                list.Add(c);

                c = new Static(0xEAF);
                c.MoveToWorld(new Point3D(2910, 985, -21), Map);
                c.Weight = 5.0;
                list.Add(c);

                c = new Static(0xEAE);
                c.MoveToWorld(new Point3D(2910, 986, -21), Map);
                c.Weight = 5.0;
                list.Add(c);

                break;

            case 6:
                c = new Tessen();
                c.MoveToWorld(new Point3D(2910, 966, -17), Map);
                c.Movable = false;
                list.Add(c);

                c = new Shuriken();
                c.MoveToWorld(new Point3D(2910, 965, -17), Map);
                c.Movable = false;
                list.Add(c);

                c = new Static(0x2855);
                c.MoveToWorld(new Point3D(2910, 964, -16), Map);
                c.Weight = 5.0;
                list.Add(c);

                c = new Static(0x241D);
                c.MoveToWorld(new Point3D(2910, 963, -20), Map);
                c.Weight = 5.0;
                list.Add(c);

                c = new Static(0x2409);
                c.MoveToWorld(new Point3D(2910, 963, -17), Map);
                list.Add(c);

                c = new Static(0x2416);
                c.MoveToWorld(new Point3D(2909, 965, -17), Map);
                list.Add(c);

                break;

            case 7:
                c = new Static(0x3069);
                c.MoveToWorld(new Point3D(2914, 964, -21), Map);
                list.Add(c);

                c = new Static(0x306A);
                c.MoveToWorld(new Point3D(2913, 964, -21), Map);
                list.Add(c);

                c = new Static(0x306B);
                c.MoveToWorld(new Point3D(2912, 964, -21), Map);
                list.Add(c);

                c = new ElvenLoveseatEastAddon();
                c.MoveToWorld(new Point3D(2913, 966, -21), Map);
                c.Movable = false;
                list.Add(c);

                c = new Static(0x2CFC);
                c.MoveToWorld(new Point3D(2912, 963, -21), Map);
                list.Add(c);

                c = new LocalizedStatic(0x2D74, 1073425);
                c.MoveToWorld(new Point3D(2914, 963, -21), Map);
                list.Add(c);


                break;

            case 8:
                c = new Static(0x2);
                c.MoveToWorld(new Point3D(2905, 970, -15), Map);
                list.Add(c);

                c = new Static(0x3);
                c.MoveToWorld(new Point3D(2905, 969, -15), Map);
                list.Add(c);

                c = new OrderShield();
                c.MoveToWorld(new Point3D(2905, 971, -17), Map);
                c.Movable = false;
                list.Add(c);

                c = new Static(0x1579);
                c.MoveToWorld(new Point3D(2904, 971, -21), Map);
                list.Add(c);

                c = new Static(0x1613);
                c.MoveToWorld(new Point3D(2908, 969, -21), Map);
                list.Add(c);

                c = new Static(0x1614);
                c.MoveToWorld(new Point3D(2908, 968, -21), Map);
                list.Add(c);

                break;

            case 9:
                c = new Static(0x1526);
                c.MoveToWorld(new Point3D(2905, 976, -15), Map);
                list.Add(c);

                c = new Static(0x1527);
                c.MoveToWorld(new Point3D(2905, 975, -15), Map);
                list.Add(c);

                c = new Static(0x151A);
                c.MoveToWorld(new Point3D(2905, 972, -21), Map);
                list.Add(c);

                c = new Static(0x151A);
                c.MoveToWorld(new Point3D(2905, 977, -21), Map);
                list.Add(c);

                c = new Static(0x151A);
                c.MoveToWorld(new Point3D(2908, 972, -21), Map);
                list.Add(c);

                c = new Static(0x151A);
                c.MoveToWorld(new Point3D(2908, 977, -21), Map);
                list.Add(c);

                c = new Static(0x1514);
                c.MoveToWorld(new Point3D(2904, 975, -17), Map);
                list.Add(c);

                break;

            case 10:
                c = new Static(0x15C5);
                c.MoveToWorld(new Point3D(2904, 982, -21), Map);
                list.Add(c);

                c = new Static(0x15C5);
                c.MoveToWorld(new Point3D(2904, 979, -21), Map);
                list.Add(c);

                c = new Static(0x157B);
                c.MoveToWorld(new Point3D(2904, 981, -21), Map);
                list.Add(c);

                c = new Static(0x14E3);
                c.MoveToWorld(new Point3D(2905, 980, -21), Map);
                list.Add(c);

                c = new Static(0x14E4);
                c.MoveToWorld(new Point3D(2905, 981, -21), Map);
                list.Add(c);

                c = new Static(0x14E5);
                c.MoveToWorld(new Point3D(2906, 981, -21), Map);
                list.Add(c);

                c = new Static(0x14E6);
                c.MoveToWorld(new Point3D(2906, 980, -21), Map);
                list.Add(c);

                c = new ChaosShield();
                c.MoveToWorld(new Point3D(2905, 978, -19), Map);
                c.Movable = false;
                list.Add(c);

                break;

            case 11:
                c = new FemaleStuddedChest();
                c.MoveToWorld(new Point3D(2912, 976, -16), Map);
                c.Movable = false;
                c.Hue     = 0x497;
                list.Add(c);

                c = new Static(0x1EA8);
                c.MoveToWorld(new Point3D(2913, 973, -13), Map);
                c.Hue = 0x497;
                list.Add(c);

                c = new Static(0x20F8);
                c.MoveToWorld(new Point3D(2913, 975, -11), Map);
                c.Hue = 0x113;
                list.Add(c);

                c = new Static(0x20E9);
                c.MoveToWorld(new Point3D(2912, 974, -11), Map);
                c.Name = "Troll";
                list.Add(c);

                c = new Static(0x2607);
                c.MoveToWorld(new Point3D(2913, 974, -11), Map);
                list.Add(c);

                c = new Static(0x25F9);
                c.MoveToWorld(new Point3D(2912, 975, -11), Map);
                list.Add(c);

                break;

            case 12:
                c = new Static(0x1D8A);
                c.MoveToWorld(new Point3D(2915, 976, -13), Map);
                list.Add(c);

                c = new Static(0x1D8B);
                c.MoveToWorld(new Point3D(2916, 976, -13), Map);
                list.Add(c);

                c = new Static(0x234D);
                c.MoveToWorld(new Point3D(2915, 975, -10), Map);
                list.Add(c);

                c = new WizardsHat();
                c.MoveToWorld(new Point3D(2915, 974, -13), Map);
                c.Movable = false;
                list.Add(c);
                break;
            }

            if (list.Count > 0)
            {
                Tiers.Add(list);
            }
        }
        public TerathanIslandTreasureChest() : base(0x2DF1)
        {
            Name    = "a treasure chest -30-";
            Movable = true;
            Hue     = 285;
            Weight  = 1000.0;

            TrapPower = 0;
            Locked    = true;

            RequiredSkill = 30;
            LockLevel     = 30;
            MaxLockLevel  = 35;

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

/////////////////////////////////////// Books

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

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

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

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

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

/////////////////////////////////////// Meats

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

/////////////////////////////////////// Eating Utensils

            if (Utility.RandomDouble() < 0.08)
            {
                DropItem(new KnifeLeft());
            }
            if (Utility.RandomDouble() < 0.08)
            {
                DropItem(new KnifeRight());
            }
            if (Utility.RandomDouble() < 0.08)
            {
                DropItem(new PewterMug());
            }
            if (Utility.RandomDouble() < 0.08)
            {
                DropItem(new Plate());
            }
            if (Utility.RandomDouble() < 0.08)
            {
                DropItem(new SpoonLeft());
            }
            if (Utility.RandomDouble() < 0.08)
            {
                DropItem(new SpoonRight());
            }

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


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

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

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

            Item ReagentLoot = Loot.RandomReagent();

            ReagentLoot.Amount = Utility.Random(17, 22);
            DropItem(ReagentLoot);

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

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

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

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

            Item PotionLoot = Loot.RandomPotion();

            DropItem(PotionLoot);

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

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

/////////////////////////////////////// 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, 2, 22, 25);
                weapon.Hue = 285;

                weapon.WeaponAttributes.HitLeechStam = 5;
                weapon.Attributes.BonusHits          = 10;

                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, 3, 22, 25);
                armor.Hue = 285;

                armor.Attributes.WeaponDamage = 3;

                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, 3, 22, 25);
                hat.Hue = 285;

                hat.Attributes.BonusHits   = 10;
                hat.Attributes.SpellDamage = 5;
                hat.Resistances.Energy     = 10;

                DropItem(hat);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseClothing clothing = Loot.RandomClothing(true);
                BaseRunicTool.ApplyAttributesTo(clothing, 3, 22, 25);
                clothing.Hue = 285;

                clothing.Attributes.BonusHits    = 5;
                clothing.Attributes.DefendChance = 3;
                clothing.Resistances.Physical    = 5;

                DropItem(clothing);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseShield shield = new WoodenKiteShield();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(shield, 3, 22, 25);
                }
                shield.Hue = 285;

                shield.Attributes.BonusHits = 10;

                DropItem(shield);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel bracelet = new GoldBracelet();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(bracelet, 3, 22, 25);
                }
                bracelet.Hue = 285;

                bracelet.Attributes.WeaponDamage = 5;
                bracelet.Attributes.DefendChance = 2;
                bracelet.Resistances.Fire        = 5;

                DropItem(bracelet);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel earrings = new SilverEarrings();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(earrings, 3, 22, 25);
                }
                earrings.Hue = 285;

                earrings.Attributes.WeaponDamage = 5;
                earrings.Attributes.DefendChance = 3;
                earrings.Resistances.Cold        = 5;

                DropItem(earrings);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel necklace = new GoldNecklace();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(necklace, 3, 22, 25);
                }
                necklace.Hue = 285;

                necklace.Attributes.WeaponDamage = 5;
                necklace.Attributes.DefendChance = 5;
                necklace.Resistances.Energy      = 5;

                DropItem(necklace);
            }

            if (Utility.RandomDouble() < 0.15)
            {
                BaseJewel ring = new SilverRing();
                if (Core.AOS)
                {
                    BaseRunicTool.ApplyAttributesTo(ring, 3, 22, 25);
                }
                ring.Hue = 285;

                ring.Attributes.WeaponDamage = 5;
                ring.Attributes.DefendChance = 2;
                ring.Resistances.Poison      = 5;

                DropItem(ring);
            }
        }
Beispiel #30
0
		public BloodStoneWitch() : base( AIType.AI_SphereMage, FightMode.Closest, 10, 1, 0.2, 0.4 )
		{
			Name = NameList.RandomName( "female" );
			Title = "the Blood Stone Witch";
			Body = 0x0191;
			Hue = 0x0493;
			Female = true;
			SetStr( 100, 150 );
			SetDex( 100, 150 );
			SetInt( 200 );

			SetHits( 100, 150 );
			SetStam( 100, 150 );
			SetMana( 200 );
			SetDamage( 30, 40 );

			AddItem( new LongHair( 1 ) );

			Item temp;
			temp = new FancyShirt( 0 );
			temp.Movable = false;
			AddItem( temp );

			temp = new Skirt( 1 );
			temp.Movable = false;
			AddItem( temp );

			temp = new WizardsHat( 1 );
			temp.Movable = false;
			AddItem( temp );

			temp = new ThighBoots( 1 );
			temp.Movable = false;
			AddItem( temp );

			temp = new GnarledStaff();
			AddItem( temp );
			//PackGold(100, 200);

			SetSkill( SkillName.MagicResist, 80.0, 90.0 );
			SetSkill( SkillName.Magery, 100.0, 150.0 );
			SetSkill( SkillName.Macing, 55.0, 75.0 );
			SetSkill( SkillName.Tactics, 70.0, 90.0 );
			SetSkill( SkillName.Wrestling, 40.0, 55.0 );

			Fame = Utility.RandomMinMax( 2000, 4000 );
			Karma = Utility.RandomMinMax( -3000, -5000 );

			VirtualArmor = 45;

			PackItem( new Sandals() );
		}