From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Tue, 29 Jun 2021 21:37:40 -0500 Subject: [PATCH] Component related conveniences diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java index c856b38b49969f6eb0b2a82bff6d80967857643d..ed8b90e90dc4878bce9eecbbf944f5264630f6bb 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -1693,6 +1693,26 @@ public class ServerPlayer extends Player { } // CraftBukkit end + // Purpur start + public void sendActionBarMessage(@Nullable String message) { + if (message != null) { + sendActionBarMessage(net.kyori.adventure.text.minimessage.MiniMessage.get().parse(message)); + } + } + + public void sendActionBarMessage(@Nullable net.kyori.adventure.text.Component message) { + if (message != null) { + sendActionBarMessage(io.papermc.paper.adventure.PaperAdventure.asVanilla(message)); + } + } + + public void sendActionBarMessage(@Nullable Component message) { + if (message != null) { + displayClientMessage(message, true); + } + } + // Purpur end + @Override public void displayClientMessage(Component message, boolean actionBar) { this.sendMessage(message, actionBar ? ChatType.GAME_INFO : ChatType.CHAT, Util.NIL_UUID); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java index 24111c47145b296c442982affdbfe045c52386e1..986db30e5f8313d57345e16a793a22b426e2ecfa 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1373,6 +1373,62 @@ public abstract class PlayerList { } // CraftBukkit end + // Purpur start + public void broadcast(@Nullable String message) { + broadcast(message, Util.NIL_UUID); + } + + public void broadcast(@Nullable String message, ChatType type) { + broadcast(message, type, Util.NIL_UUID); + } + + public void broadcast(@Nullable String message, UUID sender) { + broadcast(message, ChatType.SYSTEM, sender); + } + + public void broadcast(@Nullable String message, ChatType type, UUID sender) { + if (message != null) { + broadcast(net.kyori.adventure.text.minimessage.MiniMessage.get().parse(message), type, sender); + } + } + + public void broadcast(@Nullable net.kyori.adventure.text.Component message) { + broadcast(message, Util.NIL_UUID); + } + + public void broadcast(@Nullable net.kyori.adventure.text.Component message, ChatType type) { + broadcast(message, type, Util.NIL_UUID); + } + + public void broadcast(@Nullable net.kyori.adventure.text.Component message, UUID sender) { + broadcast(message, ChatType.SYSTEM, sender); + } + + public void broadcast(@Nullable net.kyori.adventure.text.Component message, ChatType type, UUID sender) { + if (message != null) { + broadcast(io.papermc.paper.adventure.PaperAdventure.asVanilla(message), type, sender); + } + } + + public void broadcast(@Nullable Component message) { + broadcast(message, Util.NIL_UUID); + } + + public void broadcast(@Nullable Component message, ChatType type) { + broadcast(message, type, Util.NIL_UUID); + } + + public void broadcast(@Nullable Component message, UUID sender) { + broadcast(message, ChatType.SYSTEM, sender); + } + + public void broadcast(@Nullable Component message, ChatType type, UUID sender) { + if (message != null) { + broadcastMessage(message, type, sender); + } + } + // Purpur end + public void broadcastMessage(Component message, ChatType type, UUID sender) { this.server.sendMessage(message, sender); Iterator iterator = this.players.iterator(); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java index 3febcc7e88b74d4bdb45e633fdaa9d3313a6ae0b..23c17a1ebb63290168b2b67f2dbeb7741c368e7b 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -3514,6 +3514,34 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i return SlotAccess.NULL; } + // Purpur Start + public void sendMessage(@Nullable String message) { + sendMessage(message, Util.NIL_UUID); + } + + public void sendMessage(@Nullable String message, UUID sender) { + if (org.apache.commons.lang3.StringUtils.isNotEmpty(message)) { + sendMessage(net.kyori.adventure.text.minimessage.MiniMessage.get().parse(message), sender); + } + } + + public void sendMessage(@Nullable net.kyori.adventure.text.Component message) { + sendMessage(message, Util.NIL_UUID); + } + + public void sendMessage(@Nullable net.kyori.adventure.text.Component message, UUID sender) { + if (message != null) { + sendMessage(io.papermc.paper.adventure.PaperAdventure.asVanilla(message), sender); + } + } + + public void sendMessage(@Nullable Component message) { + if (message != null) { + sendMessage(message, Util.NIL_UUID); + } + } + // Purpur end + @Override public void sendMessage(Component message, UUID sender) {}