/**********************************************************
RunUO 2.0 AoV C# script file
Official Age of Valor Script :: www.uovalor.com
Last modified by 
Filepath: scripts\_custom\mobiles\pker.cs
Lines of code: 123
***********************************************************/


using System;
using System.Collections;
using Server.Items;


namespace Server.Mobiles
{

	public class pker : BaseCreature
	{
		public override bool ClickTitle{ get{ return true; } }
		public override double SwitchWeaponChance{ get{ return 0.5; } }	
		public override double WeaponAbilityChance{ get{ return 0.75; } }
		

		public override int SuperAI_Intensity{ get{ return 1000; } }
		public override int SuperAI_DelayMax{ get{ return 0; } }
		public override TimeSpan SuperAI_HealingDelay{ get{ return TimeSpan.FromSeconds(5); } }			

		
		
		[Constructable]
		public pker() : base( AIType.AI_Super, FightMode.Closest, 10, 1, 0.02, 0.02 )
		{
            SpeechHue = Utility.RandomDyedHue(); 
            Hue = Utility.RandomSkinHue(); 

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


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

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

			
			SetStr( 90, 100 );
			SetDex( 30, 40 );
			SetInt( 110, 125 );

	        SetHits( 99, 150 );
			SetMana( 110, 230 );			
			
			
			SetSkill( SkillName.MagicResist, 100, 120 );
			SetSkill( SkillName.Meditation, 100, 120 );
			SetSkill( SkillName.Focus, 100, 120 );
			SetSkill( SkillName.Wrestling, 100, 120 );
			SetSkill( SkillName.Magery, 110, 120 );
			SetSkill( SkillName.EvalInt, 110, 140 );
			SetSkill( SkillName.Anatomy, 100, 120 );
			SetSkill( SkillName.Archery, 100, 120 );
			SetSkill( SkillName.Swords, 100, 120 );
			SetSkill( SkillName.Necromancy, 100, 120 );
			SetSkill( SkillName.SpiritSpeak, 100, 120 );
			SetSkill( SkillName.Spellweaving, 100, 120 );
			SetSkill( SkillName.Ninjitsu, 100, 120 );
			SetSkill( SkillName.Bushido, 100, 120 );
			SetSkill( SkillName.Parry, 100, 120 );
			SetSkill( SkillName.Chivalry, 100, 120 );
			SetSkill( SkillName.Poisoning, 100, 120 );
			SetSkill( SkillName.Alchemy, 100, 120 );
			
			
			
			Fame = 0;
			Karma = 0;

			AddItem( new Robe(Utility.RandomNeutralHue()) );
			AddItem( new Cloak(Utility.RandomNeutralHue()) );
			

			OrnamentOfThePKer brace = new OrnamentOfThePKer();
			brace.Movable = false;
			AddItem(brace);


			if(0.3>Utility.RandomDouble())PackItem(new Katana());
			if(0.3>Utility.RandomDouble())PackItem(new Kryss());
			if(0.3>Utility.RandomDouble())PackItem(new Cleaver());
			if(0.3>Utility.RandomDouble())PackItem(new ButcherKnife());
			if(0.3>Utility.RandomDouble())PackItem(new NoDachi());
			if(0.3>Utility.RandomDouble())PackItem(new Bow());
			if(0.3>Utility.RandomDouble())PackItem(new CompositeBow());
			if(0.3>Utility.RandomDouble())PackItem(new Yumi());
			if(0.3>Utility.RandomDouble())PackItem(new MagicalShortbow());
			if(0.3>Utility.RandomDouble())PackItem(new ElvenCompositeLongbow());
				
			SwapWeapon(100);
			
	
			PackReg( 26 );
			Utility.AssignRandomHair( this );
		}
		
		public override void OnDeath( Container c )
 		{
			base.OnDeath( c );
	 	}


		public override void GenerateLoot()
		{
		//AddLoot( LootPack.Rich );
		AddLoot( LootPack.MaxedOut,1);
		}
		
		
		
		
		
		public override bool CanRummageCorpses{ get{ return true; } }
		public override bool AlwaysMurderer{ get{ return true; } }
		public override bool BardImmune{ get{ return true; } }
		public override Poison PoisonImmune{ get{ return Poison.Deadly; } }

		public pker( Serial serial ) : base( serial )
		{
		}


		public override bool OnBeforeDeath()
		{
			switch(Utility.Random(10))
			{
			case 0: Say("You NOOB!"); break;
			case 1: Say("NOOB!"); break;
			case 2: Say("Cheap"); break;
			case 3: Say("screw you"); break;
			case 4: Say("WTFH4X"); break;
			case 5: Say("Cheater"); break;		
			}
			
		return base.OnBeforeDeath();		
		}		
		
		
		

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );

			writer.Write( (int) 0 ); // version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();
		}
		

		
	}
}
