private static void rakePatch(Player p, Patch patch) { if (patch.isBlankPatch()) { p.getPackets().sendMessage("This patch is clear of weeds."); return; } if (!p.getInventory().hasItem(TOOLS[0])) { p.getPackets().sendMessage("You need a rake to clear the weeds from this patch."); return; } p.setLastAnimation(new Animation(2273)); patch.setWeeding(true); p.setTemporaryAttribute("harvesting", true); Event rakePatchEvent = new Event(1300); rakePatchEvent.setAction(() => { if (p.isDestroyed() || p.isDisconnected() || p.getTemporaryAttribute("harvesting") == null) { rakePatchEvent.stop(); patch.setWeeding(false); return; } if (!p.getInventory().hasItem(TOOLS[0])) { p.getPackets().sendMessage("You need a rake to clear the weeds from this patch."); patch.setWeeding(false); rakePatchEvent.stop(); return; } p.getInventory().addItemOrGround(6055); p.setLastAnimation(new Animation(2273)); setConfig(p, patch); patch.setStatus(patch.getStatus() + 1); if (patch.getStatus() >= 3) { p.getPackets().sendMessage("You clear the weeds from the patch, this patch is now suitable for farming."); patch.setHasWeeds(false); patch.setWeeding(false); patch.setStatus(2); setConfig(p, patch); p.setLastAnimation(new Animation(65535)); rakePatchEvent.stop(); return; } }); Server.registerEvent(rakePatchEvent); }