Change method of time acceleration

This commit is contained in:
zontreck 2025-03-11 00:37:46 -07:00
parent 720dafea87
commit d2b92f95c5
4 changed files with 157 additions and 4 deletions

View file

@ -0,0 +1,34 @@
using System;
using Vintagestory.API.Client;
using Vintagestory.API.Common;
public class ASUModClient : ModSystem
{
public static ICoreClientAPI CAPI;
bool accel = false;
public override bool ShouldLoad(EnumAppSide forSide)
{
return forSide == EnumAppSide.Client;
}
public override void StartClientSide(ICoreClientAPI api)
{
CAPI = api;
api.Network.RegisterChannel("asutimeaccel")
.RegisterMessageType<ASUTimeAcceleration>()
.SetMessageHandler<ASUTimeAcceleration>(onReceiveTimeAccel);
}
private void onReceiveTimeAccel(ASUTimeAcceleration packet)
{
// Time acceleration handler
accel = packet.Sleeping;
if (accel)
{
CAPI.World.Calendar.SetTimeSpeedModifier("asu_psp", 500);
}
else CAPI.World.Calendar.RemoveTimeSpeedModifier("asu_psp");
}
}