From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: lukas81298 <lukas81298@gommehd.net>
Date: Mon, 25 Jan 2021 14:37:57 +0100
Subject: [PATCH] added option to disable pathfinding updates on block changes


diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index db93028c0acb771976cb38a3e4183441a65dbeb9..0e11202faccbb4b0347767dcf60a1461067d1b7c 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -803,6 +803,11 @@ public class PaperWorldConfig {
         enderDragonsDeathAlwaysPlacesDragonEgg = getBoolean("ender-dragons-death-always-places-dragon-egg", enderDragonsDeathAlwaysPlacesDragonEgg);
     }
 
+    public boolean updatePathfindingOnBlockUpdate = true;
+    private void setUpdatePathfindingOnBlockUpdate() {
+        updatePathfindingOnBlockUpdate = getBoolean("update-pathfinding-on-block-update", this.updatePathfindingOnBlockUpdate);
+    }
+
     public boolean phantomIgnoreCreative = true;
     public boolean phantomOnlyAttackInsomniacs = true;
     private void phantomSettings() {
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index af99e51d26d3c80ec14d78646f8c672e20f57f5f..a1df04f14fb149315e73307a81514b805ef3cb0d 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -1406,6 +1406,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
         }
 
         this.getChunkSource().blockChanged(pos);
+        if(this.paperConfig.updatePathfindingOnBlockUpdate) { // Paper - option to disable pathfinding updates
         VoxelShape voxelshape = oldState.getCollisionShape(this, pos);
         VoxelShape voxelshape1 = newState.getCollisionShape(this, pos);
 
@@ -1447,6 +1448,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
             }
 
         }
+        } // Paper
     }
 
     @Override
