diff --git a/Changelog.txt b/Changelog.txt
index 06e044820..eb3042c4d 100644
--- a/Changelog.txt
+++ b/Changelog.txt
@@ -15,6 +15,7 @@ Version 1.4.00-dev
  = Fixed bug where Impact improperly determined the defender's armor
  = Fixed ArrayIndexOutOfBoundsException resulting from being unranked in a skill when using FlatFile
  = Fixed Woodcutting accidentally using Mining double drop values.
+ ! Moved Hylian Luck into a separate listener since it actually cancels the event and shouldn't just be on MONITOR.
  ! Changed how Tree Feller is handled, it should now put less stress on the CPU
  ! Changed Fisherman's Diet and Farmer's Diet to use two seperate config values
  ! Major refactoring - please take note, this WILL break any mcMMO-related plugin not properly hooking into the API.
diff --git a/src/main/java/com/gmail/nossr50/listeners/BlockListener.java b/src/main/java/com/gmail/nossr50/listeners/BlockListener.java
index 6df3fe1ca..630907886 100644
--- a/src/main/java/com/gmail/nossr50/listeners/BlockListener.java
+++ b/src/main/java/com/gmail/nossr50/listeners/BlockListener.java
@@ -38,6 +38,7 @@ import com.gmail.nossr50.skills.woodcutting.Woodcutting;
 import com.gmail.nossr50.spout.SpoutSounds;
 import com.gmail.nossr50.util.BlockChecks;
 import com.gmail.nossr50.util.ItemChecks;
+import com.gmail.nossr50.util.Misc;
 import com.gmail.nossr50.util.ModChecks;
 import com.gmail.nossr50.util.Permissions;
 import com.gmail.nossr50.util.Users;
@@ -204,16 +205,25 @@ public class BlockListener implements Listener {
             }
         }
 
-        if (Permissions.hylianLuck(player) && ItemChecks.isSword(player.getItemInHand())) {
-            Herbalism.hylianLuck(block, player, event);
-        }
-
         //Remove metadata when broken
         if (BlockChecks.shouldBeWatched(block)) {
             mcMMO.placeStore.setFalse(block);
         }
     }
 
+    @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
+    public void onBlockBreakHigher(BlockBreakEvent event) {
+        Player player = event.getPlayer();
+
+        if (Misc.isNPC(player)) {
+            return;
+        }
+
+        if (Permissions.hylianLuck(player) && ItemChecks.isSword(player.getItemInHand())) {
+            Herbalism.hylianLuck(event.getBlock(), player, event);
+        }
+    }
+
     /**
      * Monitor BlockDamage events.
      *