2024-01-28 18:37:24 +07:00
|
|
|
using Content.Shared._White.JoinQueue;
|
2023-04-25 19:46:20 +06:00
|
|
|
using Robust.Client.State;
|
|
|
|
|
using Robust.Shared.Network;
|
|
|
|
|
|
2024-01-28 17:32:55 +07:00
|
|
|
namespace Content.Client._White.JoinQueue;
|
2023-04-25 19:46:20 +06:00
|
|
|
|
|
|
|
|
public sealed class JoinQueueManager
|
|
|
|
|
{
|
|
|
|
|
[Dependency] private readonly IClientNetManager _netManager = default!;
|
|
|
|
|
[Dependency] private readonly IStateManager _stateManager = default!;
|
|
|
|
|
|
|
|
|
|
public void Initialize()
|
|
|
|
|
{
|
|
|
|
|
_netManager.RegisterNetMessage<MsgQueueUpdate>(OnQueueUpdate);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void OnQueueUpdate(MsgQueueUpdate msg)
|
|
|
|
|
{
|
|
|
|
|
if (_stateManager.CurrentState is not QueueState)
|
|
|
|
|
{
|
|
|
|
|
_stateManager.RequestStateChange<QueueState>();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
((QueueState) _stateManager.CurrentState).OnQueueUpdate(msg);
|
|
|
|
|
}
|
|
|
|
|
}
|