diff --git a/Changelog.txt b/Changelog.txt index ede6e5b62..4034fd8f0 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -9,6 +9,7 @@ Key: Version 2.1.1 = Fixed an issue where excavation wasn't using the correct permission node + = Added protection against AFK fishing Version 2.1.0 + mcMMO now features XP bars! Configurable in experience.yml diff --git a/src/main/java/com/gmail/nossr50/listeners/PlayerListener.java b/src/main/java/com/gmail/nossr50/listeners/PlayerListener.java index 63d668774..e5fcafdce 100644 --- a/src/main/java/com/gmail/nossr50/listeners/PlayerListener.java +++ b/src/main/java/com/gmail/nossr50/listeners/PlayerListener.java @@ -251,6 +251,9 @@ public class PlayerListener implements Listener { FishingManager fishingManager = UserManager.getPlayer(player).getFishingManager(); + if(fishingManager.exploitPrevention()) + return; + switch (event.getState()) { case CAUGHT_FISH: //TODO Update to new API once available! Waiting for case CAUGHT_TREASURE: @@ -311,6 +314,10 @@ public class PlayerListener implements Listener { } FishingManager fishingManager = UserManager.getPlayer(player).getFishingManager(); + + if(fishingManager.exploitPrevention()) + return; + Entity caught = event.getCaught(); switch (event.getState()) { diff --git a/src/main/java/com/gmail/nossr50/skills/fishing/FishingManager.java b/src/main/java/com/gmail/nossr50/skills/fishing/FishingManager.java index 42d5c474c..f19e12c4b 100644 --- a/src/main/java/com/gmail/nossr50/skills/fishing/FishingManager.java +++ b/src/main/java/com/gmail/nossr50/skills/fishing/FishingManager.java @@ -72,7 +72,8 @@ public class FishingManager extends SkillManager { Location targetLocation = targetBlock.getLocation(); boolean sameTarget = (fishingTarget != null && fishingTarget.equals(targetLocation)); - return hasFished && sameTarget; + + return hasFished || sameTarget; } public boolean canIceFish(Block block) {