From f6579918d92ecbdc198f21c70f3ddd8e08276c65 Mon Sep 17 00:00:00 2001 From: Pieter-Jan Briers Date: Mon, 20 Apr 2020 10:09:58 +0200 Subject: [PATCH] Fix crash when moving after deleting the grid you were previously on. --- Content.Server/GameObjects/EntitySystems/MoverSystem.cs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/Content.Server/GameObjects/EntitySystems/MoverSystem.cs b/Content.Server/GameObjects/EntitySystems/MoverSystem.cs index 82a38ca8ca..65282a8a74 100644 --- a/Content.Server/GameObjects/EntitySystems/MoverSystem.cs +++ b/Content.Server/GameObjects/EntitySystems/MoverSystem.cs @@ -149,8 +149,13 @@ namespace Content.Server.GameObjects.EntitySystems transform.LocalRotation = mover.VelocityDir.GetDir().ToAngle(); // Handle footsteps. - var distance = transform.GridPosition.Distance(_mapManager, mover.LastPosition); - mover.StepSoundDistance += distance; + if (_mapManager.GridExists(mover.LastPosition.GridID)) + { + // Can happen when teleporting between grids. + var distance = transform.GridPosition.Distance(_mapManager, mover.LastPosition); + mover.StepSoundDistance += distance; + } + mover.LastPosition = transform.GridPosition; float distanceNeeded; if (mover.Sprinting)