From 3967ecf098e16ee85ad3a8e2062cd3dcbae5cdda Mon Sep 17 00:00:00 2001 From: Vera Aguilera Puerto Date: Sun, 28 Feb 2021 17:42:11 +0100 Subject: [PATCH] Fixes a crash when an entity goes off-grid. (hehe) Now, it performs a TryGetGrid instead of GetGrid. --- .../Physics/Controllers/SharedTileFrictionController.cs | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/Content.Shared/Physics/Controllers/SharedTileFrictionController.cs b/Content.Shared/Physics/Controllers/SharedTileFrictionController.cs index a26cc4ffb5..e8b87840ca 100644 --- a/Content.Shared/Physics/Controllers/SharedTileFrictionController.cs +++ b/Content.Shared/Physics/Controllers/SharedTileFrictionController.cs @@ -88,14 +88,10 @@ namespace Content.Shared.Physics.Controllers [Pure] private float GetTileFriction(IPhysBody body) { - if (body.BodyStatus == BodyStatus.InAir || body.Entity.Transform.GridID == GridId.Invalid) + if (body.BodyStatus == BodyStatus.InAir || !_mapManager.TryGetGrid(body.Owner.Transform.GridID, out var grid)) return 0.0f; - var transform = body.Owner.Transform; - var coords = transform.Coordinates; - - var grid = _mapManager.GetGrid(coords.GetGridId(body.Owner.EntityManager)); - var tile = grid.GetTileRef(coords); + var tile = grid.GetTileRef(body.Owner.Transform.Coordinates); var tileDef = _tileDefinitionManager[tile.Tile.TypeId]; return tileDef.Friction; }