geforkt von Mirrors/Paper
41 Zeilen
2.2 KiB
Diff
41 Zeilen
2.2 KiB
Diff
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 40939de88b1a8169dbfc7a0cd288c2fe9b706426..bbb1d0ed9e76f414dc7d73b4f7786891425f55cd 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
@@ -800,4 +800,9 @@ public class PaperWorldConfig {
|
|
private void enderDragonsDeathAlwaysPlacesDragonEgg() {
|
|
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);
|
|
+ }
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
|
index 338b4c382fb8ea349ce81f2009e96de1df7ac5e2..a7553a856b9c99bee8f75d514b97cfab952bfd33 100644
|
|
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
|
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
|
@@ -1678,6 +1678,7 @@ public class ServerLevel extends net.minecraft.world.level.Level implements Worl
|
|
@Override
|
|
public void sendBlockUpdated(BlockPos pos, BlockState oldState, BlockState newState, int flags) {
|
|
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);
|
|
|
|
@@ -1706,6 +1707,7 @@ public class ServerLevel extends net.minecraft.world.level.Level implements Worl
|
|
|
|
this.tickingEntities = wasTicking; // Paper
|
|
}
|
|
+ } // Paper
|
|
}
|
|
|
|
@Override
|