Skip to content

Commit 59660a5

Browse files
committed
Merge branch 'master' into dev
2 parents fa18a57 + 83fa0c6 commit 59660a5

File tree

15 files changed

+48
-141
lines changed

15 files changed

+48
-141
lines changed

.idea/copyright/viabackwards_gpl.xml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

common/src/main/java/com/viaversion/viabackwards/api/data/MappedItem.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
*/
1818
package com.viaversion.viabackwards.api.data;
1919

20-
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ChatRewriter;
20+
import com.viaversion.viaversion.util.ComponentUtil;
2121
import org.checkerframework.checker.nullness.qual.Nullable;
2222

2323
public class MappedItem {
@@ -32,7 +32,7 @@ public MappedItem(final int id, final String name) {
3232

3333
public MappedItem(final int id, final String name, @Nullable final Integer customModelData) {
3434
this.id = id;
35-
this.jsonName = ChatRewriter.legacyTextToJsonString("§f" + name, true);
35+
this.jsonName = ComponentUtil.legacyToJsonString("§f" + name, true);
3636
this.customModelData = customModelData;
3737
}
3838

common/src/main/java/com/viaversion/viabackwards/api/entities/storage/EntityData.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,10 @@
1818

1919
package com.viaversion.viabackwards.api.entities.storage;
2020

21-
import com.viaversion.viabackwards.ViaBackwards;
2221
import com.viaversion.viabackwards.api.BackwardsProtocol;
2322
import com.viaversion.viaversion.api.minecraft.entities.EntityType;
2423
import com.viaversion.viaversion.libs.opennbt.tag.builtin.StringTag;
25-
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ChatRewriter;
24+
import com.viaversion.viaversion.util.ComponentUtil;
2625
import java.util.Locale;
2726
import org.checkerframework.checker.nullness.qual.Nullable;
2827

@@ -87,7 +86,7 @@ public int typeId() {
8786
}
8887

8988
if (componentType == ComponentType.JSON) {
90-
return ChatRewriter.legacyTextToJson(name);
89+
return ComponentUtil.legacyToJson(name);
9190
} else if (componentType == ComponentType.TAG) {
9291
return new StringTag(name);
9392
}

common/src/main/java/com/viaversion/viabackwards/api/rewriters/EnchantmentRewriter.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
import com.viaversion.viaversion.libs.opennbt.tag.builtin.ShortTag;
2525
import com.viaversion.viaversion.libs.opennbt.tag.builtin.StringTag;
2626
import com.viaversion.viaversion.libs.opennbt.tag.builtin.Tag;
27-
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ChatRewriter;
27+
import com.viaversion.viaversion.util.ComponentUtil;
2828
import java.util.ArrayList;
2929
import java.util.HashMap;
3030
import java.util.Iterator;
@@ -103,7 +103,7 @@ public void rewriteEnchantmentsToClient(CompoundTag tag, boolean storedEnchant)
103103
int level = ((NumberTag) enchantmentEntry.get("lvl")).asInt();
104104
String loreValue = remappedName + " " + getRomanNumber(level);
105105
if (jsonFormat) {
106-
loreValue = ChatRewriter.legacyTextToJsonString(loreValue);
106+
loreValue = ComponentUtil.legacyToJsonString(loreValue);
107107
}
108108

109109
loreToAdd.add(new StringTag(loreValue));

common/src/main/java/com/viaversion/viabackwards/api/rewriters/LegacyBlockItemRewriter.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
import com.viaversion.viaversion.libs.opennbt.tag.builtin.NumberTag;
4242
import com.viaversion.viaversion.libs.opennbt.tag.builtin.StringTag;
4343
import com.viaversion.viaversion.libs.opennbt.tag.builtin.Tag;
44-
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ChatRewriter;
44+
import com.viaversion.viaversion.util.ComponentUtil;
4545
import java.util.HashMap;
4646
import java.util.Map;
4747
import org.checkerframework.checker.nullness.qual.Nullable;
@@ -278,7 +278,7 @@ protected CompoundTag getNamedTag(String text) {
278278
CompoundTag tag = new CompoundTag();
279279
tag.put("display", new CompoundTag());
280280
text = "§r" + text;
281-
((CompoundTag) tag.get("display")).put("Name", new StringTag(jsonNameFormat ? ChatRewriter.legacyTextToJsonString(text) : text));
281+
((CompoundTag) tag.get("display")).put("Name", new StringTag(jsonNameFormat ? ComponentUtil.legacyToJsonString(text) : text));
282282
return tag;
283283
}
284284

common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_10to1_11/packets/PlayerPackets1_11.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,9 @@
2525
import com.viaversion.viaversion.api.type.Type;
2626
import com.viaversion.viaversion.libs.gson.JsonElement;
2727
import com.viaversion.viaversion.libs.gson.JsonObject;
28-
import com.viaversion.viaversion.libs.kyori.adventure.text.serializer.gson.GsonComponentSerializer;
29-
import com.viaversion.viaversion.libs.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
3028
import com.viaversion.viaversion.protocols.protocol1_9_3to1_9_1_2.ClientboundPackets1_9_3;
3129
import com.viaversion.viaversion.protocols.protocol1_9_3to1_9_1_2.ServerboundPackets1_9_3;
30+
import com.viaversion.viaversion.util.ComponentUtil;
3231

3332
public class PlayerPackets1_11 {
3433
private static final ValueTransformer<Short, Float> TO_NEW_FLOAT = new ValueTransformer<Short, Float>(Type.FLOAT) {
@@ -53,8 +52,8 @@ public void register() {
5352
wrapper.clearPacket();
5453
wrapper.setPacketType(ClientboundPackets1_9_3.CHAT_MESSAGE);
5554

56-
// https://bugs.mojang.com/browse/MC-119145to
57-
String legacy = LegacyComponentSerializer.legacySection().serialize(GsonComponentSerializer.gson().deserialize(message.toString()));
55+
// https://bugs.mojang.com/browse/MC-119145
56+
String legacy = ComponentUtil.jsonToLegacy(message);
5857
message = new JsonObject();
5958
message.getAsJsonObject().addProperty("text", legacy);
6059

common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_12_2to1_13/Protocol1_12_2To1_13.java

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -39,15 +39,13 @@
3939
import com.viaversion.viaversion.libs.gson.JsonElement;
4040
import com.viaversion.viaversion.libs.gson.JsonObject;
4141
import com.viaversion.viaversion.libs.gson.JsonParser;
42-
import com.viaversion.viaversion.libs.kyori.adventure.text.Component;
43-
import com.viaversion.viaversion.libs.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
4442
import com.viaversion.viaversion.protocols.protocol1_12_1to1_12.ClientboundPackets1_12_1;
4543
import com.viaversion.viaversion.protocols.protocol1_12_1to1_12.ServerboundPackets1_12_1;
46-
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ChatRewriter;
4744
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ClientboundPackets1_13;
4845
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.Protocol1_13To1_12_2;
4946
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ServerboundPackets1_13;
5047
import com.viaversion.viaversion.rewriter.ComponentRewriter;
48+
import com.viaversion.viaversion.util.ComponentUtil;
5149
import org.checkerframework.checker.nullness.qual.Nullable;
5250

5351
public class Protocol1_12_2To1_13 extends BackwardsProtocol<ClientboundPackets1_13, ClientboundPackets1_12_1, ServerboundPackets1_13, ServerboundPackets1_12_1> {
@@ -167,14 +165,6 @@ public String jsonToLegacy(@Nullable JsonElement value) {
167165
}
168166

169167
translatableToLegacyRewriter.processText(value);
170-
171-
try {
172-
Component component = ChatRewriter.HOVER_GSON_SERIALIZER.deserializeFromTree(value);
173-
return LegacyComponentSerializer.legacySection().serialize(component);
174-
} catch (Exception e) {
175-
ViaBackwards.getPlatform().getLogger().warning("Error converting json text to legacy: " + value);
176-
e.printStackTrace();
177-
}
178-
return "";
168+
return ComponentUtil.jsonToLegacy(value);
179169
}
180170
}

common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_12_2to1_13/packets/BlockItemPackets1_13.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,11 +50,11 @@
5050
import com.viaversion.viaversion.libs.opennbt.tag.builtin.Tag;
5151
import com.viaversion.viaversion.protocols.protocol1_12_1to1_12.ClientboundPackets1_12_1;
5252
import com.viaversion.viaversion.protocols.protocol1_12_1to1_12.ServerboundPackets1_12_1;
53-
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ChatRewriter;
5453
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ClientboundPackets1_13;
5554
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.Protocol1_13To1_12_2;
5655
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.data.BlockIdData;
5756
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.data.SpawnEggRewriter;
57+
import com.viaversion.viaversion.util.ComponentUtil;
5858
import com.viaversion.viaversion.util.Key;
5959
import java.util.ArrayList;
6060
import java.util.HashMap;
@@ -755,7 +755,7 @@ public Item handleItemToServer(Item item) {
755755
StringTag name = displayTag.get("Name");
756756
if (name != null) {
757757
StringTag via = displayTag.remove(extraNbtTag + "|Name");
758-
name.setValue(via != null ? via.getValue() : ChatRewriter.legacyTextToJsonString(name.getValue()));
758+
name.setValue(via != null ? via.getValue() : ComponentUtil.legacyToJsonString(name.getValue()));
759759
}
760760
}
761761

common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_13_2to1_14/packets/BlockItemPackets1_14.java

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,12 @@
2525
import com.viaversion.viaversion.api.Via;
2626
import com.viaversion.viaversion.api.minecraft.ClientWorld;
2727
import com.viaversion.viaversion.api.minecraft.Environment;
28-
import com.viaversion.viaversion.api.minecraft.chunks.*;
28+
import com.viaversion.viaversion.api.minecraft.chunks.Chunk;
29+
import com.viaversion.viaversion.api.minecraft.chunks.ChunkSection;
30+
import com.viaversion.viaversion.api.minecraft.chunks.ChunkSectionLight;
31+
import com.viaversion.viaversion.api.minecraft.chunks.ChunkSectionLightImpl;
32+
import com.viaversion.viaversion.api.minecraft.chunks.DataPalette;
33+
import com.viaversion.viaversion.api.minecraft.chunks.PaletteType;
2934
import com.viaversion.viaversion.api.minecraft.entities.EntityType;
3035
import com.viaversion.viaversion.api.minecraft.entities.EntityTypes1_14;
3136
import com.viaversion.viaversion.api.minecraft.item.Item;
@@ -42,15 +47,14 @@
4247
import com.viaversion.viaversion.libs.opennbt.tag.builtin.ListTag;
4348
import com.viaversion.viaversion.libs.opennbt.tag.builtin.StringTag;
4449
import com.viaversion.viaversion.libs.opennbt.tag.builtin.Tag;
45-
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ChatRewriter;
4650
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ClientboundPackets1_13;
4751
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ServerboundPackets1_13;
4852
import com.viaversion.viaversion.protocols.protocol1_14to1_13_2.ClientboundPackets1_14;
4953
import com.viaversion.viaversion.protocols.protocol1_14to1_13_2.Protocol1_14To1_13_2;
5054
import com.viaversion.viaversion.rewriter.BlockRewriter;
5155
import com.viaversion.viaversion.rewriter.RecipeRewriter;
56+
import com.viaversion.viaversion.util.ComponentUtil;
5257
import com.viaversion.viaversion.util.Key;
53-
5458
import java.util.ArrayList;
5559
import java.util.List;
5660
import java.util.Set;
@@ -143,7 +147,7 @@ protected void registerPackets() {
143147
if (title.isJsonObject() && (object = title.getAsJsonObject()).has("translate")) {
144148
// Don't rewrite other 9x3 translatable containers
145149
if (type != 2 || object.getAsJsonPrimitive("translate").getAsString().equals("container.barrel")) {
146-
title = ChatRewriter.legacyTextToJson(containerTitle);
150+
title = ComponentUtil.legacyToJson(containerTitle);
147151
}
148152
}
149153
}
@@ -479,7 +483,7 @@ public Item handleItemToClient(Item item) {
479483
StringTag loreEntryTag = (StringTag) loreEntry;
480484
String value = loreEntryTag.getValue();
481485
if (value != null && !value.isEmpty()) {
482-
loreEntryTag.setValue(ChatRewriter.jsonToLegacyText(value));
486+
loreEntryTag.setValue(ComponentUtil.jsonToLegacy(value));
483487
}
484488
}
485489
}
@@ -503,7 +507,7 @@ public Item handleItemToServer(Item item) {
503507
for (Tag loreEntry : lore) {
504508
if (loreEntry instanceof StringTag) {
505509
StringTag loreEntryTag = (StringTag) loreEntry;
506-
loreEntryTag.setValue(ChatRewriter.legacyTextToJsonString(loreEntryTag.getValue()));
510+
loreEntryTag.setValue(ComponentUtil.legacyToJsonString(loreEntryTag.getValue()));
507511
}
508512
}
509513
}

common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_13to1_13_1/Protocol1_13To1_13_1.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,12 +38,12 @@
3838
import com.viaversion.viaversion.libs.gson.JsonElement;
3939
import com.viaversion.viaversion.libs.gson.JsonObject;
4040
import com.viaversion.viaversion.protocols.protocol1_13_1to1_13.Protocol1_13_1To1_13;
41-
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ChatRewriter;
4241
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ClientboundPackets1_13;
4342
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ServerboundPackets1_13;
4443
import com.viaversion.viaversion.rewriter.ComponentRewriter;
4544
import com.viaversion.viaversion.rewriter.StatisticsRewriter;
4645
import com.viaversion.viaversion.rewriter.TagRewriter;
46+
import com.viaversion.viaversion.util.ComponentUtil;
4747

4848
public class Protocol1_13To1_13_1 extends BackwardsProtocol<ClientboundPackets1_13, ClientboundPackets1_13, ServerboundPackets1_13, ServerboundPackets1_13> {
4949

@@ -115,7 +115,7 @@ public void register() {
115115

116116
// https://bugs.mojang.com/browse/MC-124543
117117
JsonObject legacyComponent = new JsonObject();
118-
legacyComponent.addProperty("text", ChatRewriter.jsonToLegacyText(title.toString()));
118+
legacyComponent.addProperty("text", ComponentUtil.jsonToLegacy(title));
119119
wrapper.set(Type.COMPONENT, 0, legacyComponent);
120120
}
121121
});

common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_15_2to1_16/chat/TranslatableRewriter1_16.java

Lines changed: 3 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -17,17 +17,13 @@
1717
*/
1818
package com.viaversion.viabackwards.protocol.protocol1_15_2to1_16.chat;
1919

20-
import com.viaversion.viabackwards.ViaBackwards;
2120
import com.viaversion.viabackwards.api.rewriters.TranslatableRewriter;
2221
import com.viaversion.viabackwards.protocol.protocol1_15_2to1_16.Protocol1_15_2To1_16;
23-
import com.viaversion.viaversion.api.Via;
2422
import com.viaversion.viaversion.libs.gson.JsonElement;
2523
import com.viaversion.viaversion.libs.gson.JsonObject;
26-
import com.viaversion.viaversion.libs.gson.JsonParseException;
2724
import com.viaversion.viaversion.libs.gson.JsonPrimitive;
28-
import com.viaversion.viaversion.libs.kyori.adventure.text.Component;
29-
import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ChatRewriter;
3025
import com.viaversion.viaversion.protocols.protocol1_16to1_15_2.ClientboundPackets1_16;
26+
import com.viaversion.viaversion.util.ComponentUtil;
3127

3228
public class TranslatableRewriter1_16 extends TranslatableRewriter<ClientboundPackets1_16> {
3329

@@ -78,33 +74,8 @@ public void processText(JsonElement value) {
7874
}
7975

8076
// show_text as chat component json, show_entity and show_item serialized as snbt
81-
// Let adventure handle all of that
82-
try {
83-
Component component = ChatRewriter.HOVER_GSON_SERIALIZER.deserializeFromTree(object);
84-
JsonObject convertedObject;
85-
try {
86-
convertedObject = (JsonObject) ChatRewriter.HOVER_GSON_SERIALIZER.serializeToTree(component);
87-
} catch (JsonParseException e) {
88-
JsonObject contents = hoverEvent.getAsJsonObject("contents");
89-
if (contents.remove("tag") == null) {
90-
throw e; // Just rethrow if this is not an item with a tag provided
91-
}
92-
93-
// Most likely an invalid nbt tag - try again after its removal
94-
component = ChatRewriter.HOVER_GSON_SERIALIZER.deserializeFromTree(object);
95-
convertedObject = (JsonObject) ChatRewriter.HOVER_GSON_SERIALIZER.serializeToTree(component);
96-
}
97-
98-
// Remove new format
99-
JsonObject processedHoverEvent = convertedObject.getAsJsonObject("hoverEvent");
100-
processedHoverEvent.remove("contents");
101-
object.add("hoverEvent", processedHoverEvent);
102-
} catch (Exception e) {
103-
if (!Via.getConfig().isSuppressConversionWarnings()) {
104-
ViaBackwards.getPlatform().getLogger().severe("Error converting hover event component: " + object);
105-
e.printStackTrace();
106-
}
107-
}
77+
JsonObject convertedObject = (JsonObject) ComponentUtil.convertJson(object, ComponentUtil.SerializerVersion.V1_16, ComponentUtil.SerializerVersion.V1_15);
78+
object.add("hoverEvent", convertedObject.getAsJsonObject("hoverEvent"));
10879
}
10980

11081
private String getClosestChatColor(int rgb) {

common/src/main/java/com/viaversion/viabackwards/protocol/protocol1_19_1to1_19_3/Protocol1_19_1To1_19_3.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,6 @@
4444
import com.viaversion.viaversion.api.type.types.ByteArrayType;
4545
import com.viaversion.viaversion.data.entity.EntityTrackerBase;
4646
import com.viaversion.viaversion.libs.gson.JsonElement;
47-
import com.viaversion.viaversion.libs.kyori.adventure.text.Component;
48-
import com.viaversion.viaversion.libs.kyori.adventure.text.serializer.gson.GsonComponentSerializer;
4947
import com.viaversion.viaversion.protocols.base.ClientboundLoginPackets;
5048
import com.viaversion.viaversion.protocols.base.ServerboundLoginPackets;
5149
import com.viaversion.viaversion.protocols.protocol1_19_1to1_19.ClientboundPackets1_19_1;
@@ -57,8 +55,8 @@
5755
import com.viaversion.viaversion.rewriter.StatisticsRewriter;
5856
import com.viaversion.viaversion.rewriter.TagRewriter;
5957
import com.viaversion.viaversion.util.CipherUtil;
58+
import com.viaversion.viaversion.util.ComponentUtil;
6059
import com.viaversion.viaversion.util.Pair;
61-
6260
import java.util.BitSet;
6361
import java.util.List;
6462

@@ -347,7 +345,7 @@ public void register() {
347345
}
348346

349347
final JsonElement unsignedContent = wrapper.read(Type.OPTIONAL_COMPONENT);
350-
final JsonElement content = unsignedContent != null ? unsignedContent : GsonComponentSerializer.gson().serializeToTree(Component.text(plainContent));
348+
final JsonElement content = unsignedContent != null ? unsignedContent : ComponentUtil.plainToJson(plainContent);
351349
translatableRewriter.processText(content);
352350
final int filterMaskType = wrapper.read(Type.VAR_INT);
353351
if (filterMaskType == 2) {

0 commit comments

Comments
 (0)