diff options
Diffstat (limited to 'src/main/java/org/bukkit/Bukkit.java')
-rw-r--r-- | src/main/java/org/bukkit/Bukkit.java | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java index 5a4654fd..d16357ea 100644 --- a/src/main/java/org/bukkit/Bukkit.java +++ b/src/main/java/org/bukkit/Bukkit.java @@ -19,6 +19,7 @@ import org.bukkit.boss.BarColor; import org.bukkit.boss.BarFlag; import org.bukkit.boss.BarStyle; import org.bukkit.boss.BossBar; +import org.bukkit.boss.KeyedBossBar; import org.bukkit.command.CommandException; import org.bukkit.command.CommandSender; import org.bukkit.command.ConsoleCommandSender; @@ -1195,6 +1196,80 @@ public final class Bukkit { } /** + * Creates a boss bar instance to display to players. The progress defaults + * to 1.0. + * <br> + * This instance is added to the persistent storage of the server and will + * be editable by commands and restored after restart. + * + * @param key the key of the boss bar that is used to access the boss bar + * @param title the title of the boss bar + * @param color the color of the boss bar + * @param style the style of the boss bar + * @param flags an optional list of flags to set on the boss bar + * @return the created boss bar + */ + public static KeyedBossBar createBossBar(NamespacedKey key, String title, BarColor color, BarStyle style, BarFlag... flags) { + return server.createBossBar(key, title, color, style, flags); + } + + /** + * Gets an unmodifiable iterator through all persistent bossbars. + * <ul> + * <li><b>not</b> bound to a {@link org.bukkit.entity.Boss}</li> + * <li> + * <b>not</b> created using + * {@link #createBossBar(String, BarColor, BarStyle, BarFlag...)} + * </li> + * </ul> + * + * e.g. bossbars created using the bossbar command + * + * @return a bossbar iterator + */ + public static Iterator<KeyedBossBar> getBossBars() { + return server.getBossBars(); + } + + /** + * Gets the {@link KeyedBossBar} specified by this key. + * <ul> + * <li><b>not</b> bound to a {@link org.bukkit.entity.Boss}</li> + * <li> + * <b>not</b> created using + * {@link #createBossBar(String, BarColor, BarStyle, BarFlag...)} + * </li> + * </ul> + * + * e.g. bossbars created using the bossbar command + * + * @param key unique bossbar key + * @return bossbar or null if not exists + */ + public static KeyedBossBar getBossBar(NamespacedKey key) { + return server.getBossBar(key); + } + + /** + * Removes a {@link KeyedBossBar} specified by this key. + * <ul> + * <li><b>not</b> bound to a {@link org.bukkit.entity.Boss}</li> + * <li> + * <b>not</b> created using + * {@link #createBossBar(String, BarColor, BarStyle, BarFlag...)} + * </li> + * </ul> + * + * e.g. bossbars created using the bossbar command + * + * @param key unique bossbar key + * @return true if removal succeeded or false + */ + public static boolean removeBossBar(NamespacedKey key) { + return server.removeBossBar(key); + } + + /** * Gets an entity on the server by its UUID * * @param uuid the UUID of the entity |