355b1cbaf6
This intends to give plugin developers more control over explosions created using the World#createExplosion method, specifically by adding the option for explosions to damage the explosion cause (not the default behavior, and previously impossible to do, as far as I know). This is done by overloading existing methods with an extra `excludeSourceFromDamage` parameter. Co-authored-by: Bjarne Koll <lynxplay101@gmail.com>
62 lines
1.9 KiB
Diff
62 lines
1.9 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Jake Potrebic <jake.m.potrebic@gmail.com>
|
|
Date: Fri, 4 Mar 2022 09:46:40 -0800
|
|
Subject: [PATCH] More Raid API
|
|
|
|
|
|
diff --git a/src/main/java/org/bukkit/Raid.java b/src/main/java/org/bukkit/Raid.java
|
|
index 983a8c20a06d2b509602b27f49c090598b8ecc42..fa98599e3eee37bf68f0e9813497c718f457485c 100644
|
|
--- a/src/main/java/org/bukkit/Raid.java
|
|
+++ b/src/main/java/org/bukkit/Raid.java
|
|
@@ -9,7 +9,7 @@ import org.jetbrains.annotations.NotNull;
|
|
/**
|
|
* Represents a raid event.
|
|
*/
|
|
-public interface Raid {
|
|
+public interface Raid extends org.bukkit.persistence.PersistentDataHolder { // Paper
|
|
|
|
/**
|
|
* Get whether this raid started.
|
|
@@ -131,4 +131,20 @@ public interface Raid {
|
|
*/
|
|
STOPPED;
|
|
}
|
|
+
|
|
+ // Paper start
|
|
+ /**
|
|
+ * Gets the id of this raid.
|
|
+ *
|
|
+ * @return the raid id
|
|
+ */
|
|
+ int getId();
|
|
+
|
|
+ /**
|
|
+ * Get the boss bar to be displayed for this raid.
|
|
+ *
|
|
+ * @return the boss bar
|
|
+ */
|
|
+ org.bukkit.boss.@NotNull BossBar getBossBar();
|
|
+ // Paper end
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
|
|
index 16570c3c7ed5e7ad25f20c1034f7b966d6e694da..adcd8161846b06fd1a7895750f98b629204a8406 100644
|
|
--- a/src/main/java/org/bukkit/World.java
|
|
+++ b/src/main/java/org/bukkit/World.java
|
|
@@ -4127,6 +4127,17 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient
|
|
@Nullable
|
|
public Raid locateNearestRaid(@NotNull Location location, int radius);
|
|
|
|
+ // Paper start - more Raid API
|
|
+ /**
|
|
+ * Get a raid with the specific id from {@link Raid#getId}
|
|
+ * from this world.
|
|
+ *
|
|
+ * @param id the id of the raid
|
|
+ * @return the raid or null if none with that id
|
|
+ */
|
|
+ @Nullable Raid getRaid(int id);
|
|
+ // Paper end - more Raid API
|
|
+
|
|
/**
|
|
* Gets all raids that are going on over this world.
|
|
*
|