/**********************************************************
RunUO 2.0 AoV C# script file
Official Age of Valor Script :: www.uovalor.com
Last modified by Death on Oct-30-2011 08:24:13pm
Filepath: scripts\_custom\events and scenarios\Halloween2011\Quests\Quest Items\MathildasCrystalBall.cs
Lines of code: 65
***********************************************************/


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

namespace Server.Engines.Quests
{
	public class CurseYouDorothyQuest : BaseQuest
	{				
		public override object Title{ get{ return "Curse You Dorothy!"; } }
		
		public override object Description{ get{ return "Hmmmm, wasn't Grindol going on about needing her ruby slippers to take down Herpekitus' barrier of roots? We should probably bring these back to her"; } }
		
		public override object Refuse{ get{ return "It's probably best to return these ruby slippers, but for now you put it aside."; } }
		
		public override object Uncomplete{ get{ return "Grindol is looking for these ruby slippers. Better bring them back right away"; } }
		
		public override object Complete{ get{ return "My ruby slippers! Oh my goodness it's been years since I've seen these!<br><br>That brat Dorothy crushed me with her house then stole em off my feet! How RUDE! On top of that, it took eternity to get a res. Lousy munchkins.<br><br>Here, grab this key to the haunted house I trapped Herpekitus in. Now that I have my ruby slippers, I can freeze his roots to let you inside. Don't let us down. Stop Herpekitus from growing! "; } }
	
		public CurseYouDorothyQuest() : base()
		{			
			AddObjective( new DeliverObjective( typeof( RubySlippers ) , "Ruby Slippers", 1, typeof( Grindol ), "Grindol (Wormwood)", 3600 ) );
			
			AddReward( new BaseReward( typeof( HerpekitusKey ), "A haunted house key (Herpekitus)" ) );
		}
		
		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 RubySlippers : BaseQuestItem
	{
		public override Type[] Quests
		{ 
			get{ return new Type[] 
			{ 
				typeof( CurseYouDorothyQuest )
			};} 
		}
		
		public override int Lifespan{ get{ return 3600; } }
	
		[Constructable]
		public RubySlippers() : base( 5902 )
		{
			Name = "Ruby Slippers (Double click for quest)";
			Hue = 39;
		}
		
		public RubySlippers( Serial serial ) : base( serial )
		{
		}
		
		public override void GetProperties( ObjectPropertyList list)
		{
			base.GetProperties( list );
			list.Add( 1060658,"Timeline \t" + "To be deleted after Halloween Event");
		}
		
		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();
		}	
	}
}