diff --git a/paper-api/src/main/java/org/bukkit/entity/Animals.java b/paper-api/src/main/java/org/bukkit/entity/Animals.java index 6e214bf487..12a2ab9022 100644 --- a/paper-api/src/main/java/org/bukkit/entity/Animals.java +++ b/paper-api/src/main/java/org/bukkit/entity/Animals.java @@ -22,4 +22,30 @@ public interface Animals extends Ageable { * @param uuid new uuid, or null */ void setBreedCause(UUID uuid); + + /** + * Get whether or not this entity is in love mode and will produce + * offspring with another entity in love mode. Will return true if + * and only if {@link #getLoveModeTicks()} is greater than 0. + * + * @return true if in love mode, false otherwise + */ + boolean isLoveMode(); + + /** + * Get the amount of ticks remaining for this entity in love mode. + * If the entity is not in love mode, 0 will be returned. + * + * @return the remaining love mode ticks + */ + int getLoveModeTicks(); + + /** + * Set the amount of ticks for which this entity should be in love mode. + * Setting the love mode ticks to 600 is the equivalent of a player + * feeding the entity their breeding item of choice. + * + * @param ticks the love mode ticks. Must be positive + */ + void setLoveModeTicks(int ticks); }