diff --git a/common/src/main/java/me/lojosho/hibiscuscommons/nms/NMSPackets.java b/common/src/main/java/me/lojosho/hibiscuscommons/nms/NMSPackets.java index 63632bc..99725a3 100644 --- a/common/src/main/java/me/lojosho/hibiscuscommons/nms/NMSPackets.java +++ b/common/src/main/java/me/lojosho/hibiscuscommons/nms/NMSPackets.java @@ -49,4 +49,6 @@ public interface NMSPackets { ); void sendRotationPacket(int entityId, float yaw, boolean onGround, List sendTo); + + void sendCameraPacket(int entityId, List sendTo); } diff --git a/common/src/main/java/me/lojosho/hibiscuscommons/util/packets/PacketManager.java b/common/src/main/java/me/lojosho/hibiscuscommons/util/packets/PacketManager.java index 7a0d691..70951ac 100644 --- a/common/src/main/java/me/lojosho/hibiscuscommons/util/packets/PacketManager.java +++ b/common/src/main/java/me/lojosho/hibiscuscommons/util/packets/PacketManager.java @@ -147,9 +147,7 @@ public class PacketManager { * @param sendTo The players that will be sent this packet */ public static void sendCameraPacket(final int entityId, @NotNull List sendTo) { - PacketContainer packet = new PacketContainer(PacketType.Play.Server.CAMERA); - packet.getIntegers().write(0, entityId); - for (final Player p : sendTo) sendPacket(p, packet); + NMSHandlers.getHandler().getPacketHandler().sendCameraPacket(entityId, sendTo); MessagesUtil.sendDebugMessages(sendTo + " | " + entityId + " has had a camera packet on them!"); } diff --git a/v1_20_R1/src/main/java/me/lojosho/hibiscuscommons/nms/v1_20_R1/NMSPackets.java b/v1_20_R1/src/main/java/me/lojosho/hibiscuscommons/nms/v1_20_R1/NMSPackets.java index c4a6f2c..d3bb79a 100644 --- a/v1_20_R1/src/main/java/me/lojosho/hibiscuscommons/nms/v1_20_R1/NMSPackets.java +++ b/v1_20_R1/src/main/java/me/lojosho/hibiscuscommons/nms/v1_20_R1/NMSPackets.java @@ -222,4 +222,16 @@ public class NMSPackets extends NMSCommon implements me.lojosho.hibiscuscommons. e.printStackTrace(); } } + + @Override + public void sendCameraPacket(int entityId, List sendTo) { + FriendlyByteBuf byteBuf = new FriendlyByteBuf(Unpooled.buffer()); + byteBuf.writeVarInt(entityId); + try { + ClientboundSetCameraPacket packet = cameraConstructor.newInstance(byteBuf); + for (Player p : sendTo) sendPacket(p, packet); + } catch (Exception e) { + e.printStackTrace(); + } + } } diff --git a/v1_20_R2/src/main/java/me/lojosho/hibiscuscommons/nms/v1_20_R2/NMSPackets.java b/v1_20_R2/src/main/java/me/lojosho/hibiscuscommons/nms/v1_20_R2/NMSPackets.java index 2bade22..2c055ee 100644 --- a/v1_20_R2/src/main/java/me/lojosho/hibiscuscommons/nms/v1_20_R2/NMSPackets.java +++ b/v1_20_R2/src/main/java/me/lojosho/hibiscuscommons/nms/v1_20_R2/NMSPackets.java @@ -222,4 +222,16 @@ public class NMSPackets extends NMSCommon implements me.lojosho.hibiscuscommons. e.printStackTrace(); } } + + @Override + public void sendCameraPacket(int entityId, List sendTo) { + FriendlyByteBuf byteBuf = new FriendlyByteBuf(Unpooled.buffer()); + byteBuf.writeVarInt(entityId); + try { + ClientboundSetCameraPacket packet = cameraConstructor.newInstance(byteBuf); + for (Player p : sendTo) sendPacket(p, packet); + } catch (Exception e) { + e.printStackTrace(); + } + } } diff --git a/v1_20_R3/src/main/java/me/lojosho/hibiscuscommons/nms/v1_20_R3/NMSPackets.java b/v1_20_R3/src/main/java/me/lojosho/hibiscuscommons/nms/v1_20_R3/NMSPackets.java index 56863a9..5ce0e7c 100644 --- a/v1_20_R3/src/main/java/me/lojosho/hibiscuscommons/nms/v1_20_R3/NMSPackets.java +++ b/v1_20_R3/src/main/java/me/lojosho/hibiscuscommons/nms/v1_20_R3/NMSPackets.java @@ -223,4 +223,16 @@ public class NMSPackets extends NMSCommon implements me.lojosho.hibiscuscommons. e.printStackTrace(); } } + + @Override + public void sendCameraPacket(int entityId, List sendTo) { + FriendlyByteBuf byteBuf = new FriendlyByteBuf(Unpooled.buffer()); + byteBuf.writeVarInt(entityId); + try { + ClientboundSetCameraPacket packet = cameraConstructor.newInstance(byteBuf); + for (Player p : sendTo) sendPacket(p, packet); + } catch (Exception e) { + e.printStackTrace(); + } + } } diff --git a/v1_20_R4/src/main/java/me/lojosho/hibiscuscommons/nms/v1_20_R4/NMSPackets.java b/v1_20_R4/src/main/java/me/lojosho/hibiscuscommons/nms/v1_20_R4/NMSPackets.java index 76b711a..627173f 100644 --- a/v1_20_R4/src/main/java/me/lojosho/hibiscuscommons/nms/v1_20_R4/NMSPackets.java +++ b/v1_20_R4/src/main/java/me/lojosho/hibiscuscommons/nms/v1_20_R4/NMSPackets.java @@ -222,4 +222,16 @@ public class NMSPackets extends NMSCommon implements me.lojosho.hibiscuscommons. e.printStackTrace(); } } + + @Override + public void sendCameraPacket(int entityId, List sendTo) { + FriendlyByteBuf byteBuf = new FriendlyByteBuf(Unpooled.buffer()); + byteBuf.writeVarInt(entityId); + try { + ClientboundSetCameraPacket packet = cameraConstructor.newInstance(byteBuf); + for (Player p : sendTo) sendPacket(p, packet); + } catch (Exception e) { + e.printStackTrace(); + } + } } diff --git a/v1_21_R1/src/main/java/me/lojosho/hibiscuscommons/nms/v1_21_R1/NMSPackets.java b/v1_21_R1/src/main/java/me/lojosho/hibiscuscommons/nms/v1_21_R1/NMSPackets.java index bc473fc..e6e22e6 100644 --- a/v1_21_R1/src/main/java/me/lojosho/hibiscuscommons/nms/v1_21_R1/NMSPackets.java +++ b/v1_21_R1/src/main/java/me/lojosho/hibiscuscommons/nms/v1_21_R1/NMSPackets.java @@ -19,7 +19,6 @@ import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; import java.lang.reflect.Constructor; -import java.nio.ByteBuffer; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; @@ -232,4 +231,16 @@ public class NMSPackets extends NMSCommon implements me.lojosho.hibiscuscommons. e.printStackTrace(); } } + + @Override + public void sendCameraPacket(int entityId, List sendTo) { + FriendlyByteBuf byteBuf = new FriendlyByteBuf(Unpooled.buffer()); + byteBuf.writeVarInt(entityId); + try { + ClientboundSetCameraPacket packet = cameraConstructor.newInstance(byteBuf); + for (Player p : sendTo) sendPacket(p, packet); + } catch (Exception e) { + e.printStackTrace(); + } + } } diff --git a/v1_21_R2/src/main/java/me/lojosho/hibiscuscommons/nms/v1_21_R2/NMSPackets.java b/v1_21_R2/src/main/java/me/lojosho/hibiscuscommons/nms/v1_21_R2/NMSPackets.java index c86e3d7..8054e6c 100644 --- a/v1_21_R2/src/main/java/me/lojosho/hibiscuscommons/nms/v1_21_R2/NMSPackets.java +++ b/v1_21_R2/src/main/java/me/lojosho/hibiscuscommons/nms/v1_21_R2/NMSPackets.java @@ -211,4 +211,16 @@ public class NMSPackets extends NMSCommon implements me.lojosho.hibiscuscommons. e.printStackTrace(); } } + + @Override + public void sendCameraPacket(int entityId, List sendTo) { + FriendlyByteBuf byteBuf = new FriendlyByteBuf(Unpooled.buffer()); + byteBuf.writeVarInt(entityId); + try { + ClientboundSetCameraPacket packet = cameraConstructor.newInstance(byteBuf); + for (Player p : sendTo) sendPacket(p, packet); + } catch (Exception e) { + e.printStackTrace(); + } + } } diff --git a/v1_21_R3/src/main/java/me/lojosho/hibiscuscommons/nms/v1_21_R3/NMSPackets.java b/v1_21_R3/src/main/java/me/lojosho/hibiscuscommons/nms/v1_21_R3/NMSPackets.java index e998b79..62a741b 100644 --- a/v1_21_R3/src/main/java/me/lojosho/hibiscuscommons/nms/v1_21_R3/NMSPackets.java +++ b/v1_21_R3/src/main/java/me/lojosho/hibiscuscommons/nms/v1_21_R3/NMSPackets.java @@ -211,4 +211,16 @@ public class NMSPackets extends NMSCommon implements me.lojosho.hibiscuscommons. e.printStackTrace(); } } + + @Override + public void sendCameraPacket(int entityId, List sendTo) { + FriendlyByteBuf byteBuf = new FriendlyByteBuf(Unpooled.buffer()); + byteBuf.writeVarInt(entityId); + try { + ClientboundSetCameraPacket packet = cameraConstructor.newInstance(byteBuf); + for (Player p : sendTo) sendPacket(p, packet); + } catch (Exception e) { + e.printStackTrace(); + } + } }