using Content.Shared.Station;
namespace Content.Client.Station;
///
/// This handles letting the client know stations are a thing. Only really used by an admin menu.
///
public sealed class StationSystem : EntitySystem
{
private readonly List<(string Name, NetEntity Entity)> _stations = new();
///
/// All stations that currently exist.
///
///
/// I'd have this just invoke an entity query, but we're on the client and the client barely knows about stations.
///
public IReadOnlyList<(string Name, NetEntity Entity)> Stations => _stations;
///
public override void Initialize()
{
SubscribeNetworkEvent(StationsUpdated);
}
private void StationsUpdated(StationsUpdatedEvent ev)
{
_stations.Clear();
// TODO this needs to be done in component states and with the Ensure() methods
_stations.AddRange(ev.Stations);
}
}