Skip to content

Commit ea648c5

Browse files
authored
Merge pull request #129 from MultiChat/tenmerge2
Implement changes from v1.9.5 into development branch of v1.10
2 parents 3e0ab64 + 96abb76 commit ea648c5

File tree

6 files changed

+32
-3
lines changed

6 files changed

+32
-3
lines changed
Binary file not shown.

multichat/src/main/java/xyz/olivermartin/multichat/bungee/MultiChat.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ public class MultiChat extends Plugin implements Listener {
5454
public static final String[] ALLOWED_VERSIONS = new String[] {
5555

5656
LATEST_VERSION,
57+
"1.9.5",
5758
"1.9.4",
5859
"1.9.3",
5960
"1.9.2",

multichat/src/main/java/xyz/olivermartin/multichat/local/spigot/LocalSpigotMetaManager.java

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88

99
import net.milkbowl.vault.chat.Chat;
1010
import xyz.olivermartin.multichat.bungee.MultiChatUtil;
11+
import xyz.olivermartin.multichat.local.common.LocalConsoleLogger;
1112
import xyz.olivermartin.multichat.local.common.LocalMetaManager;
1213
import xyz.olivermartin.multichat.local.common.MultiChatLocal;
1314
import xyz.olivermartin.multichat.local.spigot.hooks.LocalSpigotVaultHook;
@@ -72,22 +73,40 @@ public String getWorld(UUID uuid) {
7273
@Override
7374
public String getDisplayName(UUID uuid) {
7475

76+
LocalConsoleLogger logger = MultiChatLocal.getInstance().getConsoleLogger();
77+
7578
Player player = Bukkit.getPlayer(uuid);
7679

7780
if (player == null) return "";
7881

7982
// If MultiChat is setting the display name...
8083
if (MultiChatLocal.getInstance().getDataStore().isSetDisplayName()) {
8184

85+
logger.debug("[LocalSpigotMetaManager] We are setting the display name!");
86+
8287
String displayNameFormat = MultiChatLocal.getInstance().getDataStore().getDisplayNameFormatLastVal();
8388

89+
logger.debug("[LocalSpigotMetaManager] Format = " + displayNameFormat);
90+
logger.debug("[LocalSpigotMetaManager] Format (using & only) = " + displayNameFormat.replaceAll("(?i)§(?=[a-f,0-9,k-o,r,x])", "&"));
91+
8492
// TODO This stuff could be refactored as it is duplicated between Spigot and Sponge
8593
displayNameFormat = displayNameFormat.replaceAll("%NICK%", getNick(uuid));
8694
displayNameFormat = displayNameFormat.replaceAll("%NAME%", player.getName());
8795
displayNameFormat = displayNameFormat.replaceAll("%PREFIX%", getPrefix(uuid));
8896
displayNameFormat = displayNameFormat.replaceAll("%SUFFIX%", getSuffix(uuid));
97+
98+
logger.debug("[LocalSpigotMetaManager] Format with placeholders = " + displayNameFormat);
99+
logger.debug("[LocalSpigotMetaManager] Format with placeholders (using & only) = " + displayNameFormat.replaceAll("(?i)§(?=[a-f,0-9,k-o,r,x])", "&"));
100+
89101
displayNameFormat = MultiChatUtil.reformatRGB(displayNameFormat);
90-
displayNameFormat = displayNameFormat.replaceAll("&(?=[a-f,0-9,k-o,r,x])", "§");
102+
103+
logger.debug("[LocalSpigotMetaManager] Format after reformatting RGB = " + displayNameFormat);
104+
logger.debug("[LocalSpigotMetaManager] Format after reformatting RGB (using & only) = " + displayNameFormat.replaceAll("(?i)§(?=[a-f,0-9,k-o,r,x])", "&"));
105+
106+
displayNameFormat = displayNameFormat.replaceAll("(?i)&(?=[a-f,0-9,k-o,r,x])", "§");
107+
108+
logger.debug("[LocalSpigotMetaManager] FINAL = " + displayNameFormat);
109+
logger.debug("[LocalSpigotMetaManager] FINAL (using & only) = " + displayNameFormat.replaceAll("(?i)§(?=[a-f,0-9,k-o,r,x])", "&"));
91110

92111
// LEGACY HACK
93112
if (MultiChatLocal.getInstance().getDataStore().isLegacy()) {

multichat/src/main/java/xyz/olivermartin/multichat/local/spigot/LocalSpigotPlaceholderManager.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import java.util.UUID;
44

5+
import xyz.olivermartin.multichat.bungee.MultiChatUtil;
56
import xyz.olivermartin.multichat.local.common.LocalPlaceholderManager;
67
import xyz.olivermartin.multichat.local.common.MultiChatLocalPlatform;
78

@@ -14,6 +15,9 @@ public LocalSpigotPlaceholderManager() {
1415
@Override
1516
public String buildChatFormat(UUID uuid, String format) {
1617

18+
// Reformat any hex codes in the format
19+
format = MultiChatUtil.reformatRGB(format);
20+
1721
// RESPECT OTHER PLUGIN'S DISPLAY NAMES FIRST! (Allows for factions etc.)
1822
format = format.replace("%DISPLAYNAME%", "%1$s");
1923

multichat/src/main/java/xyz/olivermartin/multichat/local/sponge/LocalSpongeMetaManager.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ public String getDisplayName(UUID uuid) {
9393
displayNameFormat = displayNameFormat.replaceAll("%PREFIX%", getPrefix(uuid));
9494
displayNameFormat = displayNameFormat.replaceAll("%SUFFIX%", getSuffix(uuid));
9595
displayNameFormat = MultiChatUtil.reformatRGB(displayNameFormat);
96-
displayNameFormat = displayNameFormat.replaceAll("&(?=[a-f,0-9,k-o,r,x])", "§");
96+
displayNameFormat = displayNameFormat.replaceAll("(?i)&(?=[a-f,0-9,k-o,r,x])", "§");
9797

9898
displayNameFormat = MultiChatUtil.approximateHexCodes(displayNameFormat);
9999

multichat/src/main/java/xyz/olivermartin/multichat/local/sponge/LocalSpongePlaceholderManager.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import java.util.UUID;
44

5+
import xyz.olivermartin.multichat.bungee.MultiChatUtil;
56
import xyz.olivermartin.multichat.local.common.LocalPlaceholderManager;
67
import xyz.olivermartin.multichat.local.common.MultiChatLocalPlatform;
78

@@ -13,7 +14,11 @@ public LocalSpongePlaceholderManager() {
1314

1415
@Override
1516
public String buildChatFormat(UUID uuid, String format) {
16-
return processMultiChatPlaceholders(uuid, format).replaceAll("&(?=[a-f,0-9,k-o,r])", "§");
17+
// Reformat any hex codes in the format
18+
format = MultiChatUtil.reformatRGB(format);
19+
format = processMultiChatPlaceholders(uuid, format).replaceAll("(?i)&(?=[a-f,0-9,k-o,r,x])", "§");
20+
format = MultiChatUtil.approximateHexCodes(format);
21+
return format;
1722
}
1823

1924
}

0 commit comments

Comments
 (0)