2020-05-06 09:48:49 +00:00
|
|
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
2018-07-15 01:53:17 +00:00
|
|
|
From: Zach Brown <zach.brown@destroystokyo.com>
|
|
|
|
Date: Wed, 6 Apr 2016 01:04:23 -0500
|
|
|
|
Subject: [PATCH] Option to use vanilla per-world scoreboard coloring on names
|
|
|
|
|
2018-11-25 17:16:01 +00:00
|
|
|
This change is basically a bandaid to fix CB's complete and utter lack
|
|
|
|
of support for vanilla scoreboard name modifications.
|
|
|
|
|
|
|
|
In the future, finding a way to merge the vanilla expectations in with
|
|
|
|
bukkit's concept of a display name would be preferable. There was a PR
|
|
|
|
for this on CB at one point but I can't find it. We may need to do this
|
|
|
|
ourselves at some point in the future.
|
2018-07-15 01:53:17 +00:00
|
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
2020-06-28 08:35:41 +00:00
|
|
|
index fe2c8001897dc6d66ce0d24ddb1a5d3b79810294..538e6751f3bda77ba32256158d2a6a25025b360c 100644
|
2018-07-15 01:53:17 +00:00
|
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
2020-06-28 08:35:41 +00:00
|
|
|
@@ -247,4 +247,9 @@ public class PaperWorldConfig {
|
2019-04-27 03:05:36 +00:00
|
|
|
grassUpdateRate = Math.max(0, getInt("grass-spread-tick-rate", grassUpdateRate));
|
|
|
|
log("Grass Spread Tick Rate: " + grassUpdateRate);
|
2018-07-15 01:53:17 +00:00
|
|
|
}
|
|
|
|
+
|
|
|
|
+ public boolean useVanillaScoreboardColoring;
|
|
|
|
+ private void useVanillaScoreboardColoring() {
|
|
|
|
+ useVanillaScoreboardColoring = getBoolean("use-vanilla-world-scoreboard-name-coloring", false);
|
|
|
|
+ }
|
|
|
|
}
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
2020-06-30 05:20:29 +00:00
|
|
|
index e65aa13ed4d751c7eec576b75496683d8b95d06f..c865aab4f56d6b0544ef66a35ebf58e48c8afbb8 100644
|
2018-07-15 01:53:17 +00:00
|
|
|
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
|
|
|
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
2020-06-28 01:54:05 +00:00
|
|
|
@@ -1693,7 +1693,16 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
2018-07-15 01:53:17 +00:00
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
- s = String.format(event.getFormat(), event.getPlayer().getDisplayName(), event.getMessage());
|
|
|
|
+ // Paper Start - (Meh) Support for vanilla world scoreboard name coloring
|
|
|
|
+ String displayName = event.getPlayer().getDisplayName();
|
|
|
|
+ if (this.player.getWorld().paperConfig.useVanillaScoreboardColoring) {
|
2019-12-11 02:43:21 +00:00
|
|
|
+ IChatBaseComponent nameFromTeam = ScoreboardTeam.a(this.player.getScoreboardTeam(), ((CraftPlayer) player).getHandle().getDisplayName());
|
2018-07-25 08:58:03 +00:00
|
|
|
+ // Explicitly add a RESET here, vanilla uses components for this now...
|
2020-06-02 03:15:47 +00:00
|
|
|
+ displayName = CraftChatMessage.fromComponent(nameFromTeam) + org.bukkit.ChatColor.RESET;
|
2018-07-15 01:53:17 +00:00
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ s = String.format(event.getFormat(), displayName, event.getMessage());
|
|
|
|
+ // Paper end
|
|
|
|
minecraftServer.console.sendMessage(s);
|
|
|
|
if (((LazyPlayerSet) event.getRecipients()).isLazy()) {
|
|
|
|
for (Object recipient : minecraftServer.getPlayerList().players) {
|