diff --git a/common/src/main/java/us/myles/ViaVersion/api/protocol/Protocol.java b/common/src/main/java/us/myles/ViaVersion/api/protocol/Protocol.java index 1b79569bf..3ca1d4745 100644 --- a/common/src/main/java/us/myles/ViaVersion/api/protocol/Protocol.java +++ b/common/src/main/java/us/myles/ViaVersion/api/protocol/Protocol.java @@ -98,8 +98,14 @@ public abstract class Protocol { * @param packetRemapper The remapper to use for the packet */ public void registerIncoming(State state, int oldPacketID, int newPacketID, PacketRemapper packetRemapper) { + registerIncoming(state, oldPacketID, newPacketID, packetRemapper, false); + } + + public void registerIncoming(State state, int oldPacketID, int newPacketID, PacketRemapper packetRemapper, boolean override) { ProtocolPacket protocolPacket = new ProtocolPacket(state, oldPacketID, newPacketID, packetRemapper); - incoming.put(new Pair<>(state, newPacketID), protocolPacket); + Pair pair = new Pair<>(state, newPacketID); + if (!override && incoming.containsKey(pair)) throw new IllegalArgumentException(pair + " already registered"); + incoming.put(pair, protocolPacket); } /** @@ -122,8 +128,14 @@ public abstract class Protocol { * @param packetRemapper The remapper to use for the packet */ public void registerOutgoing(State state, int oldPacketID, int newPacketID, PacketRemapper packetRemapper) { + registerOutgoing(state, oldPacketID, newPacketID, packetRemapper, false); + } + + public void registerOutgoing(State state, int oldPacketID, int newPacketID, PacketRemapper packetRemapper, boolean override) { ProtocolPacket protocolPacket = new ProtocolPacket(state, oldPacketID, newPacketID, packetRemapper); - outgoing.put(new Pair<>(state, oldPacketID), protocolPacket); + Pair pair = new Pair<>(state, oldPacketID); + if (!override && outgoing.containsKey(pair)) throw new IllegalArgumentException(pair + " already registered"); + outgoing.put(pair, protocolPacket); } /** diff --git a/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_13to1_12_2/Protocol1_13To1_12_2.java b/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_13to1_12_2/Protocol1_13To1_12_2.java index 0792f2546..55e903013 100644 --- a/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_13to1_12_2/Protocol1_13To1_12_2.java +++ b/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_13to1_12_2/Protocol1_13To1_12_2.java @@ -344,7 +344,6 @@ public class Protocol1_13To1_12_2 extends Protocol { registerOutgoing(State.PLAY, 0x1B, 0x1C); // New packet 0x1D - NBT Query registerOutgoing(State.PLAY, 0x1C, 0x1E); - registerOutgoing(State.PLAY, 0x1D, 0x1F); registerOutgoing(State.PLAY, 0x1E, 0x20); registerOutgoing(State.PLAY, 0x1F, 0x21); // WorldPackets 0x20 -> 0x22 diff --git a/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_9to1_8/packets/PlayerPackets.java b/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_9to1_8/packets/PlayerPackets.java index af823f1c7..37f9439f5 100644 --- a/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_9to1_8/packets/PlayerPackets.java +++ b/common/src/main/java/us/myles/ViaVersion/protocols/protocol1_9to1_8/packets/PlayerPackets.java @@ -392,19 +392,6 @@ public class PlayerPackets { /* Removed packets */ - // Map Bulk - protocol.registerOutgoing(State.PLAY, 0x26, 0x26, new PacketRemapper() { - @Override - public void registerMap() { - handler(new PacketHandler() { - @Override - public void handle(PacketWrapper wrapper) throws Exception { - wrapper.cancel(); - } - }); - } - }); - // Set Compression protocol.registerOutgoing(State.PLAY, 0x46, 0x46, new PacketRemapper() { @Override