e886d8118e
Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing
45 lines
2.4 KiB
Diff
45 lines
2.4 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Jake Potrebic <jake.m.potrebic@gmail.com>
|
|
Date: Sun, 3 Jan 2021 21:04:03 -0800
|
|
Subject: [PATCH] Configurable max leash distance
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
index 89f3a28c20f0e4db4650c435dbcbc923b7bde8aa..4735dcba31b556fafe9c7d7440c89e940755c81f 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
@@ -167,6 +167,12 @@ public class PaperWorldConfig {
|
|
}
|
|
}
|
|
|
|
+ public float maxLeashDistance = 10f;
|
|
+ private void maxLeashDistance() {
|
|
+ maxLeashDistance = getFloat("max-leash-distance", maxLeashDistance);
|
|
+ log("Max leash distance: " + maxLeashDistance);
|
|
+ }
|
|
+
|
|
public boolean disableEndCredits;
|
|
private void disableEndCredits() {
|
|
disableEndCredits = getBoolean("game-mechanics.disable-end-credits", false);
|
|
diff --git a/src/main/java/net/minecraft/server/EntityCreature.java b/src/main/java/net/minecraft/server/EntityCreature.java
|
|
index 4757e5a92c9cf04fa52d62bac6dae782e08ddab1..eaa10d6e3a3c37b83fed58637941273fee9b0be8 100644
|
|
--- a/src/main/java/net/minecraft/server/EntityCreature.java
|
|
+++ b/src/main/java/net/minecraft/server/EntityCreature.java
|
|
@@ -40,7 +40,7 @@ public abstract class EntityCreature extends EntityInsentient {
|
|
float f = this.g(entity);
|
|
|
|
if (this instanceof EntityTameableAnimal && ((EntityTameableAnimal) this).isSitting()) {
|
|
- if (f > 10.0F) {
|
|
+ if (f > entity.world.paperConfig.maxLeashDistance) { // Paper
|
|
this.world.getServer().getPluginManager().callEvent(new EntityUnleashEvent(this.getBukkitEntity(), EntityUnleashEvent.UnleashReason.DISTANCE)); // CraftBukkit
|
|
this.unleash(true, true);
|
|
}
|
|
@@ -49,7 +49,7 @@ public abstract class EntityCreature extends EntityInsentient {
|
|
}
|
|
|
|
this.x(f);
|
|
- if (f > 10.0F) {
|
|
+ if (f > entity.world.paperConfig.maxLeashDistance) { // Paper
|
|
this.world.getServer().getPluginManager().callEvent(new EntityUnleashEvent(this.getBukkitEntity(), EntityUnleashEvent.UnleashReason.DISTANCE)); // CraftBukkit
|
|
this.unleash(true, true);
|
|
this.goalSelector.a(PathfinderGoal.Type.MOVE);
|