forked from GeyserMC/Geyser
Fix anvil item rename (#992)
* fix anvil item rename * fix anvil item rename
This commit is contained in:
parent
30c007d04b
commit
765efe8a33
1 changed files with 8 additions and 3 deletions
|
@ -32,6 +32,9 @@ import com.github.steveice10.mc.protocol.packet.ingame.client.window.ClientRenam
|
||||||
import com.github.steveice10.opennbt.tag.builtin.CompoundTag;
|
import com.github.steveice10.opennbt.tag.builtin.CompoundTag;
|
||||||
import com.nukkitx.nbt.NbtMap;
|
import com.nukkitx.nbt.NbtMap;
|
||||||
import com.nukkitx.protocol.bedrock.data.inventory.*;
|
import com.nukkitx.protocol.bedrock.data.inventory.*;
|
||||||
|
import net.kyori.adventure.text.Component;
|
||||||
|
import net.kyori.adventure.text.serializer.gson.GsonComponentSerializer;
|
||||||
|
import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
|
||||||
import org.geysermc.connector.inventory.Inventory;
|
import org.geysermc.connector.inventory.Inventory;
|
||||||
import org.geysermc.connector.network.session.GeyserSession;
|
import org.geysermc.connector.network.session.GeyserSession;
|
||||||
import org.geysermc.connector.network.translators.inventory.updater.CursorInventoryUpdater;
|
import org.geysermc.connector.network.translators.inventory.updater.CursorInventoryUpdater;
|
||||||
|
@ -106,7 +109,9 @@ public class AnvilInventoryTranslator extends BlockInventoryTranslator {
|
||||||
String rename;
|
String rename;
|
||||||
NbtMap tag = itemName.getTag();
|
NbtMap tag = itemName.getTag();
|
||||||
if (tag != null) {
|
if (tag != null) {
|
||||||
rename = tag.getCompound("display").getString("Name");
|
String name = tag.getCompound("display").getString("Name");
|
||||||
|
Component component = GsonComponentSerializer.gson().deserialize(name);
|
||||||
|
rename = LegacyComponentSerializer.legacy().serialize(component);
|
||||||
} else {
|
} else {
|
||||||
rename = "";
|
rename = "";
|
||||||
}
|
}
|
||||||
|
@ -138,8 +143,8 @@ public class AnvilInventoryTranslator extends BlockInventoryTranslator {
|
||||||
CompoundTag displayTag = tag.get("display");
|
CompoundTag displayTag = tag.get("display");
|
||||||
if (displayTag != null && displayTag.contains("Name")) {
|
if (displayTag != null && displayTag.contains("Name")) {
|
||||||
String itemName = displayTag.get("Name").getValue().toString();
|
String itemName = displayTag.get("Name").getValue().toString();
|
||||||
TextMessage message = (TextMessage) MessageSerializer.fromString(itemName);
|
Component component = GsonComponentSerializer.gson().deserialize(itemName);
|
||||||
rename = message.getText();
|
rename = LegacyComponentSerializer.legacy().serialize(component);
|
||||||
} else {
|
} else {
|
||||||
rename = "";
|
rename = "";
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue