From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: BillyGalbreath Date: Tue, 4 Sep 2018 15:02:00 -0500 Subject: [PATCH] Expose attack cooldown methods for Player diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java index 1249a7ae8fa8d6ea33cbc276717f1e4553f73b85..af554396fdb25719c158a81ccab76e91f5df2ff5 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -2010,14 +2010,17 @@ public abstract class EntityHuman extends EntityLiving { this.datawatcher.set(EntityHuman.bs, nbttagcompound); } + public float getCooldownPeriod() { return this.eR(); } // Paper - OBFHELPER public float eR() { return (float) (1.0D / this.b(GenericAttributes.ATTACK_SPEED) * 20.0D); } + public float getCooledAttackStrength(float adjustTicks) { return getAttackCooldown(adjustTicks); } // Paper - OBFHELPER public float getAttackCooldown(float f) { return MathHelper.a(((float) this.aA + f) / this.eR(), 0.0F, 1.0F); } + public void resetCooldown() { this.ey(); } // Paper - OBFHELPER public void resetAttackCooldown() { this.aA = 0; } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java index 5bcdcde0ac3b82a85662a5671d1db414b39a8e34..014eac2f7c6f5023ba7f935fe99fc06db0736d82 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1949,6 +1949,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { getInventory().setItemInMainHand(hand); } + // Paper start + public float getCooldownPeriod() { + return getHandle().getCooldownPeriod(); + } + + public float getCooledAttackStrength(float adjustTicks) { + return getHandle().getCooledAttackStrength(adjustTicks); + } + + public void resetCooldown() { + getHandle().resetCooldown(); + } + // Paper end + // Spigot start private final Player.Spigot spigot = new Player.Spigot() {