public override void OnComponentUsed(AddonComponent stew, Mobile from) { if (!from.InRange(this.GetWorldLocation(), 2)) from.SendMessage("You are too far away."); else { { stew.Visible = false; BreadLoaf hagstew = new BreadLoaf(); //this decides your fillrate hagstew.Eat(from); Timer m_timer = new ShowStew(stew); m_timer.Start(); } } }
public override void OnComponentUsed(AddonComponent stew, Mobile from) { if (!from.InRange(GetWorldLocation(), 2) || !from.InLOS(this)) from.LocalOverheadMessage(MessageType.Regular, 0x3B2, 1019045); // I can't reach that. else { { stew.Visible = false; BreadLoaf hagstew = new BreadLoaf(); //this decides your fillrate hagstew.Eat(from); Timer m_timer = new ShowStew(stew); m_timer.Start(); } } }
public override void OnDoubleClick( Mobile from ) { if ( m_sower == null || m_sower.Deleted ) m_sower = from; if ( from.Mounted && !CropHelper.CanWorkMounted ) { from.SendMessage( "You cannot harvest a crop while mounted." ); return; } if ( DateTime.Now > lastpicked.AddSeconds(3) ) // 3 seconds between picking { lastpicked = DateTime.Now; int lumberValue = (int)from.Skills[SkillName.Lumberjacking].Value / 20; if ( lumberValue == 0 ) { from.SendMessage( "You have no idea how to harvest this crop." ); return; } if ( from.InRange( this.GetWorldLocation(), 1 ) ) { if ( m_yield < 1 ) { from.SendMessage( "There is nothing here to harvest." ); if ( PlayerCanDestroy && !( m_sower.AccessLevel > AccessLevel.Counselor ) ) { UpRootGump g = new UpRootGump( from, this ); from.SendGump( g ); } } else //check skill and sower { from.Direction = from.GetDirectionTo( this ); from.Animate( from.Mounted ? 29:32, 5, 1, true, false, 0 ); if ( from == m_sower ) { lumberValue *= 2; m_lastvisit = DateTime.Now; } if ( lumberValue > m_yield ) lumberValue = m_yield + 1; int pick = Utility.Random( lumberValue ); if ( pick == 0 ) { from.SendMessage( "You do not manage to harvest any crops." ); return; } m_yield -= pick; from.SendMessage( "You harvest {0} crop{1}!", pick, ( pick == 1 ? "" : "s" ) ); //PublicOverheadMessage( MessageType.Regular, 0x3BD, false, string.Format( "{0}", m_yield )); // use for debuging ((Item)this).ItemID = pickedGraphic; // ******************************** // *** Wheat does not yet exist *** // ******************************** // Wheat crop = new Wheat( pick ); BreadLoaf crop = new BreadLoaf( pick ); from.AddToBackpack( crop ); if ( SowerPickTime != TimeSpan.Zero && m_lastvisit + SowerPickTime < DateTime.Now && !( m_sower.AccessLevel > AccessLevel.Counselor ) ) { this.UpRoot( from ); return; } if ( !regrowTimer.Running ) { regrowTimer.Start(); } } } else { from.SendMessage( "You are too far away to harvest anything." ); } } }