public override void OnDoubleClick(Mobile from) { if (from.Mounted && !CropHelper.CanWorkMounted) { from.SendMessage(AgriTxt.CannotWorkMounted); 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(AgriTxt.CannotGrowHere); return; } //check for BaseCrop on this tile ArrayList cropshere = CropHelper.CheckCrop(m_pnt, m_map, 0); if (cropshere.Count > 0) { from.SendMessage(AgriTxt.AlreadyCrop); return; } //check for over planting prohibt if 4 maybe 3 neighboring crops ArrayList cropsnear = CropHelper.CheckCrop(m_pnt, m_map, 2); //1 if ((cropsnear.Count > 1) || ((cropsnear.Count == 1) && Utility.RandomBool())) //3 { from.SendMessage(AgriTxt.TooMuchCrops); return; } if (this.BumpZ) { ++m_pnt.Z; } if (!from.Mounted) { from.Animate(32, 5, 1, true, false, 0); // Bow } from.SendMessage(AgriTxt.CropPlanted); this.Consume(); Item item = new BananaSapling();// from ); item.Location = m_pnt; item.Map = m_map; }
public static void init(BananaSapling plant) { TimeSpan delay = TreeHelper.SaplingTime; plant.treeTime = DateTime.Now + delay; plant.thisTimer = new TreeHelper.TreeTimer(plant, typeof(BananaTree), delay); plant.thisTimer.Start(); }
public override void OnDoubleClick(Mobile from) { if (from.Mounted && !CropHelper.CanWorkMounted) { from.SendMessage(AgriTxt.CannotWorkMounted); 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(AgriTxt.CannotGrowHere); return; } //check for BaseCrop on this tile ArrayList cropshere = CropHelper.CheckCrop(m_pnt, m_map, 0); if (cropshere.Count > 0) { from.SendMessage(AgriTxt.AlreadyCrop); return; } //check for over planting prohibt if 4 maybe 3 neighboring crops ArrayList cropsnear = CropHelper.CheckCrop(m_pnt, m_map, 2);//1 if ((cropsnear.Count > 1) || ((cropsnear.Count == 1) && Utility.RandomBool()))//3 { from.SendMessage(AgriTxt.TooMuchCrops); return; } if (this.BumpZ) ++m_pnt.Z; if (!from.Mounted) from.Animate(32, 5, 1, true, false, 0); // Bow from.SendMessage(AgriTxt.CropPlanted); this.Consume(); Item item = new BananaSapling();// from ); item.Location = m_pnt; item.Map = m_map; }