
////////////////////////////////////////
//                                    //
//   Generated by CEO's YAAAG - V1.2  //
// (Yet Another Arya Addon Generator) //
//                                    //
////////////////////////////////////////
using System;
using Server;
using Server.Items;

namespace Server.Items
{
	public class GroveLightHouseAddon : BaseAddon
	{
        private static int[,] m_AddOnSimpleComponents = new int[,] {
			  {712, -2, -3, 0}, {712, -1, -2, 20}, {712, -1, -3, 0}// 1	2	3	
			, {711, -3, -2, 0}, {711, -3, 1, 0}, {715, -2, 3, 20}// 4	5	6	
			, {711, -3, 0, 0}, {711, -3, -1, 0}, {1305, -1, 2, 42}// 7	8	9	
			, {1305, -1, 1, 42}, {718, -1, -1, 42}, {1305, -1, -1, 42}// 10	11	12	
			, {715, -3, 4, 0}, {711, -2, 0, 20}, {711, -2, 1, 20}// 13	14	15	
			, {711, -2, 2, 20}, {714, -1, 4, 0}, {714, -2, 4, 0}// 16	17	18	
			, {711, -2, -1, 20}, {714, -1, 3, 20}, {711, -3, 3, 0}// 19	20	21	
			, {711, -3, 2, 0}, {1305, -1, 0, 42}, {721, -1, 2, 42}// 22	23	24	
			, {728, -1, 1, 42}, {728, -1, 0, 42}, {716, 4, -2, 0}// 25	26	27	
			, {712, 0, -3, 0}, {712, 1, -3, 0}, {717, 3, -2, 20}// 28	29	30	
			, {712, 0, -2, 20}, {712, 2, -2, 20}, {712, 1, -2, 20}// 31	32	33	
			, {712, 3, -3, 0}, {717, 4, -3, 0}, {712, 2, -3, 0}// 34	35	36	
			, {716, 4, -1, 0}, {716, 4, 0, 0}, {716, 4, 1, 0}// 37	38	39	
			, {716, 4, 2, 0}, {714, 1, 4, 0}, {714, 0, 4, 0}// 40	41	42	
			, {716, 3, -1, 20}, {714, 1, 3, 20}, {714, 2, 3, 20}// 43	44	45	
			, {714, 3, 4, 0}, {716, 3, 0, 20}, {1305, 2, 2, 42}// 46	47	48	
			, {1305, 1, -1, 42}, {716, 3, 2, 20}, {1305, 1, 0, 42}// 49	50	51	
			, {1305, 1, 1, 42}, {1305, 0, -1, 42}, {719, 2, 2, 42}// 52	53	54	
			, {729, 2, 0, 42}, {714, 2, 4, 0}, {1305, 0, 0, 42}// 55	56	57	
			, {1305, 1, 2, 42}, {713, 3, 3, 20}, {713, 4, 4, 0}// 58	59	60	
			, {1305, 0, 1, 42}, {716, 4, 3, 0}, {1305, 0, 2, 42}// 61	62	63	
			, {1305, 2, 1, 42}, {1305, 2, 0, 42}, {716, 3, 1, 20}// 64	65	66	
			, {714, 0, 3, 20}, {729, 2, 1, 42}, {1305, 2, -1, 42}// 67	68	69	
			, {724, 2, -1, 42}, {726, 0, -1, 42}, {726, 1, -1, 42}// 71	72	73	
			, {727, 0, 2, 42}, {727, 1, 2, 42}// 74	75	
		};

 
            
		public override BaseAddonDeed Deed
		{
			get
			{
				return new GroveLightHouseAddonDeed();
			}
		}

		[ Constructable ]
		public GroveLightHouseAddon()
		{

            for (int i = 0; i < m_AddOnSimpleComponents.Length / 4; i++)
                AddComponent( new AddonComponent( m_AddOnSimpleComponents[i,0] ), m_AddOnSimpleComponents[i,1], m_AddOnSimpleComponents[i,2], m_AddOnSimpleComponents[i,3] );


			AddComplexComponent( (BaseAddon) this, 6864, 1, 1, 42, 0, 1, "", 1);// 70

		}

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

        private static void AddComplexComponent(BaseAddon addon, int item, int xoffset, int yoffset, int zoffset, int hue, int lightsource)
        {
            AddComplexComponent(addon, item, xoffset, yoffset, zoffset, hue, lightsource, null, 1);
        }

        private static void AddComplexComponent(BaseAddon addon, int item, int xoffset, int yoffset, int zoffset, int hue, int lightsource, string name, int amount)
        {
            AddonComponent ac;
            ac = new AddonComponent(item);
            if (name != null && name.Length > 0)
                ac.Name = name;
            if (hue != 0)
                ac.Hue = hue;
            if (amount > 1)
            {
                ac.Stackable = true;
                ac.Amount = amount;
            }
            if (lightsource != -1)
                ac.Light = (LightType) lightsource;
            addon.AddComponent(ac, xoffset, yoffset, zoffset);
        }

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );
			writer.Write( 0 ); // Version
		}

		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );
			int version = reader.ReadInt();
		}
	}

	public class GroveLightHouseAddonDeed : BaseAddonDeed
	{
		public override BaseAddon Addon
		{
			get
			{
				return new GroveLightHouseAddon();
			}
		}

		[Constructable]
		public GroveLightHouseAddonDeed()
		{
			Name = "GroveLightHouse";
		}

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

		public override void Serialize( GenericWriter writer )
		{
			base.Serialize( writer );
			writer.Write( 0 ); // Version
		}

		public override void	Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );
			int version = reader.ReadInt();
		}
	}
}