public override void OnDoubleClick(Mobile from) { if (from.Mounted && !CropHelper.CanWorkMounted) { from.SendMessage("You cannot plant a seed while mounted."); return; } Point3D m_pnt = from.Location; Map m_map = from.Map; if (!IsChildOf(from.Backpack)) { from.SendLocalizedMessage(1042010); //You must have the object in your backpack to use it. return; } else if (!CropHelper.CheckCanGrow(this, m_map, m_pnt.X, m_pnt.Y)) { from.SendMessage("This seed will not grow here."); return; } //check for BaseCrop on this tile ArrayList cropshere = CropHelper.CheckCrop(m_pnt, m_map, 0); if (cropshere.Count > 0) { from.SendMessage("There is already a crop growing here."); return; } //check for over planting prohibt if 4 maybe 3 neighboring crops ArrayList cropsnear = CropHelper.CheckCrop(m_pnt, m_map, 1); if ((cropsnear.Count > 3) || ((cropsnear.Count == 3) && Utility.RandomBool())) { from.SendMessage("There are too many crops nearby."); return; } if (this.BumpZ) { ++m_pnt.Z; } if (!from.Mounted) { from.Animate(32, 5, 1, true, false, 0); // Bow } from.SendMessage("You plant the seed."); this.Consume(); Item item = new GreenPepperSeedling(from); item.Location = m_pnt; item.Map = m_map; }
public override void OnDoubleClick( Mobile from ) { if ( from.Mounted && !CropHelper.CanWorkMounted ) { from.SendMessage( "You cannot plant a seed while mounted." ); return; } Point3D m_pnt = from.Location; Map m_map = from.Map; if ( !IsChildOf( from.Backpack ) ) { from.SendLocalizedMessage( 1042010 ); //You must have the object in your backpack to use it. return; } else if ( !CropHelper.CheckCanGrow( this, m_map, m_pnt.X, m_pnt.Y ) ) { from.SendMessage( "This seed will not grow here." ); return; } //check for BaseCrop on this tile ArrayList cropshere = CropHelper.CheckCrop( m_pnt, m_map, 0 ); if ( cropshere.Count > 0 ) { from.SendMessage( "There is already a crop growing here." ); return; } //check for over planting prohibt if 4 maybe 3 neighboring crops ArrayList cropsnear = CropHelper.CheckCrop( m_pnt, m_map, 1 ); if ( ( cropsnear.Count > 3 ) || (( cropsnear.Count == 3 ) && Utility.RandomBool() ) ) { from.SendMessage( "There are too many crops nearby." ); return; } if ( this.BumpZ ) ++m_pnt.Z; if ( !from.Mounted ) from.Animate( 32, 5, 1, true, false, 0 ); // Bow from.SendMessage("You plant the seed."); this.Consume(); Item item = new GreenPepperSeedling( from ); item.Location = m_pnt; item.Map = m_map; }
public override void OnDoubleClick(Mobile from) { if (from.Mounted && !CropHelper.CanWorkMounted) { from.SendMessage("You cannot plant a seed while mounted."); return; } Point3D m_pnt = from.Location; Map m_map = from.Map; if (!IsChildOf(from.Backpack)) { from.SendLocalizedMessage(1042010); return; } else if (!CropHelper.CheckCanGrow(this, m_map, m_pnt.X, m_pnt.Y)) { from.SendMessage("This seed will not grow here."); return; } ArrayList cropshere = CropHelper.CheckCrop(m_pnt, m_map, 0); if (cropshere.Count > 0) { from.SendMessage("There is already a crop growing here."); return; } ArrayList cropsnear = CropHelper.CheckCrop(m_pnt, m_map, 1); if ((cropsnear.Count > 1)) { from.SendMessage("There are too many crops nearby."); return; } if (this.BumpZ) { ++m_pnt.Z; } if (!from.Mounted) { from.Animate(32, 5, 1, true, false, 0); } from.SendMessage("You plant the seed."); this.Consume(); Item item = new GreenPepperSeedling(from); item.Location = m_pnt; item.Map = m_map; }
public static void init( GreenPepperSeedling plant ) { plant.thisTimer = new CropHelper.GrowTimer( plant, typeof(GreenPepperCrop), plant.Sower ); plant.thisTimer.Start(); }