From d1b40a9a13e0e0fc5843da8355efde98ae99cecb Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Fri, 19 Apr 2019 12:41:19 -0500 Subject: [PATCH] Mob Spawner API Enhancements --- .../main/java/org/bukkit/spawner/Spawner.java | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/paper-api/src/main/java/org/bukkit/spawner/Spawner.java b/paper-api/src/main/java/org/bukkit/spawner/Spawner.java index c595c44698..640767bd16 100644 --- a/paper-api/src/main/java/org/bukkit/spawner/Spawner.java +++ b/paper-api/src/main/java/org/bukkit/spawner/Spawner.java @@ -107,4 +107,30 @@ public interface Spawner extends BaseSpawner { * @param maxNearbyEntities the maximum number of nearby, similar, entities */ public void setMaxNearbyEntities(int maxNearbyEntities); + + // Paper start + /** + * Check if spawner is activated (a player is close enough) + * + * @return True if a player is close enough to activate it + */ + public boolean isActivated(); + + /** + * Resets the spawn delay timer within the min/max range + */ + public void resetTimer(); + + /** + * Sets the {@link EntityType} to {@link EntityType#ITEM} and sets the data to the given + * {@link org.bukkit.inventory.ItemStack ItemStack}. + *

+ * {@link #setSpawnCount(int)} does not dictate the amount of items in the stack spawned, but rather how many + * stacks should be spawned. + * + * @param itemStack The item to spawn. Must not {@link org.bukkit.Material#isAir be air}. + * @see #setSpawnedType(EntityType) + */ + void setSpawnedItem(org.bukkit.inventory.@org.jetbrains.annotations.NotNull ItemStack itemStack); + // Paper end }