/**********************************************************
RunUO 2.0 AoV C# script file
Official Age of Valor Script :: www.uovalor.com
Last modified by Death on Nov-01-2011 07:27:00pm
Filepath: scripts\_custom\events and scenarios\Halloween2011\Quests\Quest Givers\Ester.cs
Lines of code: 78
***********************************************************/


using System;
using Server;
using Server.Items;
using Server.Mobiles;

namespace Server.Engines.Quests
{	
	public class FoulPlantICurseTheeQuest : BaseQuest
	{				
		public override object Title{ get{ return "Foul Plant I Curse Thee!"; } }
		
		public override object Description{ get{ return "Herpekitus has grown out of control! I should have never picked up that foul plant. I was forced to lock it in one of the haunted houses so I could buy some time to think.<br><br>I have scrambled to write this hint and protection scroll so that I could finally destroy the plant beast but Herpekitus planned for my return and secured a barrier of roots around the haunted house. I do not have the power to dispatch of them in order to get to the door! If only I still had my ruby slippers!<br><br>Hopefully somebody can find my ruby slippers so that we can get back to Herpekitus. In the meantime, if you want this hint scroll, I'll give it to you in trade for some candy!"; } }
		
		public override object Refuse{ get{ return "I'll hold on to this scroll. Maybe if you find those ruby slippers you'll change your mind."; } }
		
		public override object Uncomplete{ get{ return "If you're looking for candy, some of the other witches might offer you some quests with a bag of candy as the reward."; } }
		
		public override object Complete{ get{ return "Fantastic! Here, take this scroll. If you find my ruby slippers I'll give you the key and be able to break the barrier around the door. This should allow you to enter and destroy Herpekitus!"; } }
	
		public FoulPlantICurseTheeQuest() : base()
		{			
			AddObjective( new ObtainObjective( typeof( CaramelApple ), "Caramel Apple", 20, 2512, 0, 449 ) );
			
			AddReward( new BaseReward( typeof( HerpekitusHintScroll ), "A hint scroll" ) );
		}
		
		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();
		}		
	}
	
	public class Grindol : MondainQuester
	{
		public override Type[] Quests
		{ 
			get{ return new Type[] 
			{ 
				typeof( FoulPlantICurseTheeQuest )
			};} 
		}
		
		[Constructable]
		public Grindol() : base( "Grindol", "the witch" )
		{			
			SetSkill( SkillName.Meditation, 60.0, 83.0 );
			SetSkill( SkillName.Focus, 60.0, 83.0 );
		}
		
		public Grindol( Serial serial ) : base( serial )
		{
		}		
		
		public override void InitBody()
		{
			InitStats( 100, 100, 25 );

			Hue = 0x83EA;

			Female = true;
			Body = 0x191;
		}
		
		public override void InitOutfit()
		{
			AddItem( new Robe( 0x1 ) );
			AddItem( new Sandals() );
			AddItem( new WizardsHat( 0x1 ) );
			AddItem( new GoldBracelet() );

			HairItemID = 0x203C;
			HairHue = 1175;

			Item staff = new GnarledStaff();
			staff.Movable = false;
			AddItem( staff );
		}
		
		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();
		}
	}
}