diff --git a/nms/v1_17_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_17_R1/DataWatcherKey.java b/nms/v1_17_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_17_R1/DataWatcherKey.java index 76c3fc13..5dcc9030 100644 --- a/nms/v1_17_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_17_R1/DataWatcherKey.java +++ b/nms/v1_17_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_17_R1/DataWatcherKey.java @@ -16,6 +16,7 @@ import java.util.Optional; class DataWatcherKey { private static final DataWatcherSerializer BYTE_SERIALIZER = DataWatcherRegistry.a; + private static final DataWatcherSerializer INT_SERIALIZER = DataWatcherRegistry.b; private static final DataWatcherSerializer BOOLEAN_SERIALIZER = DataWatcherRegistry.i; private static final DataWatcherSerializer ITEM_STACK_SERIALIZER = DataWatcherRegistry.g; private static final DataWatcherSerializer> OPTIONAL_CHAT_COMPONENT_SERIALIZER = DataWatcherRegistry.f; @@ -25,6 +26,7 @@ class DataWatcherKey { static DataWatcherKey CUSTOM_NAME_VISIBILITY = new DataWatcherKey<>(3, BOOLEAN_SERIALIZER); static DataWatcherKey ITEM_STACK = new DataWatcherKey<>(8, ITEM_STACK_SERIALIZER); static DataWatcherKey ARMOR_STAND_STATUS = new DataWatcherKey<>(15, BYTE_SERIALIZER); + static DataWatcherKey SLIME_SIZE = new DataWatcherKey<>(16, INT_SERIALIZER); private final int index; private final DataWatcherSerializer serializer; diff --git a/nms/v1_17_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_17_R1/EntityMetadataNMSPacket.java b/nms/v1_17_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_17_R1/EntityMetadataNMSPacket.java index 3102626d..765f2b23 100644 --- a/nms/v1_17_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_17_R1/EntityMetadataNMSPacket.java +++ b/nms/v1_17_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_17_R1/EntityMetadataNMSPacket.java @@ -75,6 +75,11 @@ class EntityMetadataNMSPacket extends VersionNMSPacket { return this; } + Builder setSmallSlime() { + packetByteBuffer.writeDataWatcherEntry(DataWatcherKey.SLIME_SIZE, 1); + return this; + } + EntityMetadataNMSPacket build() { packetByteBuffer.writeDataWatcherEntriesEnd(); return new EntityMetadataNMSPacket(packetByteBuffer); diff --git a/nms/v1_17_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_17_R1/VersionNMSPacketList.java b/nms/v1_17_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_17_R1/VersionNMSPacketList.java index cb281882..061eb98e 100644 --- a/nms/v1_17_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_17_R1/VersionNMSPacketList.java +++ b/nms/v1_17_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_17_R1/VersionNMSPacketList.java @@ -87,6 +87,7 @@ class VersionNMSPacketList extends AbstractNMSPacketList { add(new EntityLivingSpawnNMSPacket(entityID, EntityTypeID.SLIME, locationX, locationY, locationZ)); add(EntityMetadataNMSPacket.builder(entityID) .setInvisible() + .setSmallSlime() // Required for a correct client-side collision box .build() ); }