--- a/net/minecraft/server/EntityPanda.java
+++ b/net/minecraft/server/EntityPanda.java
@@ -9,6 +9,8 @@
 import java.util.function.Predicate;
 import javax.annotation.Nullable;
 
+import org.bukkit.event.entity.EntityTargetEvent; // CraftBukkit
+
 public class EntityPanda extends EntityAnimal {
 
     private static final DataWatcherObject<Integer> bx = DataWatcher.a(EntityPanda.class, DataWatcherRegistry.b);
@@ -448,7 +450,7 @@
 
     @Override
     protected void a(EntityItem entityitem) {
-        if (this.getEquipment(EnumItemSlot.MAINHAND).isEmpty() && EntityPanda.PICKUP_PREDICATE.test(entityitem)) {
+        if (!org.bukkit.craftbukkit.event.CraftEventFactory.callEntityPickupItemEvent(this, entityitem, 0, !(this.getEquipment(EnumItemSlot.MAINHAND).isEmpty() && EntityPanda.PICKUP_PREDICATE.test(entityitem))).isCancelled()) { // CraftBukkit
             ItemStack itemstack = entityitem.getItemStack();
 
             this.setSlot(EnumItemSlot.MAINHAND, itemstack);
@@ -672,7 +674,7 @@
         @Override
         protected void a(EntityInsentient entityinsentient, EntityLiving entityliving) {
             if (entityinsentient instanceof EntityPanda && ((EntityPanda) entityinsentient).em()) {
-                entityinsentient.setGoalTarget(entityliving);
+                entityinsentient.setGoalTarget(entityliving, EntityTargetEvent.TargetReason.TARGET_ATTACKED_ENTITY, true); // CraftBukkit
             }
 
         }
@@ -776,9 +778,9 @@
         private final EntityPanda i;
 
         public c(EntityPanda entitypanda, Class<T> oclass, float f, double d0, double d1) {
-            Predicate predicate = IEntitySelector.f;
+            // Predicate predicate = IEntitySelector.f; // CraftBukkit - decompile error
 
-            super(entitypanda, oclass, f, d0, d1, predicate::test);
+            super(entitypanda, oclass, f, d0, d1, IEntitySelector.f::test); // CraftBukkit - decompile error
             this.i = entitypanda;
         }
 
