diff --git a/src/main/java/com/alttd/fishingevent/listeners/CatchFish.java b/src/main/java/com/alttd/fishingevent/listeners/CatchFish.java index 9793c34..52445b4 100644 --- a/src/main/java/com/alttd/fishingevent/listeners/CatchFish.java +++ b/src/main/java/com/alttd/fishingevent/listeners/CatchFish.java @@ -162,7 +162,17 @@ public class CatchFish implements Listener { return; CaughtFishData caughtFishData = optionalFishData.get(); player.getInventory().addItem(caughtFishData.fishItem()).values() - .forEach(item -> player.getWorld().dropItem(player.getLocation(), item).setOwner(player.getUniqueId())); + .forEach(item -> { + Item dropItem = player.getWorld().dropItem(player.getLocation(), item); + dropItem.setOwner(player.getUniqueId()); + new BukkitRunnable() { + @Override + public void run() { + if (!dropItem.isDead()) + dropItem.remove(); + } + }.runTaskLater(fishingEvent, 60 * 20); + }); player.updateInventory(); player.getWorld().spawn(player.getLocation(), ExperienceOrb.class).setExperience(10); ScoreboardManager.getInstance().updateScoreboard(player, caughtFishData.length(), caughtFishData.fish()); @@ -194,6 +204,13 @@ public class CatchFish implements Listener { CaughtFishData caughtFishData = optionalFishData.get(); item.setItemStack(caughtFishData.fishItem()); item.setOwner(player.getUniqueId()); + new BukkitRunnable() { + @Override + public void run() { + if (!item.isDead()) + item.remove(); + } + }.runTaskLater(fishingEvent, 60 * 20); ScoreboardManager.getInstance().updateScoreboard(player, caughtFishData.length(), caughtFishData.fish()); player.sendActionBar(MiniMessage.miniMessage().deserialize("You caught a cm", //TODO move to config TagResolver.resolver(