yeet most of tick

This commit is contained in:
gnembon committed 2023-10-25 17:06:53 +02:00
1 parent 2c01a98216
commit 1a7e8b6875
30 files changed
+156 -1420

No files matched your search

@@ -5,8 +5,6 @@ import carpet.CarpetExtension;
import carpet.CarpetSettings;
import carpet.api.settings.CarpetRule;
import carpet.api.settings.InvalidRuleValueException;
import carpet.fakes.LevelInterface;
import carpet.helpers.TickRateManager;
import carpet.api.settings.SettingsManager;
import java.util.HashMap;
@@ -14,10 +12,8 @@ import java.util.Map;
import java.util.function.BiConsumer;
import net.minecraft.client.player.LocalPlayer;
import net.minecraft.nbt.ByteTag;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.nbt.ListTag;
import net.minecraft.nbt.NumericTag;
import net.minecraft.nbt.Tag;
import net.minecraft.network.protocol.common.ServerboundCustomPayloadPacket;
@@ -75,23 +71,6 @@ public class ClientNetworkHandler
}
}
});
dataHandlers.put("TickRate", (p, t) -> {
TickRateManager tickRateManager = ((LevelInterface) p.clientLevel).tickRateManager();
tickRateManager.setTickRate(((NumericTag) t).getAsFloat());
});
dataHandlers.put("TickingState", (p, t) -> {
CompoundTag tickingState = (CompoundTag) t;
TickRateManager tickRateManager = ((LevelInterface) p.clientLevel).tickRateManager();
tickRateManager.setFrozenState(tickingState.getBoolean("is_paused"), tickingState.getBoolean("deepFreeze"));
});
dataHandlers.put("SuperHotState", (p, t) -> {
TickRateManager tickRateManager = ((LevelInterface) p.clientLevel).tickRateManager();
tickRateManager.setSuperHot(t.equals(ByteTag.ONE));
});
dataHandlers.put("TickPlayerActiveTimeout", (p, t) -> {
TickRateManager tickRateManager = ((LevelInterface) p.clientLevel).tickRateManager();
tickRateManager.setPlayerActiveTimeout(((NumericTag) t).getAsInt());
});
dataHandlers.put("scShape", (p, t) -> { // deprecated // and unused // should remove for 1.17
if (CarpetClient.shapes != null)
{
@@ -4,9 +4,7 @@ import carpet.CarpetServer;
import carpet.CarpetSettings;
import carpet.api.settings.CarpetRule;
import carpet.api.settings.RuleHelper;
import carpet.fakes.MinecraftServerInterface;
import carpet.fakes.ServerGamePacketListenerImplInterface;
import carpet.helpers.ServerTickRateManager;
import carpet.script.utils.SnoopyCommandSource;
import java.util.ArrayList;
@@ -72,10 +70,11 @@ public class ServerNetworkHandler
{
if (CarpetSettings.superSecretSetting || !validCarpetPlayers.contains(player))
{
return;
//return;
}
DataBuilder data = DataBuilder.create(player.server).withTickRate().withFrozenState().withTickPlayerActiveTimeout(); // .withSuperHotState()
player.connection.send(data.build());
// noop, used to send ticking information
//DataBuilder data = DataBuilder.create(player.server);//.withTickRate().withFrozenState().withTickPlayerActiveTimeout(); // .withSuperHotState()
//player.connection.send(data.build());
}
private static void handleClientCommand(ServerPlayer player, CompoundTag commandData)
@@ -140,54 +139,6 @@ public class ServerNetworkHandler
}
}
public static void updateTickSpeedToConnectedPlayers(MinecraftServer server)
{
if (CarpetSettings.superSecretSetting)
{
return;
}
for (ServerPlayer player : validCarpetPlayers)
{
player.connection.send(DataBuilder.create(player.server).withTickRate().build());
}
}
public static void updateFrozenStateToConnectedPlayers(MinecraftServer server)
{
if (CarpetSettings.superSecretSetting)
{
return;
}
for (ServerPlayer player : validCarpetPlayers)
{
player.connection.send(DataBuilder.create(player.server).withFrozenState().build());
}
}
public static void updateSuperHotStateToConnectedPlayers(MinecraftServer server)
{
if (CarpetSettings.superSecretSetting)
{
return;
}
for (ServerPlayer player : validCarpetPlayers)
{
player.connection.send(DataBuilder.create(player.server).withSuperHotState().build());
}
}
public static void updateTickPlayerActiveTimeoutToConnectedPlayers(MinecraftServer server)
{
if (CarpetSettings.superSecretSetting)
{
return;
}
for (ServerPlayer player : validCarpetPlayers)
{
player.connection.send(DataBuilder.create(player.server).withTickPlayerActiveTimeout().build());
}
}
public static void broadcastCustomCommand(String command, Tag data)
{
if (CarpetSettings.superSecretSetting)
@@ -249,6 +200,7 @@ public class ServerNetworkHandler
private static class DataBuilder
{
private CompoundTag tag;
// unused now, but hey
private MinecraftServer server;
private static DataBuilder create(final MinecraftServer server)
@@ -262,37 +214,6 @@ public class ServerNetworkHandler
this.server = server;
}
private DataBuilder withTickRate()
{
ServerTickRateManager trm = ((MinecraftServerInterface) server).getTickRateManager();
tag.putFloat("TickRate", trm.tickrate());
return this;
}
private DataBuilder withFrozenState()
{
ServerTickRateManager trm = ((MinecraftServerInterface) server).getTickRateManager();
CompoundTag tickingState = new CompoundTag();
tickingState.putBoolean("is_paused", trm.gameIsPaused());
tickingState.putBoolean("deepFreeze", trm.deeplyFrozen());
tag.put("TickingState", tickingState);
return this;
}
private DataBuilder withSuperHotState()
{
ServerTickRateManager trm = ((MinecraftServerInterface) server).getTickRateManager();
tag.putBoolean("SuperHotState", trm.isSuperHot());
return this;
}
private DataBuilder withTickPlayerActiveTimeout()
{
ServerTickRateManager trm = ((MinecraftServerInterface) server).getTickRateManager();
tag.putInt("TickPlayerActiveTimeout", trm.getPlayerActiveTimeout());
return this;
}
private DataBuilder withRule(CarpetRule<?> rule)
{
CompoundTag rules = (CompoundTag) tag.get("Rules");