Skip to content

Commit 0f1ccb1

Browse files
committed
Fix json serialize bug.
1 parent 8c41ce9 commit 0f1ccb1

File tree

3 files changed

+10
-9
lines changed

3 files changed

+10
-9
lines changed

chat-formatter/src/com/eternalcode/formatter/ChatController.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import net.kyori.adventure.text.Component;
1212
import net.kyori.adventure.text.minimessage.MiniMessage;
1313
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
14+
import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver;
1415
import net.kyori.adventure.text.serializer.gson.GsonComponentSerializer;
1516
import org.bukkit.entity.Player;
1617
import org.bukkit.event.EventHandler;
@@ -72,11 +73,11 @@ void onChat(AsyncPlayerChatEvent event) {
7273
String withMessage = String.format(withFormat, player.getDisplayName(), "<message>");
7374
String decolor = Legacy.deColor(withMessage);
7475

75-
String shadowed = player.hasPermission("eternalmc.chat.color")
76-
? event.getMessage()
77-
: Legacy.shadow(event.getMessage());
76+
TagResolver.Single shadowed = player.hasPermission("eternalmc.chat.color")
77+
? Placeholder.parsed("message", event.getMessage())
78+
: Placeholder.unparsed("message", Legacy.shadow(event.getMessage()));
7879

79-
Component message = miniMessage.deserialize(decolor, Placeholder.unparsed("message", shadowed));
80+
Component message = miniMessage.deserialize(decolor, shadowed);
8081

8182
Set<Player> recipients = event.getRecipients();
8283

chat-formatter/src/com/eternalcode/formatter/preparatory/ChatPreparatoryService.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ public boolean isEmpty() {
1717
return this.preparations.isEmpty();
1818
}
1919

20-
public ChatPrepareResult prepare(Player player, Set<Player> receivers, String json, String message) {
21-
ChatPrepareResult result = new ChatPrepareResult(json, receivers, false);
20+
public ChatPrepareResult prepare(Player player, Set<Player> receivers, String jsonFormat, String message) {
21+
ChatPrepareResult result = new ChatPrepareResult(jsonFormat, receivers, false);
2222

2323
for (ChatPreparatory preparation : preparations) {
2424
result = preparation.prepare(player, result.getReceivers(), result.getRawMessage(), message, result.isCancelled());

paper-support/src/com/eternalcode/formatter/paper/ChatPaperPreparatory.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,9 @@ class ChatPaperPreparatory implements ChatPreparatory {
2424
}
2525

2626
@Override
27-
public ChatPrepareResult prepare(Player player, Set<Player> receivers, String rawJson, String message, boolean canceled) {
28-
ChatRenderer renderer = (source, sourceDisplayName, ignoredMessage, viewer) -> GSON.deserialize(rawJson);
29-
Component messageComponent = GSON.deserialize(message);
27+
public ChatPrepareResult prepare(Player player, Set<Player> receivers, String jsonFormat, String message, boolean canceled) {
28+
ChatRenderer renderer = (source, sourceDisplayName, ignoredMessage, viewer) -> GSON.deserialize(jsonFormat);
29+
Component messageComponent = Component.text(message);
3030
HashSet<Audience> audiences = new HashSet<>(receivers);
3131
AsyncChatEvent event = new AsyncChatEvent(true, player, audiences, renderer, messageComponent, messageComponent);
3232

0 commit comments

Comments
 (0)