using Robust.Shared.GameStates; using Robust.Shared.Prototypes; namespace Content.Shared.Silicons.StationAi; /// /// Indicates this entity can interact with station equipment and is a "Station AI". /// [RegisterComponent, NetworkedComponent, AutoGenerateComponentState] public sealed partial class StationAiCoreComponent : Component { /* * I couldn't think of any other reason you'd want to split these out. */ /// /// Can it move its camera around and interact remotely with things. /// When false, the AI is being projected into a local area, such as a holopad /// [DataField, AutoNetworkedField] public bool Remote = true; /// /// The invisible eye entity being used to look around. /// [DataField, AutoNetworkedField] public EntityUid? RemoteEntity; /// /// Prototype that represents the 'eye' of the AI /// [DataField(readOnly: true)] public EntProtoId? RemoteEntityProto = "StationAiHolo"; /// /// Prototype that represents the physical avatar of the AI /// [DataField(readOnly: true)] public EntProtoId? PhysicalEntityProto = "StationAiHoloLocal"; public const string Container = "station_ai_mind_slot"; }