From fe63b8897fc572deccb1ac609d24fe9877f0407e Mon Sep 17 00:00:00 2001 From: Bukkit/Spigot Date: Sat, 5 Oct 2019 17:16:41 +1000 Subject: [PATCH] SPIGOT-5353: Expand explosion API by adding source entity By: md_5 --- paper-api/src/main/java/org/bukkit/World.java | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/paper-api/src/main/java/org/bukkit/World.java b/paper-api/src/main/java/org/bukkit/World.java index 0f93b251a7..ffaf8f5504 100644 --- a/paper-api/src/main/java/org/bukkit/World.java +++ b/paper-api/src/main/java/org/bukkit/World.java @@ -990,6 +990,21 @@ public interface World extends PluginMessageRecipient, Metadatable { */ public boolean createExplosion(double x, double y, double z, float power, boolean setFire, boolean breakBlocks); + /** + * Creates explosion at given coordinates with given power and optionally + * setting blocks on fire or breaking blocks. + * + * @param x X coordinate + * @param y Y coordinate + * @param z Z coordinate + * @param power The power of explosion, where 4F is TNT + * @param setFire Whether or not to set blocks on fire + * @param breakBlocks Whether or not to have blocks be destroyed + * @param source the source entity, used for tracking damage + * @return false if explosion was canceled, otherwise true + */ + public boolean createExplosion(double x, double y, double z, float power, boolean setFire, boolean breakBlocks, @Nullable Entity source); + /** * Creates explosion at given coordinates with given power * @@ -1010,6 +1025,31 @@ public interface World extends PluginMessageRecipient, Metadatable { */ public boolean createExplosion(@NotNull Location loc, float power, boolean setFire); + /** + * Creates explosion at given coordinates with given power and optionally + * setting blocks on fire or breaking blocks. + * + * @param loc Location to blow up + * @param power The power of explosion, where 4F is TNT + * @param setFire Whether or not to set blocks on fire + * @param breakBlocks Whether or not to have blocks be destroyed + * @return false if explosion was canceled, otherwise true + */ + public boolean createExplosion(@NotNull Location loc, float power, boolean setFire, boolean breakBlocks); + + /** + * Creates explosion at given coordinates with given power and optionally + * setting blocks on fire or breaking blocks. + * + * @param loc Location to blow up + * @param power The power of explosion, where 4F is TNT + * @param setFire Whether or not to set blocks on fire + * @param breakBlocks Whether or not to have blocks be destroyed + * @param source the source entity, used for tracking damage + * @return false if explosion was canceled, otherwise true + */ + public boolean createExplosion(@NotNull Location loc, float power, boolean setFire, boolean breakBlocks, @Nullable Entity source); + /** * Gets the {@link Environment} type of this world *