소스 검색

We only care about sand & gravel.

Technically this was already addressed because no other blocks would
have their place store set to true, but this eliminates unnecessary
overhead caused by the checking of other falling blocks - anvils, dragon
eggs, and TNT.
GJ 12 년 전
부모
커밋
2c78bac8f7
1개의 변경된 파일11개의 추가작업 그리고 8개의 파일을 삭제
  1. 11 8
      src/main/java/com/gmail/nossr50/listeners/EntityListener.java

+ 11 - 8
src/main/java/com/gmail/nossr50/listeners/EntityListener.java

@@ -56,19 +56,22 @@ public class EntityListener implements Listener {
     @EventHandler(priority = EventPriority.MONITOR)
     @EventHandler(priority = EventPriority.MONITOR)
     public void onEntityChangeBlockEvent(EntityChangeBlockEvent event) {
     public void onEntityChangeBlockEvent(EntityChangeBlockEvent event) {
         Entity entity = event.getEntity();
         Entity entity = event.getEntity();
-        
+
         if (entity instanceof FallingBlock) {
         if (entity instanceof FallingBlock) {
             int entityID = entity.getEntityId();
             int entityID = entity.getEntityId();
             Block block = event.getBlock();
             Block block = event.getBlock();
+            Material type = block.getType();
 
 
-            if (mcMMO.placeStore.isTrue(block)) {
-                plugin.addToFallingBlockTracker(entityID, block);
-            }
+            if (type == Material.SAND || type == Material.GRAVEL) {
+                if (mcMMO.placeStore.isTrue(block)) {
+                    plugin.addToFallingBlockTracker(entityID, block);
+                }
 
 
-            if (plugin.fallingBlockIsTracked(entityID) && block.getType() == Material.AIR) {
-                mcMMO.placeStore.setFalse(plugin.getSourceBlock(entityID));
-                mcMMO.placeStore.setTrue(block);
-                plugin.removeFromFallingBlockTracker(entityID);
+                if (plugin.fallingBlockIsTracked(entityID) && block.getType() == Material.AIR) {
+                    mcMMO.placeStore.setFalse(plugin.getSourceBlock(entityID));
+                    mcMMO.placeStore.setTrue(block);
+                    plugin.removeFromFallingBlockTracker(entityID);
+                }
             }
             }
         }
         }
     }
     }