diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 88d4b6525..ac7c4d1bc 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -38,8 +38,8 @@ jobs: name: Forge-Artifacts path: forge/build/libs/ -# - name: Upload Spigot artifacts to GitHub -# uses: actions/upload-artifact@v3 -# with: -# name: Spigot-Artifacts -# path: spigot/build/libs/ + - name: Upload Spigot artifacts to GitHub + uses: actions/upload-artifact@v3 + with: + name: Spigot-Artifacts + path: spigot/build/libs/ diff --git a/server-common/src/main/java/org/figuramc/figura/server/packets/AvatarDataPacket.java b/server-common/src/main/java/org/figuramc/figura/server/packets/AvatarDataPacket.java index c2ded13c8..54f2683ab 100644 --- a/server-common/src/main/java/org/figuramc/figura/server/packets/AvatarDataPacket.java +++ b/server-common/src/main/java/org/figuramc/figura/server/packets/AvatarDataPacket.java @@ -8,7 +8,7 @@ */ public class AvatarDataPacket implements Packet { public static final Identifier PACKET_ID = new Identifier("figura", "avatars/data"); - public static final int MAX_CHUNK_SIZE = 32767 - 5; + public static final int MAX_CHUNK_SIZE = 32766 - 5; private final int streamId; diff --git a/server-common/src/main/java/org/figuramc/figura/server/packets/CustomFSBPacket.java b/server-common/src/main/java/org/figuramc/figura/server/packets/CustomFSBPacket.java index d2fb411bd..5dfa03744 100644 --- a/server-common/src/main/java/org/figuramc/figura/server/packets/CustomFSBPacket.java +++ b/server-common/src/main/java/org/figuramc/figura/server/packets/CustomFSBPacket.java @@ -5,7 +5,7 @@ public class CustomFSBPacket implements Packet { public static final Identifier PACKET_ID = new Identifier("figura", "ping/server"); - public static final int MAX_SERVER_PING_SIZE = 32767 - 4; + public static final int MAX_SERVER_PING_SIZE = 32766 - 4; private final int id; private final byte[] data; diff --git a/server-common/src/main/java/org/figuramc/figura/server/packets/c2s/C2SPingPacket.java b/server-common/src/main/java/org/figuramc/figura/server/packets/c2s/C2SPingPacket.java index a454e7b51..5cb748d32 100644 --- a/server-common/src/main/java/org/figuramc/figura/server/packets/c2s/C2SPingPacket.java +++ b/server-common/src/main/java/org/figuramc/figura/server/packets/c2s/C2SPingPacket.java @@ -6,7 +6,7 @@ public class C2SPingPacket implements Packet { public static final Identifier PACKET_ID = new Identifier("figura", "c2s/ping"); - public static final int MAX_PING_SIZE = 32767 - 21; // Max size of ping that is possible to send + public static final int MAX_PING_SIZE = 32766 - 21; // Max size of ping that is possible to send private final int id; private final boolean sync; diff --git a/settings.gradle b/settings.gradle index cc31f3c94..886a18193 100644 --- a/settings.gradle +++ b/settings.gradle @@ -12,6 +12,6 @@ include("common:mojmap") include("server-common") include("fabric") include("forge") -// include(":spigot") +include("spigot") rootProject.name = "Figura" diff --git a/spigot/src/main/java/org/figuramc/figura/server/FiguraServerSpigot.java b/spigot/src/main/java/org/figuramc/figura/server/FiguraServerSpigot.java index 7667b6fe4..985f0edd0 100644 --- a/spigot/src/main/java/org/figuramc/figura/server/FiguraServerSpigot.java +++ b/spigot/src/main/java/org/figuramc/figura/server/FiguraServerSpigot.java @@ -30,6 +30,7 @@ public Path getFiguraFolder() { @Override protected void sendPacketInternal(UUID receiver, Packet packet) { Player player = Bukkit.getPlayer(receiver); + if (player == null) return; ByteArrayOutputStream baos = new ByteArrayOutputStream(); OutputStreamByteBuf buf = new OutputStreamByteBuf(baos); packet.write(buf); diff --git a/spigot/src/main/java/org/figuramc/figura/server/FiguraSpigot.java b/spigot/src/main/java/org/figuramc/figura/server/FiguraSpigot.java index 5cc2689df..b7e0260c3 100644 --- a/spigot/src/main/java/org/figuramc/figura/server/FiguraSpigot.java +++ b/spigot/src/main/java/org/figuramc/figura/server/FiguraSpigot.java @@ -42,18 +42,10 @@ public void onDisable() { @EventHandler public void onPlayerJoin(PlayerJoinEvent event) { var player = event.getPlayer(); - var uuid = player.getUniqueId(); for (Identifier ident: FiguraServerSpigot.OUTCOMING_PACKETS) { call(player, "addChannel", CHANNEL_ARGS, ident.toString()); srv.logDebug("Registered %s for %s".formatted(ident, player.getName())); } - new BukkitRunnable() { - @Override - public void run() { - srv.sendHandshake(uuid); - srv.userManager().onUserJoin(uuid); - } - }.runTaskLater(this, 30); } @EventHandler