public override void OnResponse(NetState sender, RelayInfo info)
            {
                if (m_Deed.Deleted)
                {
                    return;
                }

                Item newHair = null;

                switch (info.ButtonID)
                {
                case 0: return;

                case 2: newHair = new ShortHair(); break;

                case 3: newHair = new LongHair(); break;

                case 4: newHair = new PonyTail(); break;

                case 5: newHair = new Mohawk(); break;

                case 6: newHair = new PageboyHair(); break;

                case 7: newHair = new ReceedingHair(); break;

                case 8: newHair = new TwoPigTails(); break;

                case 9: newHair = new KrisnaHair(); break;
                }

                if (m_From is PlayerMobile)
                {
                    PlayerMobile pm = (PlayerMobile)m_From;

                    pm.SetHairMods(-1, -1);                     // clear any hairmods (disguise kit, incognito)
                }

                Item oldHair = m_From.FindItemOnLayer(Layer.Hair);

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

                if (newHair != null)
                {
                    if (oldHair != null)
                    {
                        newHair.Hue = oldHair.Hue;
                    }

                    m_From.AddItem(newHair);
                }

                m_Deed.Delete();
            }
        public static void AddHair( Mobile m, int itemID, int hue )
        {
            Item item;

            switch ( itemID & 0x3FFF )
            {
                case 0x2044: item = new Mohawk( hue ); break;
                case 0x2045: item = new PageboyHair( hue ); break;
                case 0x2046: item = new BunsHair( hue ); break;
                case 0x2047: item = new Afro( hue ); break;
                case 0x2048: item = new ReceedingHair( hue ); break;
                case 0x2049: item = new TwoPigTails( hue ); break;
                case 0x204A: item = new KrisnaHair( hue ); break;
                case 0x203B: item = new ShortHair( hue ); break;
                case 0x203C: item = new LongHair( hue ); break;
                case 0x203D: item = new PonyTail( hue ); break;
                default: return;
            }

            m.AddItem( item );
        }
            public override void OnResponse( NetState sender, RelayInfo info )
            {
                if ( m_Deed.Deleted )
                    return;

                Item newHair = null;

                switch ( info.ButtonID )
                {
                    case 0: return;
                    case 2: newHair = new ShortHair(); break;
                    case 3: newHair = new LongHair(); break;
                    case 4: newHair = new PonyTail(); break;
                    case 5: newHair = new Mohawk(); break;
                    case 6: newHair = new PageboyHair(); break;
                    case 7: newHair = new ReceedingHair(); break;
                    case 8: newHair = new TwoPigTails(); break;
                    case 9: newHair = new KrisnaHair(); break;
                }

                if ( m_From is PlayerMobile )
                {
                    PlayerMobile pm = (PlayerMobile)m_From;

                    pm.SetHairMods( -1, -1 ); // clear any hairmods (disguise kit, incognito)
                }

                Item oldHair = m_From.FindItemOnLayer( Layer.Hair );

                if ( oldHair != null )
                    oldHair.Delete();

                if ( newHair != null )
                {
                    if ( oldHair != null )
                        newHair.Hue = oldHair.Hue;

                    m_From.AddItem( newHair );
                }

                m_Deed.Delete();
            }
示例#4
0
 public virtual Item AddRandomHair()
 {
     Item hair = null;
     switch ( Utility.Random( 8 ) )
     {
         case 0: AddItem( hair = new Afro() ); break;
         case 1: AddItem( hair = new KrisnaHair() ); break;
         case 2: AddItem( hair = new PageboyHair() ); break;
         case 3: AddItem( hair = new PonyTail() ); break;
         case 4: AddItem( hair = new ReceedingHair() ); break;
         case 5: AddItem( hair = new TwoPigTails() ); break;
         case 6: AddItem( hair = new ShortHair() ); break;
         case 7: AddItem( hair = new LongHair() ); break;
     }
     return hair;
 }
示例#5
0
		public LordGuardian()
			: base(AIType.AI_Hybrid, FightMode.All | FightMode.Weakest, 10, 1, 0.15, 0.25) 
		{
			BardImmune = true;
			FightStyle = FightStyle.Melee | FightStyle.Magic | FightStyle.Smart | FightStyle.Bless | FightStyle.Curse;
			UsesHumanWeapons = false;
			UsesBandages = true;
			UsesPotions = true;
			CanRun = true;
			CanReveal = true; // magic and smart

			SpeechHue = Utility.RandomDyedHue();
			Name = "Lord Guardian";
            Female = false;
			Body = 0x190; 
			Hue = 0x83F4; 
			IOBAlignment = IOBAlignment.Council;
			ControlSlots = 6;

			PackItem(new Bandage(Utility.RandomMinMax(1, 15)));

			BloodDrenchedBandana bandana = new BloodDrenchedBandana();
			bandana.LootType = LootType.Newbied;
			AddItem( bandana );
			
			Kilt kilt = new Kilt( 0x1 ); //black kilt
			if ( Utility.RandomDouble() <= 0.93 )
				kilt.LootType = LootType.Newbied;
			AddItem( kilt );
			
			Sandals sandals = new Sandals( 0x66C );
			if ( Utility.RandomDouble() <= 0.93 )
				sandals.LootType = LootType.Newbied;
			AddItem( sandals );

			SilverRing ring = new SilverRing();
			ring.Name = "To my darling Adam";
			if ( Utility.RandomDouble() < 0.95 )
				ring.LootType = LootType.Newbied;
			AddItem( ring );

			ChainChest tunic = new ChainChest();
			tunic.Resource = CraftResource.Gold;
			AddItem( tunic );
			
			ChainLegs legs = new ChainLegs();
			legs.Resource = CraftResource.Gold;
			AddItem( legs );
			
			RingmailArms arms = new RingmailArms();
			arms.Resource = CraftResource.Gold;
			AddItem( arms );
			
			GuardianKatana sword = new GuardianKatana();
			sword.Quality = WeaponQuality.Exceptional;
			sword.LootType = LootType.Newbied;
			if ( Utility.RandomBool() )	
				sword.Poison = Poison.Deadly; 
			else 
				sword.Poison = Poison.Greater;
			sword.PoisonCharges = 30;
			AddItem( sword );

			PonyTail hair = new PonyTail();
			hair.Hue = 0x1BC;
			hair.Layer = Layer.Hair; 
			hair.Movable = false; 
			AddItem( hair ); 

			SetStr( 375, 400 );
			SetDex( 100, 125 );
			SetInt( 150, 175 );

			SetDamage( 8, 10 );

			SetSkill(SkillName.EvalInt, 100.0, 110.0);
			SetSkill(SkillName.Magery, 100.0, 110.0);
			SetSkill( SkillName.Swords, 100.0, 125.0 );
			SetSkill( SkillName.Tactics, 100.0, 125.0 );
			SetSkill( SkillName.Anatomy, 100.0, 125.0 );
			SetSkill( SkillName.Poisoning, 60.0, 82.5 );
			SetSkill( SkillName.MagicResist, 83.5, 92.5 );

			Fame = 5000;
			Karma = -5000;

			VirtualArmor = 40;
			
			m_NextSpeechTime = DateTime.Now;

			PackItem(new Bandage(Utility.RandomMinMax(VirtualArmor, VirtualArmor * 2)));
			PackStrongPotions(6, 12);
			PackItem(new Pouch());
		}