using Content.Shared.Shuttles.Systems; using Robust.Shared.GameStates; namespace Content.Shared.Shuttles.Components; /// /// Handles what a grid should look like on radar. /// [RegisterComponent, NetworkedComponent, AutoGenerateComponentState] [Access(typeof(SharedShuttleSystem))] public sealed partial class IFFComponent : Component { public static readonly Color SelfColor = Color.MediumSpringGreen; /// /// Default color to use for IFF if no component is found. /// public static readonly Color IFFColor = Color.Gold; [ViewVariables(VVAccess.ReadWrite), DataField, AutoNetworkedField] public IFFFlags Flags = IFFFlags.None; /// /// Color for this to show up on IFF. /// [ViewVariables(VVAccess.ReadWrite), DataField, AutoNetworkedField] public Color Color = IFFColor; } [Flags] public enum IFFFlags : byte { None = 0, /// /// Should the label for this grid be hidden at all ranges. /// HideLabel, /// /// Should the grid hide entirely (AKA full stealth). /// Will also hide the label if that is not set. /// Hide, // TODO: Need one that hides its outline, just replace it with a bunch of triangles or lines or something. }