diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/Protocol1_20_5To1_20_3.java b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/Protocol1_20_5To1_20_3.java index 28c4f34bb..4cefb713b 100644 --- a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/Protocol1_20_5To1_20_3.java +++ b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/Protocol1_20_5To1_20_3.java @@ -68,6 +68,7 @@ public final class Protocol1_20_5To1_20_3 extends AbstractProtocol tagRewriter = new TagRewriter<>(this); + private final ComponentRewriter componentRewriter = new ComponentRewriter1_20_5(this); public Protocol1_20_5To1_20_3() { super(ClientboundPacket1_20_3.class, ClientboundPacket1_20_5.class, ServerboundPacket1_20_3.class, ServerboundPacket1_20_5.class); @@ -86,7 +87,6 @@ public final class Protocol1_20_5To1_20_3 extends AbstractProtocol(this).register(ClientboundPackets1_20_3.STATISTICS); - final ComponentRewriter componentRewriter = new ComponentRewriter1_20_5(this); componentRewriter.registerComponentPacket(ClientboundPackets1_20_3.SYSTEM_CHAT); componentRewriter.registerComponentPacket(ClientboundPackets1_20_3.DISGUISED_CHAT); @@ -307,6 +307,10 @@ public final class Protocol1_20_5To1_20_3 extends AbstractProtocol getComponentRewriter() { + return componentRewriter; + } + @Override protected PacketTypesProvider createPacketTypesProvider() { return new SimplePacketTypesProvider<>( diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/rewriter/BlockItemPacketRewriter1_20_5.java b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/rewriter/BlockItemPacketRewriter1_20_5.java index f37d8ee28..8231071f9 100644 --- a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/rewriter/BlockItemPacketRewriter1_20_5.java +++ b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_20_5to1_20_3/rewriter/BlockItemPacketRewriter1_20_5.java @@ -389,7 +389,7 @@ public final class BlockItemPacketRewriter1_20_5 extends ItemRewriter pagesTag = tag.getListTag("pages", StringTag.class); final CompoundTag filteredPagesTag = tag.getCompoundTag("filtered_pages"); if (pagesTag == null) { @@ -1087,11 +1087,11 @@ public final class BlockItemPacketRewriter1_20_5 extends ItemRewriter dataKey, final boolean allowEmpty) { final ListTag itemsTag = tag.getListTag(key, CompoundTag.class); @@ -1265,7 +1271,7 @@ public final class BlockItemPacketRewriter1_20_5 extends ItemRewriter loreTag = displayTag.getListTag("Lore", StringTag.class); if (loreTag != null) { // Apply limit as per new network codec. Some servers send these lores to do trickery with shaders - data.set(StructuredDataKey.LORE, loreTag.stream().limit(256).map(t -> ComponentUtil.jsonStringToTag(t.getValue())).toArray(Tag[]::new)); + data.set(StructuredDataKey.LORE, loreTag.stream().limit(256).map(t -> jsonToTag(connection, t)).toArray(Tag[]::new)); } final NumberTag colorTag = displayTag.getNumberTag("color");