Browse Source

Mark blocks always in BlockPlaceEvent

nossr50 4 years ago
parent
commit
d4ab829812
2 changed files with 12 additions and 9 deletions
  1. 1 0
      Changelog.txt
  2. 11 9
      src/main/java/com/gmail/nossr50/listeners/BlockListener.java

+ 1 - 0
Changelog.txt

@@ -1,4 +1,5 @@
 Version 2.1.146
+    A dupe exploit has been patched
     Players no longer lose levels below the level threshold in hardcore mode
     Hardcore now only applies penalties to levels above threshold
 

+ 11 - 9
src/main/java/com/gmail/nossr50/listeners/BlockListener.java

@@ -205,9 +205,19 @@ public class BlockListener implements Listener {
      */
     @EventHandler(priority = EventPriority.MONITOR)
     public void onBlockPlace(BlockPlaceEvent event) {
+        BlockState blockState = event.getBlock().getState();
+
+        /* Check if the blocks placed should be monitored so they do not give out XP in the future */
+        if (BlockUtils.shouldBeWatched(blockState)) {
+            // Don't count de-barking wood
+            if (!Tag.LOGS.isTagged(event.getBlockReplacedState().getType()) || !Tag.LOGS.isTagged(event.getBlockPlaced().getType()))
+                mcMMO.getPlaceStore().setTrue(blockState);
+        }
+
         /* WORLD BLACKLIST CHECK */
-        if(WorldBlacklist.isWorldBlacklisted(event.getBlock().getWorld()))
+        if(WorldBlacklist.isWorldBlacklisted(event.getBlock().getWorld())) {
             return;
+        }
 
         Player player = event.getPlayer();
 
@@ -215,14 +225,6 @@ public class BlockListener implements Listener {
             return;
         }
 
-        BlockState blockState = event.getBlock().getState();
-
-        /* Check if the blocks placed should be monitored so they do not give out XP in the future */
-        if (BlockUtils.shouldBeWatched(blockState)) {
-            // Don't count de-barking wood
-            if (!Tag.LOGS.isTagged(event.getBlockReplacedState().getType()) || !Tag.LOGS.isTagged(event.getBlockPlaced().getType()))
-                mcMMO.getPlaceStore().setTrue(blockState);
-        }
 
         McMMOPlayer mcMMOPlayer = UserManager.getPlayer(player);