Inheritance: BaseArmor
Exemple #1
0
        public Zombie()
            : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.45, 0.8)
        {
            Body = 3;
            Name = "a zombie";
            SetStr( 46, 70 );
            SetHits( 46, 70 );
            SetDex( 31, 50 );
            SetStam( 31, 50 );
            SetInt( 26, 40 );
            SetMana( 26, 40 );
            Karma = -125;

            BaseSoundID = 471;
            SetSkill( SkillName.Tactics, 35.1, 50 );
            SetSkill( SkillName.MagicResist, 15.1, 40 );
            SetSkill( SkillName.Parry, 20.1, 30 );
            SetSkill( SkillName.Wrestling, 35.1, 50 );

            VirtualArmor = 9;
            SetDamage( 2, 8 );

            Item item = null;
            LootPack.Poor.Generate( this );
            if ( Utility.RandomBool() )
                PackGold( 5, 25 );
            if ( Utility.RandomBool() )
                PackGem();
            switch ( Utility.Random( 10 ) )
            {
                case 0:
                {
                    item = new BoneChest();
                    break;
                }
                case 1:
                {
                    item = new BoneLegs();
                    break;
                }
                case 2:
                {
                    item = new BoneArms();
                    break;
                }
                case 3:
                {
                    item = new BoneGloves();
                    break;
                }
                case 4:
                {
                    item = new BoneHelm();
                    break;
                }
            }
            PackItem( item );
        }
        public TheCursedWarrior()
            : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4)
        {
            Body = 0x190;
            Name = NameList.RandomName("male");
            Title = "the cursed warrior";
            Hue = 2130;

            SetStr(350);
            SetDex(150);
            SetInt(100);

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

            SetSkill(SkillName.Wrestling, 74.0, 80.0);
            SetSkill(SkillName.Swords, 90.0, 95.0);
            SetSkill(SkillName.Anatomy, 120.0, 125.0);
            SetSkill(SkillName.MagicResist, 90.0, 94.0);
            SetSkill(SkillName.Tactics, 90.0, 95.0);
            SetSkill(SkillName.Healing, 90.0);

            Fame = NotorietyHandlers.GetNotorietyByLevel( 2 );
            Karma = NotorietyHandlers.GetNotorietyByLevel( -2 );

            VirtualArmor = 60;

            BoneArms arms = new BoneArms();
            arms.Hue = m_iArmorHue;
            AddItem(CursedCaveUtility.MutateItem(arms, 10));

            BoneGloves gloves = new BoneGloves();
            gloves.Hue = m_iArmorHue;
            AddItem(CursedCaveUtility.MutateItem(gloves, 10));

            BoneChest tunic = new BoneChest();
            tunic.Hue = m_iArmorHue;
            AddItem(CursedCaveUtility.MutateItem(tunic, 10));

            BoneLegs legs = new BoneLegs();
            legs.Hue = m_iArmorHue;
            AddItem(CursedCaveUtility.MutateItem(legs, 10));

            BoneHelm helm = new BoneHelm();
            helm.Hue = m_iArmorHue;
            AddItem(CursedCaveUtility.MutateItem(helm, 10));

            AddItem(new Shoes());
            AddItem(CursedCaveUtility.MutateItem(new HeaterShield(), 10));

            VikingSword weapon = new VikingSword();
            AddItem(CursedCaveUtility.MutateItem(weapon, 10));
        }
Exemple #3
0
        public Skeleton()
            : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.45, 0.8)
        {
            Body = Utility.RandomList( 50,56 );
            Name = "a skeleton";
            SetStr( 56, 80 );
            SetHits( 56, 80 );
            SetDex( 56, 75 );
            SetStam( 56, 75 );
            SetInt( 16, 40 );
            SetMana( 0 );
            Karma = -125;

            BaseSoundID = 451;
            SetSkill( SkillName.Tactics, 45.1, 60 );
            SetSkill( SkillName.MagicResist, 45.1, 60 );
            SetSkill( SkillName.Parry, 45.1, 55 );
            SetSkill( SkillName.Wrestling, 45.1, 55 );

            VirtualArmor = 8;
            SetDamage( 2, 8 );

            Item item = null;
            switch ( Utility.Random( 10 ) )
            {
                case 0:
                {
                    item = new BoneChest();
                    break;
                }
                case 1:
                {
                    item = new BoneLegs();
                    break;
                }
                case 2:
                {
                    item = new BoneArms();
                    break;
                }
                case 3:
                {
                    item = new BoneGloves();
                    break;
                }
                case 4:
                {
                    item = new BoneHelm();
                    break;
                }
            }
            PackItem( item );
            LootPack.Meager.Generate( this );
        }
		public KhaldunZealot():base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
		{
			Body = 0x190;
			Name = "Khaldun Zealot";
			Hue = 0;

			this.InitStats(Utility.Random(359,399), Utility.Random(138,151), Utility.Random(76,97));

			this.Skills[SkillName.Wrestling].Base = Utility.Random(74,80);
			this.Skills[SkillName.Swords].Base = Utility.Random(90,95);
			this.Skills[SkillName.Anatomy].Base = Utility.Random(120,125);
			this.Skills[SkillName.MagicResist].Base = Utility.Random(90,94);
			this.Skills[SkillName.Tactics].Base = Utility.Random(90,95);

			this.Fame = Utility.Random(5000,9999);
			this.Karma = Utility.Random(-5000,-9999);
			this.VirtualArmor = 40;

			BoneArms arms = new BoneArms();
			arms.Hue = 0x3A8;
			arms.LootType = LootType.Blessed;
			AddItem( arms );

			BoneGloves gloves = new BoneGloves();
			gloves.Hue = 0x3A8;
			gloves.LootType = LootType.Blessed;
			AddItem( gloves );

			BoneChest tunic = new BoneChest();
			tunic.Hue = 0x3A8;
			tunic.LootType = LootType.Blessed;
			AddItem( tunic );
			BoneLegs legs = new BoneLegs();
			legs.Hue = 0x3A8;
			legs.LootType = LootType.Blessed;
			AddItem( legs );

			BoneHelm helm = new BoneHelm();
			helm.Hue = 0x3A8;
			helm.LootType = LootType.Blessed;
			AddItem( helm );

			AddItem( new Shoes() );
			AddItem( new Buckler());

			VikingSword weapon = new VikingSword();

			weapon.Movable = true;

			AddItem( weapon );
		}
        public override void InitOutfit()
        {
            AddItem( new Sandals( 0x1 ) );
            AddItem( new Robe( 0x66D ) );
            AddItem( new BlackStaff() );
            AddItem( new WizardsHat( 0x1 ) );

            AddItem( new Mustache( 0x482 ) );
            AddItem( new LongHair( 0x482 ) );

            Item gloves = new BoneGloves();
            gloves.Hue = 0x66D;
            AddItem( gloves );

            Item gorget = new PlateGorget();
            gorget.Hue = 0x1;
            AddItem( gorget );
        }
Exemple #6
0
        public override void InitOutfit()
        {
            this.AddItem(new Sandals(0x1));
            this.AddItem(new Robe(0x66D));
            this.AddItem(new BlackStaff());
            this.AddItem(new WizardsHat(0x1));

            this.FacialHairItemID = 0x2041;
            this.FacialHairHue = 0x482;

            this.HairItemID = 0x203C;
            this.HairHue = 0x482;

            Item gloves = new BoneGloves();
            gloves.Hue = 0x66D;
            this.AddItem(gloves);

            Item gorget = new PlateGorget();
            gorget.Hue = 0x1;
            this.AddItem(gorget);
        }
Exemple #7
0
		public override void InitOutfit()
		{
			AddItem( Immovable(new Sandals( 0x1 )) );
			AddItem( Immovable(new Robe( 0x66D )) );
			AddItem( Immovable(new BlackStaff()) );
			AddItem( Immovable(new WizardsHat( 0x1 )) );

			FacialHairItemID = 0x2041;
			FacialHairHue = 0x482;

			HairItemID = 0x203C;
			HairHue = 0x482;

			Item gloves = new BoneGloves();
			gloves.Hue = 0x66D;
			AddItem( Immovable(gloves) );

			Item gorget = new PlateGorget();
			gorget.Hue = 0x1;
			AddItem( Immovable(gorget) );
		}
		public ManOfSin() : base( AIType.AI_Melee, FightMode.None, 10, 1, 0.2, 0.4 )
		{
			Title = "Power Of Darkness";
			Name = "Lucifer";
			Body = 0x190;
			BaseSoundID = 0x165;
			Hue = 1194;
			
			Item BoneGloves = new BoneGloves();
			BoneGloves.Hue = 1194;
			BoneGloves.LootType = LootType.Blessed;
			BoneGloves.Movable = false;
			AddItem( BoneGloves );
			
			Item BoneChest = new BoneChest();
			BoneChest.Hue = 1194;
			BoneChest.LootType = LootType.Blessed;
			BoneChest.Movable = false;
			AddItem( BoneChest );
			
			Item BoneArms = new BoneArms();
			BoneArms.Hue = 1194;
			BoneArms.LootType = LootType.Blessed;
			BoneArms.Movable = false;
			AddItem( BoneArms );
			
			Item BoneHelm = new BoneHelm();
			BoneHelm.Hue = 1194;
			BoneHelm.LootType = LootType.Blessed;
			BoneHelm.Movable = false;
			AddItem( BoneHelm );
			
			Item LongPants = new LongPants();
			LongPants.Hue = 1194;
			LongPants.LootType = LootType.Blessed;
			LongPants.Movable = false;
			AddItem( LongPants );
			
			Item FancyShirt = new FancyShirt();
			FancyShirt.Hue = 1194;
			FancyShirt.LootType = LootType.Blessed;
			FancyShirt.Movable = false;
			AddItem( FancyShirt );
			
			Item Boots = new Boots();
			Boots.Hue = 1;
			Boots.LootType = LootType.Blessed;
			Boots.Movable = false;
			AddItem( Boots ); 
			
			Item DeathAxe = new DeathAxe();
			DeathAxe.Hue = 1194;
			DeathAxe.LootType = LootType.Blessed;
			DeathAxe.Movable = false;
			AddItem( DeathAxe );
			
			SetStr( 300, 450 );
			SetDex( 150, 300 );
			SetInt( 420, 420 );
			
			SetHits( 10000, 15000 );
			
			SetDamage( 20, 28 );
			
			SetDamageType( ResistanceType.Physical, 100 );
			SetDamageType( ResistanceType.Cold, 100 );
			SetDamageType( ResistanceType.Fire, 100 );
			SetDamageType( ResistanceType.Energy, 100 );
			SetDamageType( ResistanceType.Poison, 100 );
			
			SetResistance( ResistanceType.Physical, 100 );
			SetResistance( ResistanceType.Cold, 100 );
			SetResistance( ResistanceType.Fire, 100 );
			SetResistance( ResistanceType.Energy, 100 );
			SetResistance( ResistanceType.Poison, 100 );

			SetSkill( SkillName.Anatomy,  99.0, 100.0 );
			SetSkill( SkillName.EvalInt,  99.0, 100.0 );
			SetSkill( SkillName.Magery,  99.0, 100.0 );
			SetSkill( SkillName.MagicResist,  99.0, 100.0 );
			SetSkill( SkillName.Swords, 99.0, 100.0 );
			SetSkill( SkillName.Tactics, 99.0, 100.0 );
			SetSkill( SkillName.Lumberjacking, 99.0, 100.0 );

			Fame = -15000;
			Karma = -15000;

			VirtualArmor = 35;


			PackItem( new Gold( 50, 60 ) );

			new SkeletalMount().Rider = this;

		}
		public KhaldunZealot(): base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
		{
			Body = 0x190;
			Title = "the Knight";
			Hue = 0;

            SetStr(767, 945);
            SetDex(66, 75);
            SetInt(46, 70);

            SetHits(476, 552);

            SetDamage(20, 25);

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

			Fame = 10000;
			Karma = -10000;
			VirtualArmor = 40;

			VikingSword weapon = new VikingSword();
			weapon.Hue = 0x835;
            weapon.Identified = true;
			weapon.Movable = false;
            AddItem(Immovable(weapon));

			MetalShield shield = new MetalShield();
			shield.Hue = 0x835;
            shield.Identified = true;
			shield.Movable = false;
			AddItem( Immovable(shield) );

			BoneHelm helm = new BoneHelm();
			helm.Hue = 0x835;
            helm.Identified = true;
			AddItem( Immovable(helm ));

			BoneArms arms = new BoneArms();
			arms.Hue = 0x835;
            arms.Identified = true;
			AddItem( Immovable(arms) );

			BoneGloves gloves = new BoneGloves();
			gloves.Hue = 0x835;
            gloves.Identified = true;
			AddItem( Immovable(gloves) );

			BoneChest tunic = new BoneChest();
			tunic.Hue = 0x835;
            tunic.Identified = true;
			AddItem( Immovable(tunic) );

			BoneLegs legs = new BoneLegs();
			legs.Hue = 0x835;
            legs.Identified = true;
			AddItem( Immovable(legs) );

			AddItem( new Boots() );
		}
		public CaptainJackSparrow(): base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
		{
			Body = 0x190;
			Name = "Captain Jack Sparrow";
			Title = "Dread Pirate";
			Hue = 0;

			SetStr( 351, 400 );
			SetDex( 151, 165 );
			SetInt( 76, 100 );

			SetHits( 1500, 1700 );

			SetDamage( 25, 35 );

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

			SetResistance( ResistanceType.Physical, 65 );
			SetResistance( ResistanceType.Fire, 30 );
			SetResistance( ResistanceType.Cold, 60 );
			SetResistance( ResistanceType.Poison, 35 );
			SetResistance( ResistanceType.Energy, 25, 35 );

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

			Fame = 10000;
			Karma = -10000;         

			VirtualArmor = 65;          
         
			Cutlass weapon = new Cutlass();
			weapon.Hue = 0x835;
			weapon.Movable = false;
			AddItem( weapon );

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

			TricorneHat hat = new TricorneHat();
			hat.Hue = 0x835;
			AddItem( hat );

			BoneArms arms = new BoneArms();
			arms.Hue = 0x835;
			AddItem( arms );

			BoneGloves gloves = new BoneGloves();
			gloves.Hue = 0x835;
			AddItem( gloves );

			BoneChest tunic = new BoneChest();
			tunic.Hue = 0x835;
			AddItem( tunic );

			BoneLegs legs = new BoneLegs();
			legs.Hue = 0x835;
			AddItem( legs );

			AddItem( new Boots() );
            PackGold(1500, 2000);

            /*switch (Utility.Random(6))
            {
                case 0: PackItem(new DreadPirateHat()); break;
                case 1: PackItem(new ShipModelOfTheHMSCape()); break;
                case 2: PackItem(new CaptainJackSparrowsCutlass()); break;

            }*/
        }
		public KhaldunZealot(): base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
		{
			Body = 0x190;
			Name = "Zealot of Khaldun";
			Title = "the Knight";
			Hue = 0;

			SetStr( 351, 400 );
			SetDex( 151, 165 );
			SetInt( 76, 100 );

			SetHits( 448, 470 );

			SetDamage( 15, 25 );

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

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

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

			Fame = 10000;
			Karma = -10000;
			VirtualArmor = 40;

			VikingSword weapon = new VikingSword();
			weapon.Hue = 0x835;
			weapon.Movable = false;
			AddItem( weapon );

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

			BoneHelm helm = new BoneHelm();
			helm.Hue = 0x835;
			AddItem( helm );

			BoneArms arms = new BoneArms();
			arms.Hue = 0x835;
			AddItem( arms );

			BoneGloves gloves = new BoneGloves();
			gloves.Hue = 0x835;
			AddItem( gloves );

			BoneChest tunic = new BoneChest();
			tunic.Hue = 0x835;
			AddItem( tunic );

			BoneLegs legs = new BoneLegs();
			legs.Hue = 0x835;
			AddItem( legs );

			AddItem( new Boots() );
		}
        public SkeletalKnight()
            : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.45, 0.8)
        {
            Body = 57;
            Name = "a skeletal knight";
            SetStr( 96, 150 );
            SetHits( 96, 150 );
            SetDex( 76, 95 );
            SetStam( 76, 95 );
            SetInt( 36, 60 );
            SetMana( 0 );
            Karma = -125;

            BaseSoundID = 451;
            SetSkill( SkillName.Tactics, 85.1, 100 );
            SetSkill( SkillName.MagicResist, 65.1, 80 );
            SetSkill( SkillName.Parry, 85.1, 95 );
            SetSkill( SkillName.Wrestling, 85.1, 95 );

            VirtualArmor = 18;
            SetDamage( 2, 20 );

            PackItem( new PlateChest() );
            LootPack.Rich.Generate( this );

            Item item = null;
            switch ( Utility.Random( 10 ) )
            {
                case 0:
                {
                    item = new BoneChest();
                    break;
                }
                case 1:
                {
                    item = new BoneLegs();
                    break;
                }
                case 2:
                {
                    item = new BoneArms();
                    break;
                }
                case 3:
                {
                    item = new BoneGloves();
                    break;
                }
                case 4:
                {
                    item = new BoneHelm();
                    break;
                }
            }
            PackItem( item );
        }
Exemple #13
0
        public override void GenerateLoot()
        {
            AddLoot(LootPack.Poor);

            Item item = null;
            if (Utility.RandomBool())
                PackGem();

            switch (Utility.Random(15))
            {
                case 0:
                    {
                        item = new BoneChest();
                        PackItem(item);
                        break;
                    }
                case 1:
                    {
                        item = new BoneLegs();
                        PackItem(item);
                        break;
                    }
                case 2:
                    {
                        item = new BoneArms();
                        PackItem(item);
                        break;
                    }
                case 3:
                    {
                        item = new BoneGloves();
                        PackItem(item);
                        break;
                    }
                case 4:
                    {
                        item = new BoneHelm();
                        PackItem(item);
                        break;
                    }
            }
        }
Exemple #14
0
		public DarkElfGrunt() : base( AIType.AI_SphereMelee, FightMode.Closest, 10, 1, 0.2, 0.4 )
		{
			Title = "the Dark Elf";
			Hue = 0x0597;

			Item temp;

			temp = new BoneChest();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );
			temp = new BoneGloves();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );
			temp = new BoneHelm();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );
			temp = new ThighBoots();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );
			temp = new StuddedLegs();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );
			temp = new WoodenShield();
			AddItem( temp );
			temp = new WarAxe();
			AddItem( temp );
			temp = new FancyShirt();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );

			Female = Utility.RandomBool();
			if( Female )
			{
				Body = 0x191;
				Name = NameList.RandomName( "pixie" );
				AddItem( new LongHair( 0 ) );
			}
			else
			{
				Body = 0x190;
				Name = NameList.RandomName( "golem controller" );
				AddItem( new KrisnaHair( 0 ) );
				AddItem( new Goatee( 0 ) );
			}

			SetStr( 50, 70 );
			SetDex( 61, 80 );
			SetInt( 50, 60 );

			SetHits( 150, 200 );

			SetDamage( 10, 20 );

			SetDamageType( ResistanceType.Physical, 100 );

			SetResistance( ResistanceType.Physical, 30, 40 );
			SetResistance( ResistanceType.Fire, 25, 35 );
			SetResistance( ResistanceType.Cold, 35, 45 );
			SetResistance( ResistanceType.Poison, 5, 15 );
			SetResistance( ResistanceType.Energy, 15, 25 );

			SetSkill( SkillName.Archery, 60.0, 80.0 );
			SetSkill( SkillName.Fencing, 60.0, 80.0 );
			SetSkill( SkillName.Macing, 60.0, 80.0 );
			SetSkill( SkillName.Swords, 60.0, 80.0 );
			SetSkill( SkillName.MagicResist, 15.0, 38.0 );
			SetSkill( SkillName.Tactics, 60.0, 90.0 );
			SetSkill( SkillName.Wrestling, 25.0, 40.0 );

			Fame = Utility.RandomMinMax( 1000, 2000 );
			Karma = Utility.RandomMinMax( -3500, -2500 );

			VirtualArmor = 15;
		}
		public override void OnGaveMeleeAttack( Mobile defender )
		{
			int kpgainmin, kpgainmax;

			if ( this.Stage == 1 )
			{
				if ( defender is BaseCreature )
				{
					BaseCreature bc = (BaseCreature)defender;

					if ( bc.Controlled != true )
					{
						kpgainmin = 6 + ( bc.HitsMax ) / 10;
						kpgainmax = 6 + ( bc.HitsMax ) / 10;

						this.KP += Utility.RandomList( kpgainmin, kpgainmax );
					}
				}

				if ( this.KP >= 50000 )
				{
					if ( this.S1 == true )
					{
						this.S1 = false;
						int hits, va, mindamage, maxdamage;

						hits = ( this.HitsMax + 200 );

						va = ( this.VirtualArmor + 10 );

						mindamage = this.DamageMin + ( 1 );
						maxdamage = this.DamageMax + ( 1 );

						this.Warmode = false;
						this.Say( "*"+ this.Name +" achieves a new level of combat*");
						this.SetDamage( mindamage, maxdamage );
						this.SetHits( hits );
						this.VirtualArmor = va;
						this.Stage = 2;
						this.Title = "the Shadow Knight";

						this.SetDamageType( ResistanceType.Physical, 20 );
						this.SetDamageType( ResistanceType.Fire, 20 );
						this.SetDamageType( ResistanceType.Cold, 20 );
						this.SetDamageType( ResistanceType.Poison, 20 );
						this.SetDamageType( ResistanceType.Energy, 20 );

						this.SetResistance( ResistanceType.Physical, 45 );
						this.SetResistance( ResistanceType.Fire, 45 );
						this.SetResistance( ResistanceType.Cold, 45 );
						this.SetResistance( ResistanceType.Poison, 45 );
						this.SetResistance( ResistanceType.Energy, 45 );

						this.RawStr += 20;
						this.RawInt += 10;
						this.RawDex += 10;

						Item del = this.FindItemOnLayer( Layer.OuterTorso ); // The Robe
						if ( del != null )
						{
							del.Delete();
						}

						del = this.FindItemOnLayer( Layer.InnerTorso );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor chest = new LeatherChest();
						chest.Hue = 1175;
						chest.Movable = false;
						AddItem( chest );

						del = this.FindItemOnLayer( Layer.Pants );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor legs = new LeatherLegs();
						legs.Hue = 1175;
						legs.Movable = false;	
						AddItem( legs );

						del = this.FindItemOnLayer( Layer.Neck );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor gorget = new LeatherGorget();
						gorget.Hue = 1175;
						gorget.Movable = false;	
						AddItem( gorget );

						del = this.FindItemOnLayer( Layer.Gloves );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor gloves = new LeatherGloves();
						gloves.Hue = 1175;
						gloves.Movable = false;	
						AddItem( gloves );

						del = this.FindItemOnLayer( Layer.Helm );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor helm = new LeatherCap();
						helm.Hue = 1175;
						helm.Movable = false;	
						AddItem( helm );

						del = this.FindItemOnLayer( Layer.Arms );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor arms = new LeatherArms();
						arms.Hue = 1175;
						arms.Movable = false;	
						AddItem( arms );

						del = this.FindItemOnLayer( Layer.Shoes );
						if ( del != null )
						{
							del.Delete();
						}
						Item sandals = new Sandals();
						sandals.Hue = 1153;
						sandals.Movable = false;	
						AddItem( sandals );
					}
				}
			}

			else if ( this.Stage == 2 )
			{
				if ( defender is BaseCreature )
				{
					BaseCreature bc = (BaseCreature)defender;

					if ( bc.Controlled != true )
					{
						kpgainmin = 5 + ( bc.HitsMax ) / 10;
						kpgainmax = 5 + ( bc.HitsMax ) / 10;

						this.KP += Utility.RandomList( kpgainmin, kpgainmax );
					}
				}

				if ( this.KP >= 100000 )
				{
					if ( this.S2 == true )
					{
						this.S2 = false;
						int hits, va, mindamage, maxdamage;

						hits = ( this.HitsMax + 100 );

						va = ( this.VirtualArmor + 5 );

						mindamage = this.DamageMin + ( 2 );
						maxdamage = this.DamageMax + ( 2 );

						this.Warmode = false;
						this.Say( "*"+ this.Name +" achieves a new level of combat*");
						this.SetDamage( mindamage, maxdamage );
						this.SetHits( hits );
						this.VirtualArmor = va;
						this.Stage = 3;
						this.Title = "the Golden Knight";

						this.SetDamageType( ResistanceType.Physical, 20 );
						this.SetDamageType( ResistanceType.Fire, 20 );
						this.SetDamageType( ResistanceType.Cold, 20 );
						this.SetDamageType( ResistanceType.Poison, 20 );
						this.SetDamageType( ResistanceType.Energy, 20 );

						this.SetResistance( ResistanceType.Physical, 55 );
						this.SetResistance( ResistanceType.Fire, 55 );
						this.SetResistance( ResistanceType.Cold, 55 );
						this.SetResistance( ResistanceType.Poison, 55 );
						this.SetResistance( ResistanceType.Energy, 55 );

						this.RawStr += 20;
						this.RawInt += 50;
						this.RawDex += 50;

						Item del = this.FindItemOnLayer( Layer.InnerTorso );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor chest = new StuddedChest();
						chest.Hue = 1161;
						chest.Movable = false;
						AddItem( chest );

						del = this.FindItemOnLayer( Layer.Pants );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor legs = new StuddedLegs();
						legs.Hue = 1161;
						legs.Movable = false;	
						AddItem( legs );

						del = this.FindItemOnLayer( Layer.Neck );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor gorget = new StuddedGorget();
						gorget.Hue = 1161;
						gorget.Movable = false;	
						AddItem( gorget );

						del = this.FindItemOnLayer( Layer.Gloves );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor gloves = new StuddedGloves();
						gloves.Hue = 1161;
						gloves.Movable = false;	
						AddItem( gloves );

						del = this.FindItemOnLayer( Layer.Helm );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor helm = new LeatherCap();
						helm.Hue = 1161;
						helm.Movable = false;	
						AddItem( helm );

						del = this.FindItemOnLayer( Layer.Arms );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor arms = new StuddedArms();
						arms.Hue = 1161;
						arms.Movable = false;	
						AddItem( arms );
					}
				}
			}

			else if ( this.Stage == 3 )
			{
				if ( defender is BaseCreature )
				{
					BaseCreature bc = (BaseCreature)defender;

					if ( bc.Controlled != true )
					{
						kpgainmin = 4 + ( bc.HitsMax ) / 20;
						kpgainmax = 4 + ( bc.HitsMax ) / 20;

						this.KP += Utility.RandomList( kpgainmin, kpgainmax );
					}
				}

				if ( this.KP >= 150000 )
				{
					if ( this.S3 == true )
					{
						this.S3 = false;
						int hits, va, mindamage, maxdamage;

						hits = ( this.HitsMax + 100 );

						va = ( this.VirtualArmor + 5 );

						mindamage = this.DamageMin + ( 1 );
						maxdamage = this.DamageMax + ( 1 );

						this.Warmode = false;
						this.Say( "*"+ this.Name +" achieves a new level of combat*");
						this.SetDamage( mindamage, maxdamage );
						this.SetHits( hits );
						this.VirtualArmor = va;
						this.Stage = 4;
						this.Title = "the Blood Knight";

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

						this.RawStr += 20;
						this.RawInt += 30;
						this.RawDex += 30;


						Item del = this.FindItemOnLayer( Layer.InnerTorso );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor chest = new PlateChest();
						chest.Hue = 1157;
						chest.Movable = false;
						AddItem( chest );

						del = this.FindItemOnLayer( Layer.Pants );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor legs = new PlateLegs();
						legs.Hue = 1157;
						legs.Movable = false;	
						AddItem( legs );

						del = this.FindItemOnLayer( Layer.Neck );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor gorget = new PlateGorget();
						gorget.Hue = 1157;
						gorget.Movable = false;	
						AddItem( gorget );

						del = this.FindItemOnLayer( Layer.Gloves );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor gloves = new PlateGloves();
						gloves.Hue = 1157;
						gloves.Movable = false;	
						AddItem( gloves );

						del = this.FindItemOnLayer( Layer.Helm );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor helm = new PlateHelm();
						helm.Hue = 1157;
						helm.Movable = false;	
						AddItem( helm );

						del = this.FindItemOnLayer( Layer.Arms );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor arms = new PlateArms();
						arms.Hue = 1157;
						arms.Movable = false;	
						AddItem( arms );
						
						del = this.FindItemOnLayer( Layer.Shoes );
						if ( del != null )
						{
							del.Delete();
						}
					}
				}
			}

			else if ( this.Stage == 4 )
			{
				if ( defender is BaseCreature )
				{
					BaseCreature bc = (BaseCreature)defender;

					if ( bc.Controlled != true )
					{
						kpgainmin = 3 + ( bc.HitsMax ) / 25;
						kpgainmax = 3 + ( bc.HitsMax ) / 30;

						this.KP += Utility.RandomList( kpgainmin, kpgainmax );
					}
				}

				if ( this.KP >= 250000 )
				{
					if ( this.S4 == true )
					{
						this.S4 = false;
						int hits, va, mindamage, maxdamage;

						hits = ( this.HitsMax + 100 );

						va = ( this.VirtualArmor + 3 );

						mindamage = this.DamageMin + ( 1 );
						maxdamage = this.DamageMax + ( 1 );

						this.Warmode = false;
						this.Say( "*"+ this.Name +" achieves a new level of combat*");
						this.SetDamage( mindamage, maxdamage );
						this.SetHits( hits );
						this.VirtualArmor = va;
						this.Stage = 5;
						this.Title = "the Knight of Destiny";

						this.SetDamageType( ResistanceType.Physical, 20 );
						this.SetDamageType( ResistanceType.Fire, 20 );
						this.SetDamageType( ResistanceType.Cold, 20 );
						this.SetDamageType( ResistanceType.Poison, 20 );
						this.SetDamageType( ResistanceType.Energy, 20 );

						this.SetResistance( ResistanceType.Physical, 70 );
						this.SetResistance( ResistanceType.Fire, 70 );
						this.SetResistance( ResistanceType.Cold, 70 );
						this.SetResistance( ResistanceType.Poison, 70 );
						this.SetResistance( ResistanceType.Energy, 70 );

						this.RawStr += 20;
						this.RawInt += 10;
						this.RawDex += 10;

						Item del = this.FindItemOnLayer( Layer.InnerTorso );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor chest = new BoneChest();
						chest.Hue = 1152;
						chest.Movable = false;
						AddItem( chest );

						del = this.FindItemOnLayer( Layer.Pants );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor legs = new BoneLegs();
						legs.Hue = 1152;
						legs.Movable = false;	
						AddItem( legs );

						del = this.FindItemOnLayer( Layer.Neck );
						if ( del != null )
						{
							del.Delete();
						}

						del = this.FindItemOnLayer( Layer.Gloves );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor gloves = new BoneGloves();
						gloves.Hue = 1152;
						gloves.Movable = false;	
						AddItem( gloves );

						del = this.FindItemOnLayer( Layer.Helm );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor helm = new BoneHelm();
						helm.Hue = 1152;
						helm.Movable = false;	
						AddItem( helm );

						del = this.FindItemOnLayer( Layer.Arms );
						if ( del != null )
						{
							del.Delete();
						}
						BaseArmor arms = new BoneArms();
						arms.Hue = 1152;
						arms.Movable = false;	
						AddItem( arms );

						del = this.FindItemOnLayer( Layer.Shoes );
						if ( del != null )
						{
							del.Delete();
						}
						Item sandals = new Sandals();
						sandals.Hue = 1152;
						sandals.Movable = false;	
						AddItem( sandals );
					}
				}
			}

			else if ( this.Stage == 5 )
			{
				if ( defender is BaseCreature )
				{
					BaseCreature bc = (BaseCreature)defender;

					if ( bc.Controlled != true )
					{
						kpgainmin = 2 + ( bc.HitsMax ) / 35;
						kpgainmax = 2 + ( bc.HitsMax ) / 35;

						this.KP += Utility.RandomList( kpgainmin, kpgainmax );
					}
				}

				if ( this.KP >= 350000 )
				{
					if ( this.S5 == true )
					{
						this.S5 = false;
						int hits, va, mindamage, maxdamage;

						hits = ( this.HitsMax + 100 );

						va = ( this.VirtualArmor + 10 );

						mindamage = this.DamageMin + ( 3 );
						maxdamage = this.DamageMax + ( 3 );

						this.Warmode = false;
						this.Say( "*"+ this.Name +" is Reborn*");
						this.Say( "Master, please lend me some armor");
						this.SetDamage( mindamage, maxdamage );
						this.SetHits( hits );
						this.VirtualArmor = va;
						this.Stage = 6;
						this.Title = "the Champion";

						this.SetResistance( ResistanceType.Physical, 5 );
						this.SetResistance( ResistanceType.Fire, 5 );
						this.SetResistance( ResistanceType.Cold, 5 );
						this.SetResistance( ResistanceType.Poison, 5 );
						this.SetResistance( ResistanceType.Energy, 5 );

						this.RawStr += 40;
						this.RawInt += 30;
						this.RawDex += 30;

						Item del = this.FindItemOnLayer( Layer.InnerTorso );
						if ( del != null )
						{
							del.Delete();
						}


						del = this.FindItemOnLayer( Layer.Pants );
						if ( del != null )
						{
							del.Delete();
						}


						del = this.FindItemOnLayer( Layer.Neck );
						if ( del != null )
						{
							del.Delete();
						}


						del = this.FindItemOnLayer( Layer.Gloves );
						if ( del != null )
						{
							del.Delete();
						}


						del = this.FindItemOnLayer( Layer.Helm );
						if ( del != null )
						{
							del.Delete();
						}


						del = this.FindItemOnLayer( Layer.Arms );
						if ( del != null )
						{
							del.Delete();
						}


						del = this.FindItemOnLayer( Layer.Shoes );
						if ( del != null )
						{
							del.Delete();
						}

					}
				}
			}

			else if ( this.Stage == 6 )
			{
				if ( defender is BaseCreature )
				{
					BaseCreature bc = (BaseCreature)defender;

					if ( bc.Controlled != true )
					{
						kpgainmin = 1 + ( bc.HitsMax ) / 40;
						kpgainmax = 1 + ( bc.HitsMax ) / 40;

						this.KP += Utility.RandomList( kpgainmin, kpgainmax );
					}
				}

				if ( this.KP >= 400000 )
				{
					if ( this.S6 == true )
					{
						this.S6 = false;
						int hits, va, mindamage, maxdamage;

						hits = ( this.HitsMax + 200 );

						va = ( this.VirtualArmor + 10 );

						mindamage = this.DamageMin + ( 3 );
						maxdamage = this.DamageMax + ( 3 );

						this.Warmode = false;
						this.Say( "*"+ this.Name +" is now a great champion and loyal friend*");
						if ( this.ControlMaster != null )
						{
							this.Title = ", Loyal Subject of " + this.ControlMaster.Name + "";
						}
						this.SetDamage( mindamage, maxdamage );
						this.SetHits( hits );
						this.VirtualArmor = va;
						this.Stage = 7;

						this.SetDamageType( ResistanceType.Physical, 40 );
						this.SetDamageType( ResistanceType.Fire, 40 );
						this.SetDamageType( ResistanceType.Cold, 40 );
						this.SetDamageType( ResistanceType.Poison, 40 );
						this.SetDamageType( ResistanceType.Energy, 40 );

						this.RawStr += 40;
						this.RawInt += 40;
						this.RawDex += 40;
					}
				}
			}

			else if ( this.Stage == 7 )
			{
				if ( defender is BaseCreature )
				{
					BaseCreature bc = (BaseCreature)defender;

					if ( bc.Controlled != true )
					{
						kpgainmin = 1 + ( bc.Hits ) / 50;
						kpgainmax = 1 + ( bc.Hits ) / 50;

						this.KP += Utility.RandomList( kpgainmin, kpgainmax );
					}
				}
			}

			base.OnGaveMeleeAttack( defender );
		}
		public Cyclonian() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.15, 0.2 )
		{
			Name = "Cyclonian";
			Body = 400;
			SpeechHue= 1359;
			Hue = 1175;
			Title = "the summoner";
			Kills = 10;
			ShortTermMurders = 10;

			SetStr( 596, 700 );
			SetDex( 218, 225 );
			SetInt( 21, 25 );

			SetHits( 4500 );

			SetDamage( 32, 43 );

			SetSkill( SkillName.Macing, 95.0, 97.5 );
			SetSkill( SkillName.MagicResist, 175.0, 190.5 );
			SetSkill( SkillName.Tactics, 95.0, 98.5 );
			SetSkill( SkillName.Anatomy, 96.5, 97.3);

			Fame = 24500;
			Karma = -24500;

			VirtualArmor = 200;

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

                        Item BoneHelm = new BoneHelm();
			BoneHelm.Movable=false;
			BoneHelm.Hue=1359;
			EquipItem( BoneHelm );

			Item BoneChest = new BoneChest();
			BoneChest.Movable=false;
			BoneChest.Hue=1359;
			EquipItem( BoneChest );

                        Item BoneGloves = new BoneGloves();
			BoneGloves.Movable=false;
			BoneGloves.Hue=1359;
			EquipItem( BoneGloves );

                        Item BoneLegs = new BoneLegs();
			BoneLegs.Movable=false;
			BoneLegs.Hue=1359;
			EquipItem( BoneLegs );

			Item BoneArms = new BoneArms();
			BoneArms.Movable=false;
			BoneArms.Hue=1359;
			EquipItem( BoneArms );

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

			PackGold( 4400, 4900 );
			PackArmor( 1, 5 );
			PackWeapon( 1, 5 );
			PackArmor( 1, 5 );
			PackWeapon( 1, 5 );
			PackArmor( 1, 5 );
			PackWeapon( 1, 5 );
			PackArmor( 1, 5 );
			PackWeapon( 1, 5 );
			PackArmor( 1, 5 );
			PackWeapon( 1, 5 );
			PackItem( new Obsidian() );
		}
        public HorrorDaemon()
            : base(AIType.AI_Stealth, FightMode.Closest, 10, 1, 0.1, 0.2)
        {
            Name = "a horror servant";
            Body = 400;
            Hue = 777;
            Hidden = true;

            SetStr( 150 );
            SetDex( 100 );
            SetInt( 1, 2 );

            SetHits( 80 );
            SetMana( 0 );

            SetDamage( 15, 20 );

            SetDamageType( ResistanceType.Fire, 100 );

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

            SetSkill( SkillName.MagicResist, 100.0 );
            SetSkill( SkillName.Wrestling, 100.0 );
            SetSkill( SkillName.Hiding, 100.0 );

            Fame = 3500;
            Karma = -3500;

            VirtualArmor = 6;

            Lantern lantern = new Lantern();
            lantern.Name = "Fire bomb";
            lantern.Hue = 1281;
            lantern.Movable = false;
            AddItem( lantern );

            BoneGloves gloves = new BoneGloves();
            gloves.Movable = false;
            gloves.Hue = 32500;
            AddItem( gloves );

            BoneLegs legs = new BoneLegs();
            legs.Movable = false;
            legs.Hue = 32500;
            AddItem( legs );

            BoneChest chest = new BoneChest();
            chest.Movable = false;
            chest.Hue = 32500;
            AddItem( chest );

            BoneHelm helm = new BoneHelm();
            helm.Movable = false;
            helm.Hue = 32500;
            AddItem( helm );

            PackItem( new Bloodmoss( Utility.RandomMinMax( 7, 10 ) ) );
            PackItem( new MandrakeRoot( Utility.RandomMinMax( 7, 10 ) ) );
            PackItem( new Head() );
            PackItem( new ExplosionScroll() );
        }
Exemple #18
0
		public DarkElfFighter() : base( AIType.AI_SphereMelee, FightMode.Closest, 10, 1, 0.2, 0.4 )
		{
			Title = "the Dark Elf";
			Hue = 0x0597;

			Body = 0x190;
			Name = NameList.RandomName( "golem controller" );
			AddItem( new LongHair( 0 ) );
			AddItem( new Goatee( 0 ) );
			AddItem( new Sandals() );
			Item temp;
			temp = new BoneChest();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );
			temp = new BoneGloves();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );
			temp = new BoneHelm();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );
			temp = new ThighBoots();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );
			temp = new StuddedLegs();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );
			temp = new WoodenShield();
			AddItem( temp );
			temp = new FancyShirt();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );

			SetStr( 50, 70 );
			SetDex( 61, 80 );
			SetInt( 50, 60 );
			SetHits( 70, 90 );
			SetStam( 81, 95 );

			SetDamage( 10, 20 );
			SetSkill( SkillName.Archery, 60.0, 80.0 );
			SetSkill( SkillName.Fencing, 60.0, 80.0 );
			SetSkill( SkillName.MagicResist, 15.0, 38.0 );
			SetSkill( SkillName.Swords, 60.0, 80.0 );
			SetSkill( SkillName.Macing, 60.0, 80.0 );
			SetSkill( SkillName.Tactics, 60.0, 90.0 );
			SetSkill( SkillName.Wrestling, 25.0, 40.0 );

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

			VirtualArmor = 15;
			switch( Utility.Random( 2 ) )
			{
				case 0:
					AddItem( new Broadsword() );
					break;
				case 1:
					AddItem( new WarMace() );
					break;
			}
		}
		public override void InitOutfit()
		{
			WipeLayers();
			BoneArms arms = new BoneArms();
			AddItem( arms );

			BoneGloves gloves = new BoneGloves();
			AddItem( gloves );

			BoneChest tunic = new BoneChest();
			AddItem( tunic );
			BoneLegs legs = new BoneLegs();
			AddItem( legs );

			BoneHelm helm = new BoneHelm();
			AddItem( helm );

			AddItem( new Shoes() );

			Item weapon = null;
			if (Utility.RandomBool())
			{
				SetSkill(SkillName.Parry, 60, 95);
				AddItem(new Buckler());
				weapon = new Katana();
				SetDamage( 8, 10 );			// numbers based on LordGuardian
			}
			else
			{
				weapon = new ExecutionersAxe();
				SetDamage( 20, 30 );		// numbers based on Executioner
			}

			weapon.Movable = true;

			AddItem( weapon );
		}
Exemple #20
0
		public override void OnGaveMeleeAttack(Mobile defender)
		{
			int kpgainmin, kpgainmax;

			switch (Stage)
			{
				case 1:
					{
						if (defender is BaseCreature)
						{
							var bc = (BaseCreature)defender;

							if (bc.Controlled != true)
							{
								kpgainmin = 5 + (bc.HitsMax) / 10;
								kpgainmax = 5 + (bc.HitsMax) / 5;

								KP += Utility.RandomList(kpgainmin, kpgainmax);
							}
						}

						if (KP >= 85000)
						{
							if (S1)
							{
								S1 = false;

								int hits = HitsMax + 500;
								int va = VirtualArmor + 10;
								int mindamage = DamageMin + 1;
								int maxdamage = DamageMax + 1;

								Warmode = false;

								Say("*" + Name + " achieves a new level of combat*");
								SetDamage(mindamage, maxdamage);
								SetHits(hits);

								VirtualArmor = va;
								Stage = 2;
								Title = "the Shadow Knight";

								RawStr += 200;
								RawInt += 30;
								RawDex += 20;

								Item del = FindItemOnLayer(Layer.OuterTorso); // The Robe

								if (del != null)
								{
									del.Delete();
								}

								del = FindItemOnLayer(Layer.InnerTorso);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor chest = new LeatherChest();
								chest.Hue = 1175;
								chest.Movable = false;
								AddItem(chest);

								del = FindItemOnLayer(Layer.Pants);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor legs = new LeatherLegs();
								legs.Hue = 1175;
								legs.Movable = false;
								AddItem(legs);

								del = FindItemOnLayer(Layer.Neck);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor gorget = new LeatherGorget();
								gorget.Hue = 1175;
								gorget.Movable = false;
								AddItem(gorget);

								del = FindItemOnLayer(Layer.Gloves);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor gloves = new LeatherGloves();
								gloves.Hue = 1175;
								gloves.Movable = false;
								AddItem(gloves);

								del = FindItemOnLayer(Layer.Helm);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor helm = new LeatherCap();
								helm.Hue = 1175;
								helm.Movable = false;
								AddItem(helm);

								del = FindItemOnLayer(Layer.Arms);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor arms = new LeatherArms();
								arms.Hue = 1175;
								arms.Movable = false;
								AddItem(arms);

								del = FindItemOnLayer(Layer.Shoes);

								if (del != null)
								{
									del.Delete();
								}

								Item sandals = new Sandals();
								sandals.Hue = 1153;
								sandals.Movable = false;
								AddItem(sandals);
							}
						}
					}
					break;
				case 2:
					{
						if (defender is BaseCreature)
						{
							var bc = (BaseCreature)defender;

							if (bc.Controlled != true)
							{
								kpgainmin = 5 + bc.HitsMax / 20;
								kpgainmax = 5 + bc.HitsMax / 10;

								KP += Utility.RandomList(kpgainmin, kpgainmax);
							}
						}

						if (KP >= 100000)
						{
							if (S2)
							{
								S2 = false;

								int hits = HitsMax + 100;
								int va = VirtualArmor + 10;
								int mindamage = DamageMin + 1;
								int maxdamage = DamageMax + 1;

								Warmode = false;

								Say("*" + Name + " achieves a new level of combat*");
								SetDamage(mindamage, maxdamage);
								SetHits(hits);

								VirtualArmor = va;
								Stage = 3;
								Title = "the Golden Knight";

								RawStr += 100;
								RawInt += 20;
								RawDex += 10;

								Item del = FindItemOnLayer(Layer.InnerTorso);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor chest = new StuddedChest();
								chest.Hue = 1161;
								chest.Movable = false;
								AddItem(chest);

								del = FindItemOnLayer(Layer.Pants);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor legs = new StuddedLegs();
								legs.Hue = 1161;
								legs.Movable = false;
								AddItem(legs);

								del = FindItemOnLayer(Layer.Neck);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor gorget = new StuddedGorget();
								gorget.Hue = 1161;
								gorget.Movable = false;
								AddItem(gorget);

								del = FindItemOnLayer(Layer.Gloves);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor gloves = new StuddedGloves();
								gloves.Hue = 1161;
								gloves.Movable = false;
								AddItem(gloves);

								del = FindItemOnLayer(Layer.Helm);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor helm = new LeatherCap();
								helm.Hue = 1161;
								helm.Movable = false;
								AddItem(helm);

								del = FindItemOnLayer(Layer.Arms);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor arms = new StuddedArms();
								arms.Hue = 1161;
								arms.Movable = false;
								AddItem(arms);
							}
						}
					}
					break;
				case 3:
					{
						if (defender is BaseCreature)
						{
							var bc = (BaseCreature)defender;

							if (bc.Controlled != true)
							{
								kpgainmin = 5 + bc.HitsMax / 30;
								kpgainmax = 5 + bc.HitsMax / 20;

								KP += Utility.RandomList(kpgainmin, kpgainmax);
							}
						}

						if (KP >= 500000)
						{
							if (S3)
							{
								S3 = false;

								int hits = HitsMax + 100;
								int va = VirtualArmor + 10;
								int mindamage = DamageMin + 1;
								int maxdamage = DamageMax + 1;

								Warmode = false;

								Say("*" + Name + " achieves a new level of combat*");
								SetDamage(mindamage, maxdamage);
								SetHits(hits);

								VirtualArmor = va;
								Stage = 4;
								Title = "the Blood Knight";

								RawStr += 100;
								RawInt += 120;
								RawDex += 10;

								Item del = FindItemOnLayer(Layer.InnerTorso);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor chest = new PlateChest();
								chest.Hue = 1157;
								chest.Movable = false;
								AddItem(chest);

								del = FindItemOnLayer(Layer.Pants);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor legs = new PlateLegs();
								legs.Hue = 1157;
								legs.Movable = false;
								AddItem(legs);

								del = FindItemOnLayer(Layer.Neck);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor gorget = new PlateGorget();
								gorget.Hue = 1157;
								gorget.Movable = false;
								AddItem(gorget);

								del = FindItemOnLayer(Layer.Gloves);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor gloves = new PlateGloves();
								gloves.Hue = 1157;
								gloves.Movable = false;
								AddItem(gloves);

								del = FindItemOnLayer(Layer.Helm);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor helm = new PlateHelm();
								helm.Hue = 1157;
								helm.Movable = false;
								AddItem(helm);

								del = FindItemOnLayer(Layer.Arms);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor arms = new PlateArms();
								arms.Hue = 1157;
								arms.Movable = false;
								AddItem(arms);

								del = FindItemOnLayer(Layer.Shoes);

								if (del != null)
								{
									del.Delete();
								}
							}
						}
					}
					break;
				case 4:
					{
						if (defender is BaseCreature)
						{
							var bc = (BaseCreature)defender;

							if (bc.Controlled != true)
							{
								kpgainmin = 5 + bc.HitsMax / 50;
								kpgainmax = 5 + bc.HitsMax / 40;

								KP += Utility.RandomList(kpgainmin, kpgainmax);
							}
						}

						if (KP >= 1000000)
						{
							if (S4)
							{
								S4 = false;

								int hits = HitsMax + 100;
								int va = VirtualArmor + 10;
								int mindamage = DamageMin + 5;
								int maxdamage = DamageMax + 5;

								Warmode = false;

								Say("*" + Name + " achieves a new level of combat*");
								SetDamage(mindamage, maxdamage);
								SetHits(hits);

								VirtualArmor = va;
								Stage = 5;
								Title = "the Knight of Destiny";

								RawStr += 100;
								RawInt += 120;
								RawDex += 20;

								Item del = FindItemOnLayer(Layer.InnerTorso);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor chest = new BoneChest();
								chest.Hue = 1152;
								chest.Movable = false;
								AddItem(chest);

								del = FindItemOnLayer(Layer.Pants);
								if (del != null)
								{
									del.Delete();
								}

								BaseArmor legs = new BoneLegs();
								legs.Hue = 1152;
								legs.Movable = false;
								AddItem(legs);

								del = FindItemOnLayer(Layer.Neck);

								if (del != null)
								{
									del.Delete();
								}

								del = FindItemOnLayer(Layer.Gloves);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor gloves = new BoneGloves();
								gloves.Hue = 1152;
								gloves.Movable = false;
								AddItem(gloves);

								del = FindItemOnLayer(Layer.Helm);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor helm = new BoneHelm();
								helm.Hue = 1152;
								helm.Movable = false;
								AddItem(helm);

								del = FindItemOnLayer(Layer.Arms);

								if (del != null)
								{
									del.Delete();
								}

								BaseArmor arms = new BoneArms();
								arms.Hue = 1152;
								arms.Movable = false;
								AddItem(arms);

								del = FindItemOnLayer(Layer.Shoes);

								if (del != null)
								{
									del.Delete();
								}

								Item sandals = new Sandals();
								sandals.Hue = 1152;
								sandals.Movable = false;
								AddItem(sandals);
							}
						}
					}
					break;
				case 5:
					{
						if (defender is BaseCreature)
						{
							var bc = (BaseCreature)defender;

							if (bc.Controlled != true)
							{
								kpgainmin = 5 + bc.HitsMax / 160;
								kpgainmax = 5 + bc.HitsMax / 100;

								KP += Utility.RandomList(kpgainmin, kpgainmax);
							}
						}

						if (KP >= 5000000)
						{
							if (S5)
							{
								S5 = false;

								int hits = HitsMax + 100;
								int va = VirtualArmor + 100;
								int mindamage = DamageMin + 5;
								int maxdamage = DamageMax + 5;

								Warmode = false;
								
								Say("*" + Name + " is Reborn*");
								Say("Master, please lend me some armor");
								SetDamage(mindamage, maxdamage);
								SetHits(hits);
								
								VirtualArmor = va;
								Stage = 6;
								Title = "the Champion";

								RawStr += 100;
								RawInt += 120;
								RawDex += 20;

								Item del = FindItemOnLayer(Layer.InnerTorso);

								if (del != null)
								{
									del.Delete();
								}

								del = FindItemOnLayer(Layer.Pants);

								if (del != null)
								{
									del.Delete();
								}

								del = FindItemOnLayer(Layer.Neck);

								if (del != null)
								{
									del.Delete();
								}

								del = FindItemOnLayer(Layer.Gloves);

								if (del != null)
								{
									del.Delete();
								}

								del = FindItemOnLayer(Layer.Helm);

								if (del != null)
								{
									del.Delete();
								}

								del = FindItemOnLayer(Layer.Arms);

								if (del != null)
								{
									del.Delete();
								}

								del = FindItemOnLayer(Layer.Shoes);

								if (del != null)
								{
									del.Delete();
								}
							}
						}
					}
					break;
				case 6:
					{
						if (defender is BaseCreature)
						{
							var bc = (BaseCreature)defender;

							if (bc.Controlled != true)
							{
								kpgainmin = 5 + bc.HitsMax / 540;
								kpgainmax = 5 + bc.HitsMax / 480;

								KP += Utility.RandomList(kpgainmin, kpgainmax);
							}
						}

						if (KP >= 10000000)
						{
							if (S6)
							{
								S6 = false;

								int hits = HitsMax + 350;
								int va = VirtualArmor + 100;
								int mindamage = DamageMin + 15;
								int maxdamage = DamageMax + 15;

								Warmode = false;
								Say("*" + Name + " is now a Great Champion and loyal friend*");

								if (ControlMaster != null)
								{
									Title = ", Guardian of " + ControlMaster.Name + "";
								}

								SetDamage(mindamage, maxdamage);
								SetHits(hits);
								
								VirtualArmor = va;
								Stage = 7;

								RawStr += 125;
								RawInt += 125;
								RawDex += 35;
							}
						}
					}
					break;
				case 7:
					{
						if (defender is BaseCreature)
						{
							var bc = (BaseCreature)defender;

							if (bc.Controlled != true)
							{
								kpgainmin = 5 + bc.Hits / 740;
								kpgainmax = 5 + bc.Hits / 660;

								KP += Utility.RandomList(kpgainmin, kpgainmax);
							}
						}
					}
					break;
			}

			base.OnGaveMeleeAttack(defender);
		}
		public override void InitOutfit()
		{
			WipeLayers();
			BoneArms arms = new BoneArms();
			arms.Hue = 0x3A8;
			arms.LootType = LootType.Blessed;
			AddItem( arms );

			BoneGloves gloves = new BoneGloves();
			gloves.Hue = 0x3A8;
			gloves.LootType = LootType.Blessed;
			AddItem( gloves );

			BoneChest tunic = new BoneChest();
			tunic.Hue = 0x3A8;
			tunic.LootType = LootType.Blessed;
			AddItem( tunic );
			BoneLegs legs = new BoneLegs();
			legs.Hue = 0x3A8;
			legs.LootType = LootType.Blessed;
			AddItem( legs );

			BoneHelm helm = new BoneHelm();
			helm.Hue = 0x3A8;
			helm.LootType = LootType.Blessed;
			AddItem( helm );

			AddItem( new Shoes() );
			AddItem( new Buckler());

			VikingSword weapon = new VikingSword();

			weapon.Movable = true;

			AddItem( weapon );
		}
		public override void InitOutfit()
		{
			WipeLayers();
			BoneArms arms = new BoneArms();
			AddItem( arms );

			BoneGloves gloves = new BoneGloves();
			AddItem( gloves );

			BoneChest tunic = new BoneChest();
			AddItem( tunic );
			BoneLegs legs = new BoneLegs();
			AddItem( legs );

			BoneHelm helm = new BoneHelm();
			AddItem( helm );

			AddItem( new Shoes() );
			
		}
Exemple #23
0
		public DarkElfWarrior() : base( AIType.AI_Archer, FightMode.Closest, 10, 3, 0.2, 0.4 )
		{
			Title = "the Dark Elf";
			Hue = 0x0597;
			Body = 0x190;
			Name = NameList.RandomName( "golem controller" );
			AddItem( new Goatee( 0 ) );
			AddItem( new LongHair( 0 ) );
			Item temp;
			temp = new BoneChest();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );
			temp = new BoneGloves();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );
			temp = new BoneHelm();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );
			temp = new ThighBoots();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );
			temp = new ChainLegs();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );
			temp = new Cloak();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );
			temp = new FancyShirt();
			temp.Hue = 0x0455;
			temp.Movable = false;
			AddItem( temp );

			SetStr( 70, 90 );
			SetDex( 81, 95 );
			SetInt( 70, 100 );
			SetHits( 80, 110 );
			SetStam( 81, 95 );
			SetDamage( 15, 30 );

			SetSkill( SkillName.Archery, 75.0, 100.0 );
			SetSkill( SkillName.Tactics, 75.0, 100.0 );
			SetSkill( SkillName.MagicResist, 15.0, 38.0 );
			SetSkill( SkillName.Macing, 75.0, 100.0 );
			SetSkill( SkillName.Parry, 40.0, 50.0 );
			SetSkill( SkillName.Swords, 75.0, 100.0 );
			SetSkill( SkillName.Wrestling, 25.0, 40.0 );
			VirtualArmor = 19;
			Fame = Utility.RandomMinMax( 3000, 4000 );
			Karma = Utility.RandomMinMax( -5000, -3000 );
			switch( Utility.Random( 2 ) )
			{
				case 0:
					AddItem( new TwoHandedAxe() );
					break;
				case 1:
					AddItem( new VikingSword() );
					AddItem( new MetalShield() );
					break;
			}
		}