else
{
_xformSystem.AttachToGridOrMap(entity, xform);
+ var direction = holder.CurrentDirection == Direction.Invalid ? holder.PreviousDirection : holder.CurrentDirection;
- if (holder.PreviousDirection != Direction.Invalid && _xformQuery.TryGetComponent(xform.ParentUid, out var parentXform))
+ if (direction != Direction.Invalid && _xformQuery.TryGetComponent(gridUid, out var gridXform))
{
- var direction = holder.PreviousDirection.ToAngle();
- direction += _xformSystem.GetWorldRotation(parentXform);
- _throwing.TryThrow(entity, direction.ToWorldVec() * 3f, 10f);
+ var directionAngle = direction.ToAngle();
+ directionAngle += _xformSystem.GetWorldRotation(gridXform);
+ _throwing.TryThrow(entity, directionAngle.ToWorldVec() * 3f, 10f);
}
}
}