From 094bfe34c67705507312e7cd2df1bfc85b0a2a4c Mon Sep 17 00:00:00 2001 From: EnZaXD Date: Tue, 11 Jun 2024 15:10:22 +0200 Subject: [PATCH] Use trade list rewriter functions (#782) --- .../rewriter/BlockItemPacketRewriter1_10.java | 31 +------------------ .../rewriter/ItemPacketRewriter1_11_1.java | 30 +----------------- .../rewriter/BlockItemPacketRewriter1_11.java | 30 +----------------- .../rewriter/BlockItemPacketRewriter1_12.java | 29 +---------------- .../rewriter/BlockItemPacketRewriter1_13.java | 2 +- .../rewriter/PlayerPacketRewriter1_13.java | 23 +------------- 6 files changed, 6 insertions(+), 139 deletions(-) diff --git a/common/src/main/java/com/viaversion/viabackwards/protocol/v1_10to1_9_3/rewriter/BlockItemPacketRewriter1_10.java b/common/src/main/java/com/viaversion/viabackwards/protocol/v1_10to1_9_3/rewriter/BlockItemPacketRewriter1_10.java index 92172f0c..2acb10d3 100644 --- a/common/src/main/java/com/viaversion/viabackwards/protocol/v1_10to1_9_3/rewriter/BlockItemPacketRewriter1_10.java +++ b/common/src/main/java/com/viaversion/viabackwards/protocol/v1_10to1_9_3/rewriter/BlockItemPacketRewriter1_10.java @@ -20,12 +20,10 @@ package com.viaversion.viabackwards.protocol.v1_10to1_9_3.rewriter; import com.viaversion.viabackwards.api.rewriters.LegacyBlockItemRewriter; import com.viaversion.viabackwards.protocol.v1_10to1_9_3.Protocol1_10To1_9_3; -import com.viaversion.viaversion.api.minecraft.BlockChangeRecord; import com.viaversion.viaversion.api.minecraft.ClientWorld; import com.viaversion.viaversion.api.minecraft.chunks.Chunk; import com.viaversion.viaversion.api.minecraft.item.Item; import com.viaversion.viaversion.api.protocol.remapper.PacketHandlers; -import com.viaversion.viaversion.api.type.Type; import com.viaversion.viaversion.api.type.Types; import com.viaversion.viaversion.api.type.types.chunk.ChunkType1_9_3; import com.viaversion.viaversion.protocols.v1_9_1to1_9_3.packet.ClientboundPackets1_9_3; @@ -46,34 +44,7 @@ public class BlockItemPacketRewriter1_10 extends LegacyBlockItemRewriter { - if (wrapper.get(Types.STRING, 0).equals("MC|TrList")) { - wrapper.passthrough(Types.INT); // Passthrough Window ID - - int size = wrapper.passthrough(Types.UNSIGNED_BYTE); - for (int i = 0; i < size; i++) { - wrapper.write(Types.ITEM1_8, handleItemToClient(wrapper.user(), wrapper.read(Types.ITEM1_8))); // Input Item - wrapper.write(Types.ITEM1_8, handleItemToClient(wrapper.user(), wrapper.read(Types.ITEM1_8))); // Output Item - - boolean secondItem = wrapper.passthrough(Types.BOOLEAN); // Has second item - if (secondItem) { - wrapper.write(Types.ITEM1_8, handleItemToClient(wrapper.user(), wrapper.read(Types.ITEM1_8))); // Second Item - } - - wrapper.passthrough(Types.BOOLEAN); // Trade disabled - wrapper.passthrough(Types.INT); // Number of tools uses - wrapper.passthrough(Types.INT); // Maximum number of trade uses - } - } - }); - } - }); + registerCustomPayloadTradeList(ClientboundPackets1_9_3.CUSTOM_PAYLOAD); registerContainerClick(ServerboundPackets1_9_3.CONTAINER_CLICK); registerSetCreativeModeSlot(ServerboundPackets1_9_3.SET_CREATIVE_MODE_SLOT); diff --git a/common/src/main/java/com/viaversion/viabackwards/protocol/v1_11_1to1_11/rewriter/ItemPacketRewriter1_11_1.java b/common/src/main/java/com/viaversion/viabackwards/protocol/v1_11_1to1_11/rewriter/ItemPacketRewriter1_11_1.java index 30284ba1..0fceb7db 100644 --- a/common/src/main/java/com/viaversion/viabackwards/protocol/v1_11_1to1_11/rewriter/ItemPacketRewriter1_11_1.java +++ b/common/src/main/java/com/viaversion/viabackwards/protocol/v1_11_1to1_11/rewriter/ItemPacketRewriter1_11_1.java @@ -42,35 +42,7 @@ public class ItemPacketRewriter1_11_1 extends LegacyBlockItemRewriter Trading - protocol.registerClientbound(ClientboundPackets1_9_3.CUSTOM_PAYLOAD, new PacketHandlers() { - @Override - public void register() { - map(Types.STRING); // 0 - Channel - - handler(wrapper -> { - if (wrapper.get(Types.STRING, 0).equals("MC|TrList")) { - wrapper.passthrough(Types.INT); // Passthrough Window ID - - int size = wrapper.passthrough(Types.UNSIGNED_BYTE); - for (int i = 0; i < size; i++) { - wrapper.write(Types.ITEM1_8, handleItemToClient(wrapper.user(), wrapper.read(Types.ITEM1_8))); // Input Item - wrapper.write(Types.ITEM1_8, handleItemToClient(wrapper.user(), wrapper.read(Types.ITEM1_8))); // Output Item - - boolean secondItem = wrapper.passthrough(Types.BOOLEAN); // Has second item - if (secondItem) { - wrapper.write(Types.ITEM1_8, handleItemToClient(wrapper.user(), wrapper.read(Types.ITEM1_8))); // Second Item - } - - wrapper.passthrough(Types.BOOLEAN); // Trade disabled - wrapper.passthrough(Types.INT); // Number of tools uses - wrapper.passthrough(Types.INT); // Maximum number of trade uses - } - } - }); - } - }); + registerCustomPayloadTradeList(ClientboundPackets1_9_3.CUSTOM_PAYLOAD); registerContainerClick(ServerboundPackets1_9_3.CONTAINER_CLICK); registerSetCreativeModeSlot(ServerboundPackets1_9_3.SET_CREATIVE_MODE_SLOT); diff --git a/common/src/main/java/com/viaversion/viabackwards/protocol/v1_11to1_10/rewriter/BlockItemPacketRewriter1_11.java b/common/src/main/java/com/viaversion/viabackwards/protocol/v1_11to1_10/rewriter/BlockItemPacketRewriter1_11.java index bff59cef..8e08f30e 100644 --- a/common/src/main/java/com/viaversion/viabackwards/protocol/v1_11to1_10/rewriter/BlockItemPacketRewriter1_11.java +++ b/common/src/main/java/com/viaversion/viabackwards/protocol/v1_11to1_10/rewriter/BlockItemPacketRewriter1_11.java @@ -113,35 +113,7 @@ public class BlockItemPacketRewriter1_11 extends LegacyBlockItemRewriter Trading - protocol.registerClientbound(ClientboundPackets1_9_3.CUSTOM_PAYLOAD, new PacketHandlers() { - @Override - public void register() { - map(Types.STRING); // 0 - Channel - - handler(wrapper -> { - if (wrapper.get(Types.STRING, 0).equals("MC|TrList")) { - wrapper.passthrough(Types.INT); // Passthrough Window ID - - int size = wrapper.passthrough(Types.UNSIGNED_BYTE); - for (int i = 0; i < size; i++) { - wrapper.write(Types.ITEM1_8, handleItemToClient(wrapper.user(), wrapper.read(Types.ITEM1_8))); // Input Item - wrapper.write(Types.ITEM1_8, handleItemToClient(wrapper.user(), wrapper.read(Types.ITEM1_8))); // Output Item - - boolean secondItem = wrapper.passthrough(Types.BOOLEAN); // Has second item - if (secondItem) { - wrapper.write(Types.ITEM1_8, handleItemToClient(wrapper.user(), wrapper.read(Types.ITEM1_8))); // Second Item - } - - wrapper.passthrough(Types.BOOLEAN); // Trade disabled - wrapper.passthrough(Types.INT); // Number of tools uses - wrapper.passthrough(Types.INT); // Maximum number of trade uses - } - } - }); - } - }); + registerCustomPayloadTradeList(ClientboundPackets1_9_3.CUSTOM_PAYLOAD); protocol.registerServerbound(ServerboundPackets1_9_3.CONTAINER_CLICK, new PacketHandlers() { @Override diff --git a/common/src/main/java/com/viaversion/viabackwards/protocol/v1_12to1_11_1/rewriter/BlockItemPacketRewriter1_12.java b/common/src/main/java/com/viaversion/viabackwards/protocol/v1_12to1_11_1/rewriter/BlockItemPacketRewriter1_12.java index 790051b4..d59e9c5b 100644 --- a/common/src/main/java/com/viaversion/viabackwards/protocol/v1_12to1_11_1/rewriter/BlockItemPacketRewriter1_12.java +++ b/common/src/main/java/com/viaversion/viabackwards/protocol/v1_12to1_11_1/rewriter/BlockItemPacketRewriter1_12.java @@ -86,34 +86,7 @@ public class BlockItemPacketRewriter1_12 extends LegacyBlockItemRewriter Trading - protocol.registerClientbound(ClientboundPackets1_12.CUSTOM_PAYLOAD, new PacketHandlers() { - @Override - public void register() { - map(Types.STRING); // 0 - Channel - - handler(wrapper -> { - if (wrapper.get(Types.STRING, 0).equals("MC|TrList")) { - wrapper.passthrough(Types.INT); // Passthrough Window ID - - int size = wrapper.passthrough(Types.UNSIGNED_BYTE); - for (int i = 0; i < size; i++) { - wrapper.write(Types.ITEM1_8, handleItemToClient(wrapper.user(), wrapper.read(Types.ITEM1_8))); // Input Item - wrapper.write(Types.ITEM1_8, handleItemToClient(wrapper.user(), wrapper.read(Types.ITEM1_8))); // Output Item - - boolean secondItem = wrapper.passthrough(Types.BOOLEAN); // Has second item - if (secondItem) - wrapper.write(Types.ITEM1_8, handleItemToClient(wrapper.user(), wrapper.read(Types.ITEM1_8))); // Second Item - - wrapper.passthrough(Types.BOOLEAN); // Trade disabled - wrapper.passthrough(Types.INT); // Number of tools uses - wrapper.passthrough(Types.INT); // Maximum number of trade uses - } - } - }); - } - }); + registerCustomPayloadTradeList(ClientboundPackets1_12.CUSTOM_PAYLOAD); protocol.registerServerbound(ServerboundPackets1_9_3.CONTAINER_CLICK, new PacketHandlers() { @Override diff --git a/common/src/main/java/com/viaversion/viabackwards/protocol/v1_13to1_12_2/rewriter/BlockItemPacketRewriter1_13.java b/common/src/main/java/com/viaversion/viabackwards/protocol/v1_13to1_12_2/rewriter/BlockItemPacketRewriter1_13.java index 0a9a6883..4b6a1507 100644 --- a/common/src/main/java/com/viaversion/viabackwards/protocol/v1_13to1_12_2/rewriter/BlockItemPacketRewriter1_13.java +++ b/common/src/main/java/com/viaversion/viabackwards/protocol/v1_13to1_12_2/rewriter/BlockItemPacketRewriter1_13.java @@ -72,7 +72,7 @@ public class BlockItemPacketRewriter1_13 extends BackwardsItemRewriter String channel = wrapper.read(Types.STRING); if (channel.equals("minecraft:trader_list")) { wrapper.write(Types.STRING, "MC|TrList"); - wrapper.passthrough(Types.INT); //Passthrough Window ID - - int size = wrapper.passthrough(Types.UNSIGNED_BYTE); - for (int i = 0; i < size; i++) { - //Input Item - Item input = wrapper.read(Types.ITEM1_13); - wrapper.write(Types.ITEM1_8, protocol.getItemRewriter().handleItemToClient(wrapper.user(), input)); - //Output Item - Item output = wrapper.read(Types.ITEM1_13); - wrapper.write(Types.ITEM1_8, protocol.getItemRewriter().handleItemToClient(wrapper.user(), output)); - - boolean secondItem = wrapper.passthrough(Types.BOOLEAN); //Has second item - if (secondItem) { - //Second Item - Item second = wrapper.read(Types.ITEM1_13); - wrapper.write(Types.ITEM1_8, protocol.getItemRewriter().handleItemToClient(wrapper.user(), second)); - } - - wrapper.passthrough(Types.BOOLEAN); //Trade disabled - wrapper.passthrough(Types.INT); //Number of tools uses - wrapper.passthrough(Types.INT); //Maximum number of trade uses - } + protocol.getItemRewriter().handleTradeList(wrapper); } else { String oldChannel = ItemPacketRewriter1_13.getOldPluginChannelId(channel); if (oldChannel == null) {