From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: mrapple Date: Sun, 25 Nov 2012 13:47:27 -0600 Subject: [PATCH] Add methods for working with arrows stuck in living entities Upstream added methods for this so the original methods are now deprecated diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java index 7879082361d0f5ef8a0f15547ed7ce990b41acc0..1fdbfb14eaef0550363c5dd9793f933d8ece16ac 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java @@ -217,12 +217,26 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource */ public int getArrowsInBody(); + // Paper start + /** + * Set the amount of arrows in the entity's body. + *

+ * Does not fire the {@link org.bukkit.event.entity.ArrowBodyCountChangeEvent}. + * + * @param count amount of arrows in entity's body + */ + default void setArrowsInBody(final int count) { + this.setArrowsInBody(count, false); + } + // Paper end + /** * Set the amount of arrows in the entity's body. * * @param count amount of arrows in entity's body + * @param fireEvent whether to fire the {@link org.bukkit.event.entity.ArrowBodyCountChangeEvent} event */ - public void setArrowsInBody(int count); + void setArrowsInBody(int count, boolean fireEvent); // Paper /** * Returns the living entity's current maximum no damage ticks. @@ -749,4 +763,24 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource * @return Whether the entity is invisible */ public boolean isInvisible(); + + // Paper start + /** + * Get the number of arrows stuck in this entity + * @return Number of arrows stuck + * @deprecated use {@link #getArrowsInBody()} + */ + @Deprecated + int getArrowsStuck(); + + /** + * Set the number of arrows stuck in this entity + * + * @param arrows Number of arrows to stick in this entity + * @deprecated use {@link #setArrowsInBody(int, boolean)}. This method previously fired {@link org.bukkit.event.entity.ArrowBodyCountChangeEvent} so if + * you want to retain exact functionality, pass {@code true} for {@code fireEvent}. + */ + @Deprecated + void setArrowsStuck(int arrows); + // Paper end }