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