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";
}