Inheritance: BaseHat
		public Santa ()
		{
			Name = "SantaClaus";
            Title = "Quest Giver";

            Body = 400;
            Hue = 1002;
			CantWalk = true;
			Blessed = true;
            
			
			
          
            Item longpants;
			longpants = new LongPants();
			longpants.Hue = 1109;
			AddItem( longpants );
                         

			Item tunic;
			tunic = new Tunic();
			tunic.Hue = 33;
			AddItem( tunic );


            Item leatherninjabelt;
            leatherninjabelt = new LeatherNinjaBelt();
            leatherninjabelt.Hue = 1109;
            AddItem(leatherninjabelt);
            
                        
            FacialHairItemID = 0x204C;
            FacialHairHue = 1153;

            Item JesterHat;
            JesterHat = new JesterHat();
            JesterHat.Hue = 33;
            AddItem(JesterHat);
            
          

              HairItemID = 0x203C;
              HairHue = 1153;

            Item boots;
            boots = new Boots();
            boots.Hue = 1109;
            AddItem( boots );


           
		}
		public HolidayBaker ()
		{
			Name = "Tilly";
            Title = "Quest Giver";

            Body = 401;
            Hue = 1002;
			CantWalk = true;
			Blessed = true;
			
			Item skirt;
			skirt = new Skirt();
			skirt.Hue = 1368;
			AddItem( skirt );
          

			Item shirt;
			shirt = new Shirt();
            skirt.Hue = 1368;
			AddItem( shirt );
          

			Item shoes;
			shoes = new Shoes();
			shoes.Hue = 1368;
			AddItem( shoes );
            

			Item JesterHat;
            JesterHat = new JesterHat();
            JesterHat.Hue = 1368;
            AddItem(JesterHat);
            

            Item FullApron;
            FullApron = new FullApron();
            FullApron .Hue = 1368;
            AddItem(FullApron);

            Item LongHair = new LongHair(8252);
            LongHair.Movable = false;
            LongHair.Hue = 1153;
            AddItem(LongHair);

           
		}
        public EvilElf() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 )
        {
            Name = "Evil Elf";
            Body = 400;
            Hue = 1002;
			

            SetStr( 796, 825 );
            SetDex( 86, 105 );
            SetInt( 436, 475 );
            SetHits( 478, 495 );
            SetDamage( 20, 30 );


            Item longpants;
            longpants = new LongPants();
            longpants.Hue = 1368;
            AddItem( longpants);
            longpants.LootType = LootType.Newbied;

            Item tunic;
			tunic = new Tunic();
			tunic.Hue = 1368;
			AddItem( tunic );
            tunic.LootType = LootType.Newbied;

            
            Item JesterHat;
            JesterHat = new JesterHat();
            JesterHat.Hue = 1368;
            AddItem(JesterHat);
            JesterHat.LootType = LootType.Newbied;

            Item boots;
            boots = new Boots();
            boots.Hue = 1109;
            AddItem( boots );
            boots.LootType = LootType.Newbied;

            
         FacialHairItemID = 0x204B;
            FacialHairHue = 996;


              HairItemID = 0x203C;
              HairHue = 996;

            Item leatherninjabelt;
            leatherninjabelt = new LeatherNinjaBelt();
            leatherninjabelt.Hue = 1109;
            AddItem( leatherninjabelt );
            leatherninjabelt.LootType = LootType.Newbied;

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

            SetDamageType( ResistanceType.Physical, 100 );

            SetResistance( ResistanceType.Physical, 55, 60 );
            SetResistance( ResistanceType.Fire, 61, 71 );
            SetResistance( ResistanceType.Cold, 30, 40 );
            SetResistance( ResistanceType.Poison, 25, 35 );
            SetResistance( ResistanceType.Energy, 35, 45 );

            SetSkill( SkillName.MagicResist, 99.2, 100 );
            SetSkill( SkillName.Tactics, 97.6, 100 );
            SetSkill( SkillName.Wrestling, 90.1, 92.5 );
            SetSkill( SkillName.Anatomy, 75.1, 78 );

                 

            
			PackGold( 250, 350 );
            PackItem(new RedPaintBarrel());
		}
		public DummySuper() : base(AIType.AI_Mage, FightMode.Closest, 15, 1, 0.2, 0.6)
		{
			// A Dummy Super Mage
			int iHue = 20 + Team * 40;
			int jHue = 25 + Team * 40;

			// Skills and Stats
			this.InitStats( 125, 125, 125 );
			this.Skills[SkillName.Magery].Base = 120;
			this.Skills[SkillName.EvalInt].Base = 120;
			this.Skills[SkillName.Anatomy].Base = 120;
			this.Skills[SkillName.Wrestling].Base = 120;
			this.Skills[SkillName.Meditation].Base = 120;
			this.Skills[SkillName.Poisoning].Base = 100;
			this.Skills[SkillName.Inscribe].Base = 100;

			// Name
			this.Name = "Super Mage";

			// Equip
			Spellbook book = new Spellbook();
			book.Movable = false;
			book.LootType = LootType.Newbied;
			book.Content =0xFFFFFFFFFFFFFFFF;
			AddItem( book );

			LeatherArms lea = new LeatherArms();
			lea.Movable = false;
			lea.LootType = LootType.Newbied;
			lea.Crafter = this;
			lea.Quality = ArmorQuality.Regular;
			AddItem( lea );

			LeatherChest lec = new LeatherChest();
			lec.Movable = false;
			lec.LootType = LootType.Newbied;
			lec.Crafter = this;
			lec.Quality = ArmorQuality.Regular;
			AddItem( lec );

			LeatherGorget leg = new LeatherGorget();
			leg.Movable = false;
			leg.LootType = LootType.Newbied;
			leg.Crafter = this;
			leg.Quality = ArmorQuality.Regular;
			AddItem( leg );

			LeatherLegs lel = new LeatherLegs();
			lel.Movable = false;
			lel.LootType = LootType.Newbied;
			lel.Crafter = this;
			lel.Quality = ArmorQuality.Regular;
			AddItem( lel );

			Sandals snd = new Sandals();
			snd.Hue = iHue;
			snd.LootType = LootType.Newbied;
			AddItem( snd );

			JesterHat jhat = new JesterHat();
			jhat.Hue = iHue;
			AddItem( jhat );

			Doublet dblt = new Doublet();
			dblt.Hue = iHue;
			AddItem( dblt );

			// Spells
			AddSpellAttack( typeof(Spells.First.MagicArrowSpell) );
			AddSpellAttack( typeof(Spells.First.WeakenSpell) );
			AddSpellAttack( typeof(Spells.Third.FireballSpell) );
			AddSpellDefense( typeof(Spells.Third.WallOfStoneSpell) );
			AddSpellDefense( typeof(Spells.First.HealSpell) );
		}
        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);
        }
        /// <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 SantaHelper() : base( AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4 )
		{
			Name = "Santa's Evil Little Helper";
			Body = 400;
			Hue = 33770;
			BaseSoundID = 343;

			SetStr( 301, 420 );
			SetDex( 81, 90 );
			SetInt( 301, 320 );

			SetHits( 478, 595 );

			SetDamage( 40, 120 );

			SetDamageType( ResistanceType.Cold, 20 );
			SetDamageType( ResistanceType.Energy, 50 );

			SetResistance( ResistanceType.Physical, 50 );
			SetResistance( ResistanceType.Fire, 50 );
			SetResistance( ResistanceType.Cold, 15 );
			SetResistance( ResistanceType.Poison, 60 );
			SetResistance( ResistanceType.Energy, 80 );

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

			Fame = -1500;
			Karma = 50000;

			VirtualArmor = 40;
       
				  PackItem( new BowOfChristmas() );

                  if (1 > Utility.RandomDouble())

                      switch (Utility.Random(24))
                      {
                          case 0: PackItem(new MaceOfWinter());
                              break;
                          case 1: PackItem(new ChristmasKatana());
                              break;
                          case 2: PackItem(new SantasStaff());
                              break;
                          case 3: PackItem(new ArmsOfChristmas());
                              break;
                          case 4: PackItem(new ChestOfChristmas());
                              break;
                          case 5: PackItem(new GlovesOfChristmas());
                              break;
                          case 6: PackItem(new GorgetOfChristmas());
                              break;
                          case 7: PackItem(new HelmOfChristmas());
                              break;
                          case 8: PackItem(new LegsOfChristmas());
                              break;
                          case 9: PackItem(new HelmOfWinter());
                              break;
                          case 10: PackItem(new LegsOfWinter());
                              break;
                          case 11: PackItem(new FemaleChestOfWinter());
                              break;
                          case 12: PackItem(new GlovesOfWinter());
                              break;
                          case 13: PackItem(new ArmsOfWinter());
                              break;
                          case 14: PackItem(new ChestOfWinter());
                              break;
                          case 16: PackItem(new XmasArms());
                              break;
                          case 17: PackItem(new XmasChest());
                              break;
                          case 18: PackItem(new XmasGloves());
                              break;
                          case 19: PackItem(new XmasHelm());
                              break;
                          case 20: PackItem(new XmasLegs());
                              break;
                          case 21: PackItem(new XmasHalberd());
                              break;
                          case 22: PackItem(new SwordOfChristmas());
                              break;
                          case 23: PackItem(new BowOfChristmas());
                              break;
                      }		
	

            JesterHat hat = new JesterHat();
			hat.Name = "Elf Hat";
			hat.Hue = 64;
			hat.Movable = false;
			AddItem( hat );

			ElvenPants legs = new ElvenPants();
			legs.Hue = 64;
			legs.Movable = false;
			AddItem( legs );

			FancyShirt chest = new FancyShirt();
			chest.Hue = 64;
			chest.Movable = false;
			AddItem( chest );

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

			ElvenBoots boots = new ElvenBoots();
			boots.Hue = 64;
			boots.Movable = false;
			AddItem( boots );

			
			BodySash bodysash = new BodySash();
			bodysash.Hue = 64;
			bodysash.Movable = false;
			AddItem ( bodysash );
			
			HalfApron halfapron = new HalfApron();
			halfapron.Hue = 64;
			halfapron.Movable = false;
			AddItem ( halfapron );

			Cloak cloak = new Cloak();
			cloak.Hue = 64;
			cloak.Movable = false;
			AddItem ( cloak );
			
			PackGold( 60000, 100000);

                }
Beispiel #8
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);
            }
        }
Beispiel #9
0
		private void CreateClassic()
		{
			m_MoveSound = 1055;
			m_CaptureSound = 1068;
			m_DeathSound = 0;
			m_CheckSound = 1086;
			m_CheckMateSound = 1088;

			m_Piece.Female = false;
			m_Piece.BodyValue = 0x190;

			if ( m_BChessboard.OverrideMinorHue )
				m_Piece.Hue = Hue;
			else
				m_Piece.Hue = m_BChessboard.SkinHue;
			m_Piece.AddItem( new ShortHair( m_BChessboard.OverrideMinorHue ? Hue : m_BChessboard.HairHue ) );

			Item item = null;

			item = new Boots( MinorHue );
			m_Piece.AddItem( item );

			item = new LongPants( Hue );
			m_Piece.AddItem( item );

			item = new FancyShirt( Hue );
			m_Piece.AddItem( item );

			item = new Doublet( MinorHue );
			m_Piece.AddItem( item );

			item = new Cloak( MinorHue );
			m_Piece.AddItem( item );

            item = new JesterHat(MinorHue);
            m_Piece.AddItem(item);

			item = new Scepter();
			item.Hue = MinorHue;
			m_Piece.AddItem( item );
		}
        public FamousPiratesSuper()
            : base(AIType.AI_Mage, FightMode.Closest, 15, 1, 0.2, 0.6)
        {
            // A FamousPirates Super Mage
            int Hue = 2075;

            // Skills and Stats
            this.InitStats(250, 250, 250);
            this.Skills[SkillName.Magery].Base = 150;
            this.Skills[SkillName.EvalInt].Base = 150;
            this.Skills[SkillName.Anatomy].Base = 150;
            this.Skills[SkillName.Wrestling].Base = 150;
            this.Skills[SkillName.Meditation].Base = 150;
            this.Skills[SkillName.Poisoning].Base = 100;
            this.Skills[SkillName.Inscribe].Base = 100;

            // Name
            this.Name = "Captain Jack Sparrow";

            // Equip
            Spellbook book = FullSpellbook();
            AddItem(book);

            LeatherArms lea = new LeatherArms();
            lea.Movable = false;
            lea.LootType = LootType.Regular;
            lea.Crafter = this;
            lea.Quality = ArmorQuality.Exceptional;
            AddItem(lea);

            LeatherChest lec = new LeatherChest();
            lec.Movable = false;
            lec.LootType = LootType.Regular;
            lec.Crafter = this;
            lec.Quality = ArmorQuality.Exceptional;
            AddItem(lec);

            LeatherGorget leg = new LeatherGorget();
            leg.Movable = false;
            leg.LootType = LootType.Regular;
            leg.Crafter = this;
            leg.Quality = ArmorQuality.Exceptional;
            AddItem(leg);

            LeatherLegs lel = new LeatherLegs();
            lel.Movable = false;
            lel.LootType = LootType.Regular;
            lel.Crafter = this;
            lel.Quality = ArmorQuality.Exceptional;
            AddItem(lel);

            Boots snd = new Boots();
			snd.Movable = false;
            snd.Hue = Hue;
            snd.LootType = LootType.Regular;
            AddItem(snd);

            JesterHat jhat = new JesterHat();
			jhat.Movable = false;
            jhat.Hue = Hue;
            AddItem(jhat);

            Doublet dblt = new Doublet();
			dblt.Movable = false;
            dblt.Hue = Hue;
            AddItem(dblt);

            // Spells
            AddSpellAttack(typeof(Spells.First.MagicArrowSpell));
            AddSpellAttack(typeof(Spells.First.WeakenSpell));
            AddSpellAttack(typeof(Spells.Sixth.ExplosionSpell));
            AddSpellDefense(typeof(Spells.Third.WallOfStoneSpell));
            AddSpellDefense(typeof(Spells.Fourth.GreaterHealSpell));
        }
		public override void OnDamagedBySpell( Mobile from )
		{
			if (Combatant == null)
				return;

			if (Body == 58)
				Say( "I will steal your Body and now your Soul..." );

			if (Body != from.Body)
            {
                BoltEffect( 0 );

                Body = from.Body;
                Hue = from.Hue;
                Name = from.Name;

                Fame = from.Fame;
                Karma = (0 -from.Karma);
                Title = from.Title;

                Str = from.Str;
                Int = from.Int;
                Dex = from.Dex;

                Hits = from.Hits;

                Dex = from.Dex;
                Mana = from.Mana;
                Stam = from.Stam;

                Female = from.Female;

                VirtualArmor = (from.VirtualArmor);

                Item hair = new Item( Utility.RandomList( 8265 ) );
                hair.Hue = 1153;
                hair.Layer = Layer.Hair;
                hair.Movable = false;
                AddItem( hair );

                JesterHat hat = new JesterHat();
                hat.Hue = 1175;
                hat.Movable = false;
                AddItem( hat );

                DeathRobe robe = new DeathRobe();
                robe.Hue = 1175;
                robe.Movable = false;
                AddItem( robe );

                Sandals sandals = new Sandals();
                sandals.Hue = 1;
                sandals.Movable = false;
                AddItem( sandals );

                Spellbook book = new Spellbook( UInt64.MaxValue );
                book.Hue = 1175;
                book.Movable = false;
                AddItem( book );

                BoltEffect( 0 );
			}
			switch ( Utility.Random( 6 ) )
			{
				case 0: Say( "You can not win with magic..." ); break;
				case 1: Say( "Your image is weak as is your mind..." ); break;
				case 2: Say( "It feels good to wear your skin..." ); break;
				case 3: Say( "I'll take over your life as soon as I end it..." ); break;
				case 4: Say( "Don't you like having a twin..." ); break;
				case 5: Say( "You lack the skills to defeat me..." ); break;
			}
			from.BoltEffect( 0 );
			from.Damage( Utility.Random( 20, 40 ) );
			Hits += ( Utility.Random( 20, 40 ) );
		}