Closes #1197 While this really undoes a lot of the desired performance gains avoiding chunk lookups, we sadly have to accept this because we are seeing lots of bugs with entities.
56 lines
2.9 KiB
Diff
56 lines
2.9 KiB
Diff
From e90027b47608f6153ad3d0321ec2799077d3b0b7 Mon Sep 17 00:00:00 2001
|
|
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
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
index abc1aabdd..6ea608ba9 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
@@ -288,4 +288,9 @@ public class PaperWorldConfig {
|
|
keepLoadedRange = (short) (getInt("keep-spawn-loaded-range", Math.min(spigotConfig.viewDistance, 8)) * 16);
|
|
log( "Keep Spawn Loaded Range: " + (keepLoadedRange/16));
|
|
}
|
|
+
|
|
+ public boolean useVanillaScoreboardColoring;
|
|
+ private void useVanillaScoreboardColoring() {
|
|
+ useVanillaScoreboardColoring = getBoolean("use-vanilla-world-scoreboard-name-coloring", false);
|
|
+ }
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
|
index 89ea217b9..437ae2fa3 100644
|
|
--- a/src/main/java/net/minecraft/server/Entity.java
|
|
+++ b/src/main/java/net/minecraft/server/Entity.java
|
|
@@ -2103,6 +2103,7 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
|
|
return this.getFlag(5);
|
|
}
|
|
|
|
+ @Nullable public ScoreboardTeamBase getTeam() { return this.aY(); } // Paper - OBFHELPER
|
|
@Nullable
|
|
public ScoreboardTeamBase aY() {
|
|
if (!this.world.paperConfig.nonPlayerEntitiesOnScoreboards && !(this instanceof EntityHuman)) { return null; } // Paper
|
|
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
|
index 7c708a0de..9eb7b012f 100644
|
|
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
|
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
|
@@ -1390,7 +1390,14 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
|
|
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) {
|
|
+ displayName = ScoreboardTeam.getPlayerDisplayName(this.player.getTeam(), player.getDisplayName());
|
|
+ }
|
|
+
|
|
+ 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) {
|
|
--
|
|
2.18.0
|
|
|