Optimise mob movement (#21978)
This commit is contained in:
@@ -16,6 +16,7 @@ using Robust.Shared.Audio.Systems;
|
|||||||
using Robust.Shared.Configuration;
|
using Robust.Shared.Configuration;
|
||||||
using Robust.Shared.Containers;
|
using Robust.Shared.Containers;
|
||||||
using Robust.Shared.Map;
|
using Robust.Shared.Map;
|
||||||
|
using Robust.Shared.Map.Components;
|
||||||
using Robust.Shared.Physics;
|
using Robust.Shared.Physics;
|
||||||
using Robust.Shared.Physics.Components;
|
using Robust.Shared.Physics.Components;
|
||||||
using Robust.Shared.Physics.Controllers;
|
using Robust.Shared.Physics.Controllers;
|
||||||
@@ -190,8 +191,8 @@ namespace Content.Shared.Movement.Systems
|
|||||||
|
|
||||||
// Don't bother getting the tiledef here if we're weightless or in-air
|
// Don't bother getting the tiledef here if we're weightless or in-air
|
||||||
// since no tile-based modifiers should be applying in that situation
|
// since no tile-based modifiers should be applying in that situation
|
||||||
if (_mapManager.TryFindGridAt(xform.MapPosition, out var grid, out var gridComp)
|
if (TryComp(xform.GridUid, out MapGridComponent? gridComp)
|
||||||
&& _mapSystem.TryGetTileRef(grid, gridComp, xform.Coordinates, out var tile)
|
&& _mapSystem.TryGetTileRef(xform.GridUid.Value, gridComp, xform.Coordinates, out var tile)
|
||||||
&& !(weightless || physicsComponent.BodyStatus == BodyStatus.InAir))
|
&& !(weightless || physicsComponent.BodyStatus == BodyStatus.InAir))
|
||||||
{
|
{
|
||||||
tileDef = (ContentTileDefinition) _tileDefinitionManager[tile.Tile.TypeId];
|
tileDef = (ContentTileDefinition) _tileDefinitionManager[tile.Tile.TypeId];
|
||||||
|
|||||||
Reference in New Issue
Block a user