From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Lumine1909 <133463833+Lumine1909@users.noreply.github.com> Date: Thu, 6 Feb 2025 00:14:23 +0800 Subject: [PATCH] Bytebuf API diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java index b6c8536c143b9ff64e7a7cb7016d113e7f766fb1..eb49cf958cbbd1d53f0bb4556ade8bc407ae7a20 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -318,6 +318,7 @@ public final class CraftServer implements Server { private final ServerConfiguration serverConfig = new PaperServerConfiguration(); private final org.leavesmc.leaves.entity.CraftBotManager botManager; // Leaves private final org.leavesmc.leaves.entity.CraftPhotographerManager photographerManager = new org.leavesmc.leaves.entity.CraftPhotographerManager(); // Leaves + private final org.leavesmc.leaves.bytebuf.internal.InternalBytebufHandler internalBytebufHandler = new org.leavesmc.leaves.bytebuf.internal.InternalBytebufHandler(); // Leaves // Paper start - Folia region threading API private final io.papermc.paper.threadedregions.scheduler.FallbackRegionScheduler regionizedScheduler = new io.papermc.paper.threadedregions.scheduler.FallbackRegionScheduler(); @@ -3226,4 +3227,15 @@ public final class CraftServer implements Server { return photographerManager; } // Leaves end - replay mod api + + // Leaves start - Bytebuf API + @Override + public org.leavesmc.leaves.bytebuf.BytebufManager getBytebufManager() { + return internalBytebufHandler.getManager(); + } + + public org.leavesmc.leaves.bytebuf.internal.InternalBytebufHandler getBytebufHandler() { + return internalBytebufHandler; + } + // Leaves end - Bytebuf API } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java index e09e9daadb9f8d8230d72f50ab34bffd1c5c3ecd..32b866b5327634af3c5fdf80d80839e219789b21 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -3576,4 +3576,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public void setDeathScreenScore(final int score) { getHandle().setScore(score); } + + // Leaves start - Bytebuf API + @Override + public void sendPacket(org.leavesmc.leaves.bytebuf.packet.Packet packet) { + this.server.getBytebufHandler().applyPacketToPlayer(this.getHandle(), packet); + } + + @Override + public void sendPacket(org.leavesmc.leaves.bytebuf.Bytebuf bytebuf, org.leavesmc.leaves.bytebuf.packet.PacketType type) { + this.server.getBytebufHandler().applyPacketToPlayer(this.getHandle(), new org.leavesmc.leaves.bytebuf.packet.Packet(type, bytebuf)); + } + // Leaves end - Bytebuf API }