diff --git a/libraries/packets/implementations/1_21_6/src/main/java/de/oliver/fancysitula/versions/v1_21_6/utils/PacketListenerImpl.java b/libraries/packets/implementations/1_21_6/src/main/java/de/oliver/fancysitula/versions/v1_21_6/utils/PacketListenerImpl.java index d6516de0..9b2a2b10 100644 --- a/libraries/packets/implementations/1_21_6/src/main/java/de/oliver/fancysitula/versions/v1_21_6/utils/PacketListenerImpl.java +++ b/libraries/packets/implementations/1_21_6/src/main/java/de/oliver/fancysitula/versions/v1_21_6/utils/PacketListenerImpl.java @@ -7,6 +7,7 @@ import io.netty.channel.Channel; import io.netty.channel.ChannelHandlerContext; import io.netty.handler.codec.MessageToMessageDecoder; import io.papermc.paper.adventure.PaperAdventure; +import net.minecraft.nbt.StringTag; import net.minecraft.network.protocol.Packet; import net.minecraft.network.protocol.common.ServerboundCustomClickActionPacket; import net.minecraft.server.level.ServerPlayer; @@ -80,7 +81,13 @@ public class PacketListenerImpl extends FS_PacketListener { Map payload = new HashMap<>(); if (customClickActionPacket.payload().isPresent() && customClickActionPacket.payload().get().asCompound().isPresent()) { customClickActionPacket.payload().get().asCompound().get().forEach((k, v) -> { - payload.put(k, v.toString()); + if (v.getType().getName().equals(StringTag.TYPE.getName())) { + if (v.asString().isPresent()) { + payload.put(k, v.asString().get()); + } + } else { + payload.put(k, v.toString()); + } }); } diff --git a/plugins/fancydialogs/src/main/java/com/fancyinnovations/fancydialogs/registry/DialogRegistry.java b/plugins/fancydialogs/src/main/java/com/fancyinnovations/fancydialogs/registry/DialogRegistry.java index 8a6c08d5..c4f43fb8 100644 --- a/plugins/fancydialogs/src/main/java/com/fancyinnovations/fancydialogs/registry/DialogRegistry.java +++ b/plugins/fancydialogs/src/main/java/com/fancyinnovations/fancydialogs/registry/DialogRegistry.java @@ -15,22 +15,27 @@ public class DialogRegistry implements com.fancyinnovations.fancydialogs.api.Dia this.dialogs = new ConcurrentHashMap<>(); } + @Override public void register(@NotNull Dialog dialog) { dialogs.put(dialog.getId(), dialog); } + @Override public void unregister(@NotNull String id) { dialogs.remove(id); } + @Override public Dialog get(@NotNull String id) { return dialogs.get(id); } + @Override public Collection getAll() { return dialogs.values(); } + @Override public void clear() { dialogs.clear(); }