using System.Collections;
using Content.Shared._Lavaland.Shuttles.Systems;
using Content.Shared.Tag;
using Robust.Shared.GameStates;
using Robust.Shared.Map;
using Robust.Shared.Prototypes;
using Robust.Shared.Serialization;
namespace Content.Shared._Lavaland.Shuttles.Components;
///
/// Component that stores destinations a docking-only shuttle can use.
/// Used by to access destinations.
///
[RegisterComponent, NetworkedComponent, Access(typeof(SharedDockingShuttleSystem))]
public sealed partial class DockingShuttleComponent : Component
{
///
/// The station this shuttle belongs to.
///
[DataField]
public EntityUid? Station;
///
/// Every destination this console can FTL to.
///
[DataField]
public List Destinations = new();
///
/// Location UID list
///
[DataField]
public List LocationUID = new();
///
/// Airlock tag that it will prioritize docking to.
///
[DataField]
public ProtoId DockTag = "DockMining";
public int? currentlocation;
}
///
/// A map a shuttle can FTL to.
/// Created automatically on shuttle mapinit.
///
[DataDefinition, Serializable, NetSerializable]
public partial struct DockingDestination
{
///
/// The name of the destination to use in UI.
///
[DataField]
public LocId Name;
///
/// The map ID.
///
[DataField]
public MapId Map;
}