2021-02-27 04:12:09 +01:00
|
|
|
#nullable enable
|
2020-04-09 00:28:56 +02:00
|
|
|
using System;
|
|
|
|
|
using Robust.Shared.GameObjects;
|
|
|
|
|
using Robust.Shared.Serialization;
|
|
|
|
|
|
|
|
|
|
namespace Content.Shared.GameObjects.Components.Command
|
|
|
|
|
{
|
|
|
|
|
public class SharedCommunicationsConsoleComponent : Component
|
|
|
|
|
{
|
|
|
|
|
public override string Name => "CommunicationsConsole";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Serializable, NetSerializable]
|
|
|
|
|
public class CommunicationsConsoleInterfaceState : BoundUserInterfaceState
|
|
|
|
|
{
|
2021-03-13 23:21:57 -06:00
|
|
|
public readonly bool CanAnnounce;
|
2021-02-16 09:31:57 +01:00
|
|
|
public readonly bool CanCall;
|
2020-04-09 20:28:22 +02:00
|
|
|
public readonly TimeSpan? ExpectedCountdownEnd;
|
2020-04-09 00:28:56 +02:00
|
|
|
public readonly bool CountdownStarted;
|
|
|
|
|
|
2021-03-13 23:21:57 -06:00
|
|
|
public CommunicationsConsoleInterfaceState(bool canAnnounce, bool canCall, TimeSpan? expectedCountdownEnd = null)
|
2020-04-09 00:28:56 +02:00
|
|
|
{
|
2021-03-13 23:21:57 -06:00
|
|
|
CanAnnounce = canAnnounce;
|
2021-02-16 09:31:57 +01:00
|
|
|
CanCall = canCall;
|
2020-04-09 00:28:56 +02:00
|
|
|
ExpectedCountdownEnd = expectedCountdownEnd;
|
|
|
|
|
CountdownStarted = expectedCountdownEnd != null;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2021-03-13 23:21:57 -06:00
|
|
|
[Serializable, NetSerializable]
|
|
|
|
|
public class CommunicationsConsoleAnnounceMessage : BoundUserInterfaceMessage
|
|
|
|
|
{
|
|
|
|
|
public readonly string Message;
|
|
|
|
|
|
|
|
|
|
public CommunicationsConsoleAnnounceMessage(string message)
|
|
|
|
|
{
|
|
|
|
|
Message = message;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-04-09 00:28:56 +02:00
|
|
|
[Serializable, NetSerializable]
|
|
|
|
|
public class CommunicationsConsoleCallEmergencyShuttleMessage : BoundUserInterfaceMessage
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
2020-04-09 01:43:28 +02:00
|
|
|
[Serializable, NetSerializable]
|
|
|
|
|
public class CommunicationsConsoleRecallEmergencyShuttleMessage : BoundUserInterfaceMessage
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
2020-04-09 00:28:56 +02:00
|
|
|
[Serializable, NetSerializable]
|
|
|
|
|
public enum CommunicationsConsoleUiKey
|
|
|
|
|
{
|
|
|
|
|
Key
|
|
|
|
|
}
|
|
|
|
|
}
|