using Content.Shared.GPS.Components; using Content.Shared.Examine; using Robust.Shared.Map; namespace Content.Shared.GPS.Systems; public sealed class HandheldGpsSystem : EntitySystem { [Dependency] private readonly SharedTransformSystem _transform = default!; /// public override void Initialize() { base.Initialize(); SubscribeLocalEvent(OnExamine); } /// /// Handles showing the coordinates when a GPS is examined. /// private void OnExamine(Entity ent, ref ExaminedEvent args) { var posText = "Error"; var pos = _transform.GetMapCoordinates(ent); if (pos.MapId != MapId.Nullspace) { var x = (int) pos.Position.X; var y = (int) pos.Position.Y; posText = $"({x}, {y})"; } args.PushMarkup(Loc.GetString("handheld-gps-coordinates-title", ("coordinates", posText))); } }