diff --git a/Robust.Client/GameObjects/ClientEntityManager.Spawn.cs b/Robust.Client/GameObjects/ClientEntityManager.Spawn.cs index a83ef38a9a2..46a97463b6b 100644 --- a/Robust.Client/GameObjects/ClientEntityManager.Spawn.cs +++ b/Robust.Client/GameObjects/ClientEntityManager.Spawn.cs @@ -40,6 +40,13 @@ public override EntityUid PredictedSpawnAtPosition(string? protoName, EntityCoor return ent; } + public override EntityUid PredictedSpawnAtPosition(string? protoName, EntityCoordinates coordinates, Angle rotation, ComponentRegistry? overrides = null) + { + var ent = SpawnAtPosition(protoName, coordinates, rotation, overrides); + FlagPredicted(ent); + return ent; + } + public override bool PredictedTrySpawnNextTo( string? protoName, EntityUid target, diff --git a/Robust.Shared/GameObjects/EntityManager.Spawn.cs b/Robust.Shared/GameObjects/EntityManager.Spawn.cs index 94a86489b37..046cf3deab5 100644 --- a/Robust.Shared/GameObjects/EntityManager.Spawn.cs +++ b/Robust.Shared/GameObjects/EntityManager.Spawn.cs @@ -125,7 +125,11 @@ public virtual EntityUid Spawn(string? protoName, MapCoordinates coordinates, Co [MethodImpl(MethodImplOptions.AggressiveInlining)] public EntityUid SpawnAtPosition(string? protoName, EntityCoordinates coordinates, ComponentRegistry? overrides = null) - => Spawn(protoName, _xforms.ToMapCoordinates(coordinates), overrides); + => SpawnAtPosition(protoName, coordinates, _xforms.GetWorldRotation(coordinates.EntityId), overrides); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public EntityUid SpawnAtPosition(string? protoName, EntityCoordinates coordinates, Angle rotation, ComponentRegistry? overrides = null) + => Spawn(protoName, _xforms.ToMapCoordinates(coordinates), overrides, rotation: rotation); public bool TrySpawnNextTo( string? protoName, @@ -254,6 +258,11 @@ public virtual EntityUid PredictedSpawnAtPosition(string? protoName, EntityCoord return SpawnAtPosition(protoName, coordinates, overrides); } + public virtual EntityUid PredictedSpawnAtPosition(string? protoName, EntityCoordinates coordinates, Angle rotation, ComponentRegistry? overrides = null) + { + return SpawnAtPosition(protoName, coordinates, rotation, overrides); + } + public virtual bool PredictedTrySpawnNextTo( string? protoName, EntityUid target,