diff --git a/Content.Client/Access/UI/IdCardConsoleBoundUserInterface.cs b/Content.Client/Access/UI/IdCardConsoleBoundUserInterface.cs index 1cdefc343b..819ac7f442 100644 --- a/Content.Client/Access/UI/IdCardConsoleBoundUserInterface.cs +++ b/Content.Client/Access/UI/IdCardConsoleBoundUserInterface.cs @@ -11,6 +11,7 @@ namespace Content.Client.Access.UI public class IdCardConsoleBoundUserInterface : BoundUserInterface { [Dependency] private readonly IPrototypeManager _prototypeManager = default!; + [Dependency] private readonly IEntityManager _entityManager = default!; public IdCardConsoleBoundUserInterface(ClientUserInterfaceComponent owner, object uiKey) : base(owner, uiKey) { @@ -22,7 +23,7 @@ namespace Content.Client.Access.UI { base.Open(); - _window = new IdCardConsoleWindow(this, _prototypeManager) {Title = IoCManager.Resolve().GetComponent(Owner.Owner).EntityName}; + _window = new IdCardConsoleWindow(this, _prototypeManager) {Title = _entityManager.GetComponent(Owner.Owner).EntityName}; _window.OnClose += Close; _window.OpenCentered(); } diff --git a/Content.Client/Animations/ReusableAnimations.cs b/Content.Client/Animations/ReusableAnimations.cs index 5afd1124c8..59b333e20f 100644 --- a/Content.Client/Animations/ReusableAnimations.cs +++ b/Content.Client/Animations/ReusableAnimations.cs @@ -12,23 +12,24 @@ namespace Content.Client.Animations { public static class ReusableAnimations { - public static void AnimateEntityPickup(EntityUid entity, EntityCoordinates initialPosition, Vector2 finalPosition) + public static void AnimateEntityPickup(EntityUid entity, EntityCoordinates initialPosition, Vector2 finalPosition, IEntityManager? entMan = null) { - var animatableClone = IoCManager.Resolve().SpawnEntity("clientsideclone", initialPosition); - string val = IoCManager.Resolve().GetComponent(entity).EntityName; - IoCManager.Resolve().GetComponent(animatableClone).EntityName = val; + IoCManager.Resolve(ref entMan); + var animatableClone = entMan.SpawnEntity("clientsideclone", initialPosition); + string val = entMan.GetComponent(entity).EntityName; + entMan.GetComponent(animatableClone).EntityName = val; - if (!IoCManager.Resolve().TryGetComponent(entity, out SpriteComponent? sprite0)) + if (!entMan.TryGetComponent(entity, out SpriteComponent? sprite0)) { - Logger.Error("Entity ({0}) couldn't be animated for pickup since it doesn't have a {1}!", IoCManager.Resolve().GetComponent(entity).EntityName, nameof(SpriteComponent)); + Logger.Error("Entity ({0}) couldn't be animated for pickup since it doesn't have a {1}!", entMan.GetComponent(entity).EntityName, nameof(SpriteComponent)); return; } - var sprite = IoCManager.Resolve().GetComponent(animatableClone); + var sprite = entMan.GetComponent(animatableClone); sprite.CopyFrom(sprite0); - var animations = IoCManager.Resolve().GetComponent(animatableClone); + var animations = entMan.GetComponent(animatableClone); animations.AnimationCompleted += (_) => { - IoCManager.Resolve().DeleteEntity(animatableClone); + entMan.DeleteEntity(animatableClone); }; animations.Play(new Animation diff --git a/Content.Client/Hands/Systems/HandsSystem.cs b/Content.Client/Hands/Systems/HandsSystem.cs index ea38663bbc..c3abe34cb4 100644 --- a/Content.Client/Hands/Systems/HandsSystem.cs +++ b/Content.Client/Hands/Systems/HandsSystem.cs @@ -62,7 +62,7 @@ namespace Content.Client.Hands if (!_gameTiming.IsFirstTimePredicted) return; - ReusableAnimations.AnimateEntityPickup(msg.EntityUid, msg.InitialPosition, msg.FinalPosition); + ReusableAnimations.AnimateEntityPickup(msg.EntityUid, msg.InitialPosition, msg.FinalPosition, EntityManager); } public HandsGuiState GetGuiState() diff --git a/Content.Client/Storage/ClientStorageComponent.cs b/Content.Client/Storage/ClientStorageComponent.cs index 71e960c4fd..b86239c568 100644 --- a/Content.Client/Storage/ClientStorageComponent.cs +++ b/Content.Client/Storage/ClientStorageComponent.cs @@ -124,7 +124,7 @@ namespace Content.Client.Storage if (_entityManager.EntityExists(entity)) { - ReusableAnimations.AnimateEntityPickup(entity, initialPosition, _entityManager.GetComponent(Owner).LocalPosition); + ReusableAnimations.AnimateEntityPickup(entity, initialPosition, _entityManager.GetComponent(Owner).LocalPosition, _entityManager); } } }