aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/server/0122-String-based-Action-Bar-API.patch
diff options
context:
space:
mode:
authorJake <[email protected]>2021-11-23 17:09:49 -0800
committerMiniDigger | Martin <[email protected]>2021-11-30 19:26:33 +0100
commite481692afdb08c4486866bc856919c585d6d9646 (patch)
tree66774ecbddc504c3b0fb9460139b6dc8c367d03d /patches/server/0122-String-based-Action-Bar-API.patch
parent7665ae86d65b964822b307c085fc86c0fcc442f2 (diff)
downloadPaper-e481692afdb08c4486866bc856919c585d6d9646.tar.gz
Paper-e481692afdb08c4486866bc856919c585d6d9646.zip
move extra plugins patch up & more work
Diffstat (limited to 'patches/server/0122-String-based-Action-Bar-API.patch')
-rw-r--r--patches/server/0122-String-based-Action-Bar-API.patch58
1 files changed, 58 insertions, 0 deletions
diff --git a/patches/server/0122-String-based-Action-Bar-API.patch b/patches/server/0122-String-based-Action-Bar-API.patch
new file mode 100644
index 0000000000..48f4b589c7
--- /dev/null
+++ b/patches/server/0122-String-based-Action-Bar-API.patch
@@ -0,0 +1,58 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Aikar <[email protected]>
+Date: Tue, 27 Dec 2016 15:02:42 -0500
+Subject: [PATCH] String based Action Bar API
+
+
+diff --git a/src/main/java/net/minecraft/network/protocol/game/ClientboundSetActionBarTextPacket.java b/src/main/java/net/minecraft/network/protocol/game/ClientboundSetActionBarTextPacket.java
+index 32ef3edebe94a2014168b7e438752a80b2687e5f..ab6c58eed6707ab7b0aa3e7549a871ad7dfad87f 100644
+--- a/src/main/java/net/minecraft/network/protocol/game/ClientboundSetActionBarTextPacket.java
++++ b/src/main/java/net/minecraft/network/protocol/game/ClientboundSetActionBarTextPacket.java
+@@ -7,6 +7,7 @@ import net.minecraft.network.protocol.Packet;
+ public class ClientboundSetActionBarTextPacket implements Packet<ClientGamePacketListener> {
+ private final Component text;
+ public net.kyori.adventure.text.Component adventure$text; // Paper
++ public net.md_5.bungee.api.chat.BaseComponent[] components; // Paper
+
+ public ClientboundSetActionBarTextPacket(Component message) {
+ this.text = message;
+@@ -21,6 +22,8 @@ public class ClientboundSetActionBarTextPacket implements Packet<ClientGamePacke
+ // Paper start
+ if (this.adventure$text != null) {
+ buf.writeComponent(this.adventure$text);
++ } else if (this.components != null) {
++ buf.writeComponent(this.components);
+ } else
+ // Paper end
+ buf.writeComponent(this.text);
+diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+index a880c6434f6dbbc8ce9f82315ba906090c7240a1..d475f9a3eb3b4e3c0ed78bef1d233dde26c391b9 100644
+--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
++++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+@@ -255,6 +255,26 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
+ }
+
+ // Paper start
++ @Override
++ public void sendActionBar(BaseComponent[] message) {
++ if (getHandle().connection == null) return;
++ net.minecraft.network.protocol.game.ClientboundSetActionBarTextPacket packet = new net.minecraft.network.protocol.game.ClientboundSetActionBarTextPacket((net.minecraft.network.chat.Component) null);
++ packet.components = message;
++ getHandle().connection.send(packet);
++ }
++
++ @Override
++ public void sendActionBar(String message) {
++ if (getHandle().connection == null || message == null || message.isEmpty()) return;
++ getHandle().connection.send(new net.minecraft.network.protocol.game.ClientboundSetActionBarTextPacket(CraftChatMessage.fromStringOrNull(message)));
++ }
++
++ @Override
++ public void sendActionBar(char alternateChar, String message) {
++ if (message == null || message.isEmpty()) return;
++ sendActionBar(org.bukkit.ChatColor.translateAlternateColorCodes(alternateChar, message));
++ }
++
+ @Override
+ public void setPlayerListHeaderFooter(BaseComponent[] header, BaseComponent[] footer) {
+ if (header != null) {