Fixed playerlist for 1.16.5 clients. Changed version string

This commit is contained in:
Nanit 2022-02-07 14:39:08 +02:00
parent 021d0a18a5
commit e1445c006b
4 changed files with 16 additions and 20 deletions

View File

@ -4,7 +4,7 @@ plugins {
}
group 'ru.nanit'
version '1.3.3'
version '1.3.4'
repositories {
mavenCentral()

View File

@ -94,6 +94,7 @@ public final class LimboConfig {
useBossBar = conf.node("bossBar", "enable").getBoolean();
useTitle = conf.node("title", "enable").getBoolean();
usePlayerList = conf.node("playerList", "enable").getBoolean();
playerListUsername = conf.node("playerList", "username").getString();
useHeaderAndFooter = conf.node("headerAndFooter", "enable").getBoolean();
if (useBrandName)
@ -108,9 +109,6 @@ public final class LimboConfig {
if (useTitle)
title = conf.node("title").get(Title.class);
if (usePlayerList)
playerListUsername = conf.node("playerList", "username").getString();
if (useHeaderAndFooter) {
playerListHeader = Colors.of(conf.node("headerAndFooter", "header").getString());
playerListFooter = Colors.of(conf.node("headerAndFooter", "footer").getString());

View File

@ -241,10 +241,10 @@ public class ClientConnection extends ChannelInboundHandlerAdapter {
writePacket(PACKET_PLAYER_ABILITIES);
writePacket(PACKET_PLAYER_POS);
if (PACKET_PLAYER_INFO != null && !clientVersion.equals(Version.V1_16_4))
if (server.getConfig().isUsePlayerList() || clientVersion.equals(Version.V1_16_4))
writePacket(PACKET_PLAYER_INFO);
if (clientVersion.moreOrEqual(Version.V1_13)){
if (clientVersion.moreOrEqual(Version.V1_13)) {
writePacket(PACKET_DECLARE_COMMANDS);
if (PACKET_PLUGIN_MESSAGE != null)
@ -430,26 +430,24 @@ public class ClientConnection extends ChannelInboundHandlerAdapter {
PacketDeclareCommands declareCommands = new PacketDeclareCommands();
declareCommands.setCommands(Collections.emptyList());
PacketPlayerInfo info = new PacketPlayerInfo();
info.setUsername(server.getConfig().getPlayerListUsername());
info.setGameMode(server.getConfig().getGameMode());
info.setUuid(uuid);
PACKET_LOGIN_SUCCESS = PacketSnapshot.of(loginSuccess);
PACKET_JOIN_GAME = PacketSnapshot.of(joinGame);
PACKET_PLAYER_ABILITIES = PacketSnapshot.of(playerAbilities);
PACKET_PLAYER_POS = PacketSnapshot.of(positionAndLook);
PACKET_PLAYER_INFO = PacketSnapshot.of(info);
PACKET_DECLARE_COMMANDS = PacketSnapshot.of(declareCommands);
if (server.getConfig().isUsePlayerList()) {
PacketPlayerInfo info = new PacketPlayerInfo();
info.setUsername(server.getConfig().getPlayerListUsername());
info.setGameMode(server.getConfig().getGameMode());
info.setUuid(uuid);
PACKET_PLAYER_INFO = PacketSnapshot.of(info);
if (server.getConfig().isUseHeaderAndFooter()) {
PacketPlayerListHeader header = new PacketPlayerListHeader();
header.setHeader(server.getConfig().getPlayerListHeader());
header.setFooter(server.getConfig().getPlayerListFooter());
PACKET_HEADER_AND_FOOTER = PacketSnapshot.of(header);
}
if (server.getConfig().isUseHeaderAndFooter()) {
PacketPlayerListHeader header = new PacketPlayerListHeader();
header.setHeader(server.getConfig().getPlayerListHeader());
header.setFooter(server.getConfig().getPlayerListFooter());
PACKET_HEADER_AND_FOOTER = PacketSnapshot.of(header);
}
if (server.getConfig().isUseBrandName()){

View File

@ -20,12 +20,12 @@ ping:
dimension: THE_END
# Whether to display the player in the player list
# For 1.16.5 clients player list will be sent even if disabled, to avoid crash
playerList:
enable: false
username: 'NanoLimbo'
# Whether to display header and footer in player list
# Enable it only if you enabled playerList
headerAndFooter:
enable: false
header: '{"text": "&eWelcome!"}'