Fix sending Carpet tickrate to players without Carpet installed

Fixes #1772
This commit is contained in:
altrisi committed 2023-07-26 16:40:22 +02:00
1 parent dd902fd77c
commit 36908d6578
1 file changed
+2 -1
@@ -79,7 +79,7 @@ public class ServerNetworkHandler
else else
CarpetSettings.LOG.warn("Player "+playerEntity.getName().getString()+" joined with another carpet version: "+clientVersion); CarpetSettings.LOG.warn("Player "+playerEntity.getName().getString()+" joined with another carpet version: "+clientVersion);
DataBuilder data = DataBuilder.create(playerEntity.server);//;.withTickRate().withFrozenState().withTickPlayerActiveTimeout(); // .withSuperHotState() DataBuilder data = DataBuilder.create(playerEntity.server); // tickrate related settings are sent on world change
CarpetServer.settingsManager.getCarpetRules().forEach(data::withRule); CarpetServer.settingsManager.getCarpetRules().forEach(data::withRule);
CarpetServer.extensions.forEach(e -> { CarpetServer.extensions.forEach(e -> {
SettingsManager eManager = e.extensionSettingsManager(); SettingsManager eManager = e.extensionSettingsManager();
@@ -91,6 +91,7 @@ public class ServerNetworkHandler
} }
public static void sendPlayerLevelData(ServerPlayer player, ServerLevel level) { public static void sendPlayerLevelData(ServerPlayer player, ServerLevel level) {
if (CarpetSettings.superSecretSetting || !validCarpetPlayers.contains(player)) return;
DataBuilder data = DataBuilder.create(player.server).withTickRate().withFrozenState().withTickPlayerActiveTimeout(); // .withSuperHotState() DataBuilder data = DataBuilder.create(player.server).withTickRate().withFrozenState().withTickPlayerActiveTimeout(); // .withSuperHotState()
player.connection.send(new ClientboundCustomPayloadPacket(CarpetClient.CARPET_CHANNEL, data.build() )); player.connection.send(new ClientboundCustomPayloadPacket(CarpetClient.CARPET_CHANNEL, data.build() ));