Use title packet for actionbar methods (#3959)

This commit is contained in:
Nassim
2020-07-22 10:01:35 +02:00
committed by GitHub
parent 2e11235d1d
commit 0901ffd046
18 changed files with 73 additions and 60 deletions

View File

@@ -18,17 +18,23 @@ index 275c1d2d1eb2649de9a9b5aece6e88c21362efba..d72ba7f76c42fd525a5b59a999a0c08e
public static <K, V> Collector<Entry<? extends K, ? extends V>, ?, Map<K, V>> a() {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 9e9d054ed9d345eb7ab76ad9c3526889aeb220e3..e7c42fb4fd1235a934c16f4cccc1b1a66b3672a0 100644
index 9e9d054ed9d345eb7ab76ad9c3526889aeb220e3..b03d7747ca582c212534b061369564daa74f5022 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -221,6 +221,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -221,6 +221,24 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
// Paper start
+ @Override
+ public void sendActionBar(BaseComponent[] message) {
+ if (getHandle().playerConnection == null) return;
+ getHandle().playerConnection.sendPacket(new PacketPlayOutTitle(PacketPlayOutTitle.EnumTitleAction.ACTIONBAR, message, -1, -1, -1));
+ }
+
+ @Override
+ public void sendActionBar(String message) {
+ if (getHandle().playerConnection == null || message == null || message.isEmpty()) return;
+ getHandle().playerConnection.sendPacket(new PacketPlayOutChat(new net.minecraft.server.ChatComponentText(message), net.minecraft.server.ChatMessageType.GAME_INFO, SystemUtils.getNullUUID()));
+ getHandle().playerConnection.sendPacket(new PacketPlayOutTitle(PacketPlayOutTitle.EnumTitleAction.ACTIONBAR, CraftChatMessage.fromStringOrNull(message)));
+ }
+
+ @Override