quantum-space-buddies/QSB/ClientServerStateSync/Messages/ClientStateMessage.cs
2021-12-23 13:57:33 -08:00

30 lines
656 B
C#

using OWML.Common;
using QSB.Messaging;
using QSB.Player;
using QSB.Utility;
namespace QSB.ClientServerStateSync.Messages
{
internal class ClientStateMessage : QSBEnumMessage<ClientState>
{
public ClientStateMessage(ClientState state) => Value = state;
public ClientStateMessage() { }
public override void OnReceiveLocal()
=> ClientStateManager.Instance.ChangeClientState(Value);
public override void OnReceiveRemote()
{
if (From == uint.MaxValue)
{
DebugLog.ToConsole($"Error - ID is uint.MaxValue!", MessageType.Error);
return;
}
var player = QSBPlayerManager.GetPlayer(From);
player.State = Value;
}
}
}