diff --git a/Content.Client/GameObjects/EntitySystems/IconSmoothSystem.cs b/Content.Client/GameObjects/EntitySystems/IconSmoothSystem.cs index 9cd35a72f4..901178e9ec 100644 --- a/Content.Client/GameObjects/EntitySystems/IconSmoothSystem.cs +++ b/Content.Client/GameObjects/EntitySystems/IconSmoothSystem.cs @@ -79,10 +79,9 @@ namespace Content.Client.GameObjects.EntitySystems } } - if (ev.LastPosition.HasValue) + // Entity is no longer valid, update around the last position it was at. + if (ev.LastPosition.HasValue && _mapManager.TryGetGrid(ev.LastPosition.Value.grid, out var grid)) { - // Entity is no longer valid, update around the last position it was at. - var grid = _mapManager.GetGrid(ev.LastPosition.Value.grid); var pos = ev.LastPosition.Value.pos; AddValidEntities(grid.GetSnapGridCell(pos + new MapIndices(1, 0), ev.Offset)); diff --git a/Content.Client/GameObjects/EntitySystems/SubFloorHideSystem.cs b/Content.Client/GameObjects/EntitySystems/SubFloorHideSystem.cs index 0551de45de..9a51fb4d8e 100644 --- a/Content.Client/GameObjects/EntitySystems/SubFloorHideSystem.cs +++ b/Content.Client/GameObjects/EntitySystems/SubFloorHideSystem.cs @@ -60,7 +60,11 @@ namespace Content.Client.GameObjects.EntitySystems private void HandleDirtyEvent(SubFloorHideDirtyEvent ev) { - var grid = _mapManager.GetGrid(ev.Sender.Transform.GridID); + if (!_mapManager.TryGetGrid(ev.Sender.Transform.GridID, out var grid)) + { + return; + } + var indices = grid.WorldToTile(ev.Sender.Transform.WorldPosition); UpdateTile(grid, indices); }