From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 29 Jun 2018 00:21:28 -0400
Subject: [PATCH] LivingEntity Hand Raised/Item Use API

How long an entity has raised hands to charge an attack or use an item

diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index dea64f96139fbf4e1ff860b75f2005169a55c395..5194da5a141718390a317d75b31205f951cec7a2 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -717,5 +717,30 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
     public void setShieldBlockingDelay(int delay) {
         getHandle().setShieldBlockingDelay(delay);
     }
+
+    @Override
+    public ItemStack getActiveItem() {
+        return getHandle().getUseItem().asBukkitMirror();
+    }
+
+    @Override
+    public int getItemUseRemainingTime() {
+        return getHandle().getUseItemRemainingTicks();
+    }
+
+    @Override
+    public int getHandRaisedTime() {
+        return getHandle().getTicksUsingItem();
+    }
+
+    @Override
+    public boolean isHandRaised() {
+        return getHandle().isUsingItem();
+    }
+
+    @Override
+    public org.bukkit.inventory.EquipmentSlot getHandRaised() {
+        return getHandle().getUsedItemHand() == net.minecraft.world.InteractionHand.MAIN_HAND ? org.bukkit.inventory.EquipmentSlot.HAND : org.bukkit.inventory.EquipmentSlot.OFF_HAND;
+    }
     // Paper end
 }