2021-06-11 12:02:28 +00:00
|
|
|
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
|
2022-06-08 17:39:07 +00:00
|
|
|
index 68c61f286c2d39fd5c463f6706a0554fbaa3c08a..0d3133cc423d024be8fdd0f270564bf550cd8232 100644
|
2021-06-11 12:02:28 +00:00
|
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
2022-06-06 00:17:27 +00:00
|
|
|
@@ -342,6 +342,12 @@ public class PaperWorldConfig {
|
2021-06-11 12:02:28 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
+ 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/world/entity/PathfinderMob.java b/src/main/java/net/minecraft/world/entity/PathfinderMob.java
|
2022-06-08 07:30:41 +00:00
|
|
|
index 3db309e709cd72e3aae184ff2f8b1a7b98f2c7a8..9f2e5cd76376f0f15ed7d93018af2f605eb12e15 100644
|
2021-06-11 12:02:28 +00:00
|
|
|
--- a/src/main/java/net/minecraft/world/entity/PathfinderMob.java
|
|
|
|
+++ b/src/main/java/net/minecraft/world/entity/PathfinderMob.java
|
2021-11-24 18:27:25 +00:00
|
|
|
@@ -48,7 +48,7 @@ public abstract class PathfinderMob extends Mob {
|
2021-06-11 12:02:28 +00:00
|
|
|
float f = this.distanceTo(entity);
|
|
|
|
|
|
|
|
if (this instanceof TamableAnimal && ((TamableAnimal) this).isInSittingPose()) {
|
|
|
|
- if (f > 10.0F) {
|
|
|
|
+ if (f > entity.level.paperConfig.maxLeashDistance) { // Paper
|
|
|
|
this.level.getCraftServer().getPluginManager().callEvent(new EntityUnleashEvent(this.getBukkitEntity(), EntityUnleashEvent.UnleashReason.DISTANCE)); // CraftBukkit
|
|
|
|
this.dropLeash(true, true);
|
|
|
|
}
|
2021-11-24 18:27:25 +00:00
|
|
|
@@ -57,7 +57,7 @@ public abstract class PathfinderMob extends Mob {
|
2021-06-11 12:02:28 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
this.onLeashDistance(f);
|
|
|
|
- if (f > 10.0F) {
|
|
|
|
+ if (f > entity.level.paperConfig.maxLeashDistance) { // Paper
|
|
|
|
this.level.getCraftServer().getPluginManager().callEvent(new EntityUnleashEvent(this.getBukkitEntity(), EntityUnleashEvent.UnleashReason.DISTANCE)); // CraftBukkit
|
|
|
|
this.dropLeash(true, true);
|
|
|
|
this.goalSelector.disableControlFlag(Goal.Flag.MOVE);
|