Merge pull request #92 from danbka4z/fix/declarecommands-null

Fix: Send minimal DeclareCommands packet when no Limbo commands available
This commit is contained in:
LOOHP 2025-08-31 16:09:27 +01:00 committed by GitHub
commit 04ed353ab9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 10 additions and 4 deletions

View File

@ -34,13 +34,19 @@ public class DeclareCommands {
public static PacketPlayOutDeclareCommands getDeclareCommandsPacket(CommandSender sender) throws IOException {
List<String> commands = Limbo.getInstance().getPluginManager().getTabOptions(sender, new String[0]);
if (commands.isEmpty()) {
return null;
}
ByteArrayOutputStream buffer = new ByteArrayOutputStream();
DataOutputStream output = new DataOutputStream(buffer);
if (commands.isEmpty()) {
DataTypeIO.writeVarInt(output, 1);
output.writeByte(0);
DataTypeIO.writeVarInt(output, 0);
DataTypeIO.writeVarInt(output, 0);
return new PacketPlayOutDeclareCommands(buffer.toByteArray());
}
DataTypeIO.writeVarInt(output, commands.size() * 2 + 1);
output.writeByte(0);