Mirror von
https://github.com/PaperMC/Paper.git
synchronisiert 2024-11-15 12:30:06 +01:00
4104545b11
"It was from a different time before books were as jank as they are now. As time has gone on they've only proven to be worse and worse."
46 Zeilen
2.4 KiB
Diff
46 Zeilen
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 3d16e4a6bf842a209c760fd89f8edf995cabce7d..70815cb7393008f8b02e83e68fe27bb5202d00f6 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
@@ -263,6 +263,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/world/entity/PathfinderMob.java b/src/main/java/net/minecraft/world/entity/PathfinderMob.java
|
|
index 7c82d453388a27b69207d051dec316fc14715e2b..a884940cc576704951d42c6b0d00f5a319297c29 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/PathfinderMob.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/PathfinderMob.java
|
|
@@ -46,7 +46,7 @@ public abstract class PathfinderMob extends Mob {
|
|
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);
|
|
}
|
|
@@ -55,7 +55,7 @@ public abstract class PathfinderMob extends Mob {
|
|
}
|
|
|
|
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);
|