diff --git a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_13_1to1_13/Protocol1_13_1To1_13.java b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_13_1to1_13/Protocol1_13_1To1_13.java index ab6db5f2a..2a6b248d0 100644 --- a/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_13_1to1_13/Protocol1_13_1To1_13.java +++ b/common/src/main/java/com/viaversion/viaversion/protocols/protocol1_13_1to1_13/Protocol1_13_1To1_13.java @@ -20,6 +20,7 @@ package com.viaversion.viaversion.protocols.protocol1_13_1to1_13; import com.viaversion.viaversion.api.connection.UserConnection; import com.viaversion.viaversion.api.data.MappingData; import com.viaversion.viaversion.api.data.MappingDataBase; +import com.viaversion.viaversion.api.minecraft.RegistryType; import com.viaversion.viaversion.api.minecraft.entities.Entity1_13Types; import com.viaversion.viaversion.api.minecraft.item.Item; import com.viaversion.viaversion.api.protocol.AbstractProtocol; @@ -38,7 +39,6 @@ import com.viaversion.viaversion.protocols.protocol1_13_1to1_13.packets.WorldPac import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ClientboundPackets1_13; import com.viaversion.viaversion.protocols.protocol1_13to1_12_2.ServerboundPackets1_13; import com.viaversion.viaversion.protocols.protocol1_9_3to1_9_1_2.storage.ClientWorld; -import com.viaversion.viaversion.api.minecraft.RegistryType; import com.viaversion.viaversion.rewriter.StatisticsRewriter; import com.viaversion.viaversion.rewriter.TagRewriter; @@ -144,45 +144,6 @@ public class Protocol1_13_1To1_13 extends AbstractProtocol { + int id = wrapper.get(Type.INT, 0); + if (id == 2000) { // Smoke + int data = wrapper.get(Type.INT, 1); + switch (data) { + case 1: // North + wrapper.set(Type.INT, 1, 2); // North + break; + case 0: // North-West + case 3: // West + case 6: // South-West + wrapper.set(Type.INT, 1, 4); // West + break; + case 2: // North-East + case 5: // East + case 8: // South-East + wrapper.set(Type.INT, 1, 5); // East + break; + case 7: // South + wrapper.set(Type.INT, 1, 3); // South + break; + default: // Self and other directions + wrapper.set(Type.INT, 1, 0); // Down + break; + } + } else if (id == 1010) { // Play record + wrapper.set(Type.INT, 1, protocol.getMappingData().getNewItemId(wrapper.get(Type.INT, 1))); + } else if (id == 2001) { // Block break + block break sound + wrapper.set(Type.INT, 1, protocol.getMappingData().getNewBlockStateId(wrapper.get(Type.INT, 1))); + } + }); + } + }); protocol.registerClientbound(ClientboundPackets1_13.JOIN_GAME, new PacketRemapper() { @Override