Files
tbd-station-14/Content.Shared/Shuttles/BUIStates/RadarConsoleBoundInterfaceState.cs
2022-07-09 02:25:32 -07:00

56 lines
1.3 KiB
C#

using Robust.Shared.Map;
using Robust.Shared.Serialization;
namespace Content.Shared.Shuttles.BUIStates;
[Serializable, NetSerializable]
[Virtual]
public class RadarConsoleBoundInterfaceState : BoundUserInterfaceState
{
public readonly float MaxRange;
/// <summary>
/// The relevant coordinates to base the radar around.
/// </summary>
public EntityCoordinates? Coordinates;
/// <summary>
/// The relevant rotation to rotate the angle around.
/// </summary>
public Angle? Angle;
public readonly List<DockingInterfaceState> Docks;
public RadarConsoleBoundInterfaceState(
float maxRange,
EntityCoordinates? coordinates,
Angle? angle,
List<DockingInterfaceState> docks)
{
MaxRange = maxRange;
Coordinates = coordinates;
Angle = angle;
Docks = docks;
}
}
/// <summary>
/// State of each individual docking port for interface purposes
/// </summary>
[Serializable, NetSerializable]
public sealed class DockingInterfaceState
{
public EntityCoordinates Coordinates;
public Angle Angle;
public EntityUid Entity;
public bool Connected;
public Color Color;
public Color HighlightedColor;
}
[Serializable, NetSerializable]
public enum RadarConsoleUiKey : byte
{
Key
}