diff --git a/README.md b/README.md index 1ddc651b..af163b99 100644 --- a/README.md +++ b/README.md @@ -11,5 +11,4 @@ TODO: - Entity names that changed? - llama inventory slots -- Rewrite Shulker box name -- Play Guardian effect for totems? \ No newline at end of file +- Rewrite Shulker box name \ No newline at end of file diff --git a/core/src/main/java/nl/matsv/viabackwards/protocol/protocol1_10to1_11/packets/EntityPackets.java b/core/src/main/java/nl/matsv/viabackwards/protocol/protocol1_10to1_11/packets/EntityPackets.java index 21a11a36..004914c3 100644 --- a/core/src/main/java/nl/matsv/viabackwards/protocol/protocol1_10to1_11/packets/EntityPackets.java +++ b/core/src/main/java/nl/matsv/viabackwards/protocol/protocol1_10to1_11/packets/EntityPackets.java @@ -338,6 +338,30 @@ public class EntityPackets extends EntityRewriter { }); } }); + + // Entity Status + protocol.registerOutgoing(State.PLAY, 0x1B, 0x1B, new PacketRemapper() { + @Override + public void registerMap() { + map(Type.INT); // 0 - Entity ID + map(Type.BYTE); // 1 - Entity Status + + handler(new PacketHandler() { + @Override + public void handle(PacketWrapper wrapper) throws Exception { + byte b = wrapper.get(Type.BYTE, 0); + + if (b == 35) { + wrapper.clearPacket(); + wrapper.setId(0x1E); // Change Game State + wrapper.write(Type.UNSIGNED_BYTE, (short) 10); // Play Elder Guardian animation + wrapper.write(Type.FLOAT, 0F); + + } + } + }); + } + }); } @Override