diff options
Diffstat (limited to 'Spigot-Server-Patches/0267-Make-shield-blocking-delay-configurable.patch')
-rw-r--r-- | Spigot-Server-Patches/0267-Make-shield-blocking-delay-configurable.patch | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/Spigot-Server-Patches/0267-Make-shield-blocking-delay-configurable.patch b/Spigot-Server-Patches/0267-Make-shield-blocking-delay-configurable.patch new file mode 100644 index 0000000000..35340f8e7d --- /dev/null +++ b/Spigot-Server-Patches/0267-Make-shield-blocking-delay-configurable.patch @@ -0,0 +1,73 @@ +From 43309180bebc7a1df2dd169fed98dd2f02737f59 Mon Sep 17 00:00:00 2001 +From: BillyGalbreath <[email protected]> +Date: Sat, 16 Jun 2018 01:18:16 -0500 +Subject: [PATCH] Make shield blocking delay configurable + + +diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +index 4727ac6eb5..47f8dfcc41 100644 +--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java ++++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +@@ -442,4 +442,9 @@ public class PaperWorldConfig { + log("Villages can load chunks - Warning this can cause intense TPS loss. Strongly consider disabling this."); + } + } ++ ++ public int shieldBlockingDelay = 5; ++ private void shieldBlockingDelay() { ++ shieldBlockingDelay = getInt("game-mechanics.shield-blocking-delay", 5); ++ } + } +diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java +index 02fcfc449c..deb50b84f7 100644 +--- a/src/main/java/net/minecraft/server/EntityLiving.java ++++ b/src/main/java/net/minecraft/server/EntityLiving.java +@@ -2701,7 +2701,7 @@ public abstract class EntityLiving extends Entity { + if (this.isHandRaised() && !this.activeItem.isEmpty()) { + Item item = this.activeItem.getItem(); + +- return item.d(this.activeItem) != EnumAnimation.BLOCK ? false : item.c(this.activeItem) - this.bu >= 5; ++ return item.d(this.activeItem) != EnumAnimation.BLOCK ? false : item.c(this.activeItem) - this.bu >= getShieldBlockingDelay(); // Paper - shieldBlockingDelay + } else { + return false; + } +@@ -2789,4 +2789,16 @@ public abstract class EntityLiving extends Entity { + public boolean df() { + return true; + } ++ ++ // Paper start ++ public int shieldBlockingDelay = world.paperConfig.shieldBlockingDelay; ++ ++ public int getShieldBlockingDelay() { ++ return shieldBlockingDelay; ++ } ++ ++ public void setShieldBlockingDelay(int shieldBlockingDelay) { ++ this.shieldBlockingDelay = shieldBlockingDelay; ++ } ++ // Paper end + } +diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +index 2f96842bb9..8e65bfc78e 100644 +--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java ++++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +@@ -558,5 +558,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { + public void setArrowsStuck(int arrows) { + getHandle().setArrowCount(arrows); + } ++ ++ @Override ++ public int getShieldBlockingDelay() { ++ return getHandle().getShieldBlockingDelay(); ++ } ++ ++ @Override ++ public void setShieldBlockingDelay(int delay) { ++ getHandle().setShieldBlockingDelay(delay); ++ } + // Paper end + } +-- +2.21.0 + |