From 25d548eb23fd76691602ccec7ff191e3e4e81eff Mon Sep 17 00:00:00 2001 From: Doc Date: Wed, 19 Jun 2024 06:45:43 +1000 Subject: [PATCH] #1031: Expose Creeper igniter --- src/main/java/org/bukkit/entity/Creeper.java | 29 ++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/bukkit/entity/Creeper.java b/src/main/java/org/bukkit/entity/Creeper.java index 5793193d..e440b06f 100644 --- a/src/main/java/org/bukkit/entity/Creeper.java +++ b/src/main/java/org/bukkit/entity/Creeper.java @@ -1,5 +1,8 @@ package org.bukkit.entity; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + /** * Represents a Creeper */ @@ -69,7 +72,7 @@ public interface Creeper extends Monster { /** * Makes this Creeper explode instantly. - * + *
* The resulting explosion can be cancelled by an * {@link org.bukkit.event.entity.ExplosionPrimeEvent} and obeys the mob * griefing gamerule. @@ -78,13 +81,35 @@ public interface Creeper extends Monster { /** * Ignites this Creeper, beginning its fuse. - * + *
* The amount of time the Creeper takes to explode will depend on what * {@link #setMaxFuseTicks} is set as. + *
+ * The resulting explosion can be cancelled by an + * {@link org.bukkit.event.entity.ExplosionPrimeEvent} and obeys the mob + * griefing gamerule. * + * @param entity the entity which ignited the creeper + */ + public void ignite(@NotNull Entity entity); + + /** + * Ignites this Creeper, beginning its fuse. + *
+ * The amount of time the Creeper takes to explode will depend on what + * {@link #setMaxFuseTicks} is set as. + *
* The resulting explosion can be cancelled by an * {@link org.bukkit.event.entity.ExplosionPrimeEvent} and obeys the mob * griefing gamerule. */ public void ignite(); + + /** + * Gets the entity which ignited the creeper, if available. + * + * @return the entity which ignited the creeper (if available) or null + */ + @Nullable + public Entity getIgniter(); }