Allow actions to specify if they want to rotate the user when targeting (#37958)
This commit is contained in:
@@ -348,7 +348,9 @@ public abstract class SharedActionsSystem : EntitySystem
|
||||
var target = GetEntity(netTarget);
|
||||
|
||||
var targetWorldPos = _transform.GetWorldPosition(target);
|
||||
_rotateToFace.TryFaceCoordinates(user, targetWorldPos);
|
||||
|
||||
if (ent.Comp.RotateOnUse)
|
||||
_rotateToFace.TryFaceCoordinates(user, targetWorldPos);
|
||||
|
||||
if (!ValidateEntityTarget(user, target, ent))
|
||||
return;
|
||||
@@ -369,7 +371,9 @@ public abstract class SharedActionsSystem : EntitySystem
|
||||
|
||||
var user = args.User;
|
||||
var target = GetCoordinates(netTarget);
|
||||
_rotateToFace.TryFaceCoordinates(user, target.ToMapPos(EntityManager, _transform));
|
||||
|
||||
if (ent.Comp.RotateOnUse)
|
||||
_rotateToFace.TryFaceCoordinates(user, _transform.ToMapCoordinates(target).Position);
|
||||
|
||||
if (!ValidateWorldTarget(user, target, ent))
|
||||
return;
|
||||
@@ -604,7 +608,7 @@ public abstract class SharedActionsSystem : EntitySystem
|
||||
return AddAction(performer, ref actionId, out _, actionPrototypeId, container, component);
|
||||
}
|
||||
|
||||
/// <inheritdoc cref="AddAction(Robust.Shared.GameObjects.EntityUid,ref System.Nullable{Robust.Shared.GameObjects.EntityUid},string?,Robust.Shared.GameObjects.EntityUid,Content.Shared.Actions.ActionsComponent?)"/>
|
||||
/// <inheritdoc cref="AddAction(Robust.Shared.GameObjects.EntityUid,ref System.Nullable{Robust.Shared.GameObjects.EntityUid},string?,Robust.Shared.GameObjects.EntityUid,ActionsComponent?)"/>
|
||||
public bool AddAction(EntityUid performer,
|
||||
[NotNullWhen(true)] ref EntityUid? actionId,
|
||||
[NotNullWhen(true)] out ActionComponent? action,
|
||||
|
||||
Reference in New Issue
Block a user