From 296f42086f2eed61556b3b0bf750c7528ebe5ff4 Mon Sep 17 00:00:00 2001 From: Nassim Jahnke Date: Mon, 17 Jun 2024 12:43:18 +0200 Subject: [PATCH] Also handle item_name item data for component rewriting --- .../rewriter/StructuredItemRewriter.java | 36 ++++++++++++------- 1 file changed, 24 insertions(+), 12 deletions(-) diff --git a/common/src/main/java/com/viaversion/viaversion/rewriter/StructuredItemRewriter.java b/common/src/main/java/com/viaversion/viaversion/rewriter/StructuredItemRewriter.java index e57be372e..d48ea1118 100644 --- a/common/src/main/java/com/viaversion/viaversion/rewriter/StructuredItemRewriter.java +++ b/common/src/main/java/com/viaversion/viaversion/rewriter/StructuredItemRewriter.java @@ -69,14 +69,8 @@ public class StructuredItemRewriter customNameData = dataContainer.getNonEmpty(StructuredDataKey.CUSTOM_NAME); - if (customNameData != null) { - final Tag originalName = customNameData.value().copy(); - componentRewriter.processTag(connection, customNameData.value()); - if (!customNameData.value().equals(originalName)) { - saveTag(createCustomTag(item), originalName, "Name"); - } - } + updateComponent(connection, item, StructuredDataKey.ITEM_NAME, "item_name"); + updateComponent(connection, item, StructuredDataKey.CUSTOM_NAME, "custom_name"); final StructuredData loreData = dataContainer.getNonEmpty(StructuredDataKey.LORE); if (loreData != null) { @@ -164,6 +158,19 @@ public class StructuredItemRewriter key, final String backupKey) { + final StructuredData name = item.dataContainer().getNonEmpty(key); + if (name == null) { + return; + } + + final Tag originalName = name.value().copy(); + protocol.getComponentRewriter().processTag(connection, name.value()); + if (!name.value().equals(originalName)) { + saveTag(createCustomTag(item), originalName, backupKey); + } + } + protected void restoreTextComponents(final Item item) { final StructuredDataContainer data = item.dataContainer(); final StructuredData customData = data.getNonEmpty(StructuredDataKey.CUSTOM_DATA); @@ -172,12 +179,17 @@ public class StructuredItemRewriter