diff --git a/Robust.Client/Player/LocalPlayer.cs b/Robust.Client/Player/LocalPlayer.cs
index 0e88dfa2a7..fcace4e08c 100644
--- a/Robust.Client/Player/LocalPlayer.cs
+++ b/Robust.Client/Player/LocalPlayer.cs
@@ -56,7 +56,7 @@ namespace Robust.Client.Player
/// Attaches a client to an entity.
///
/// Entity to attach the client to.
- public void AttachEntity(EntityUid entity)
+ public void AttachEntity(EntityUid entity, IEntityManager entMan, IBaseClient client)
{
if (ControlledEntity == entity)
return;
@@ -64,8 +64,6 @@ namespace Robust.Client.Player
// Detach and cleanup first
DetachEntity();
- var entMan = IoCManager.Resolve();
-
if (!entMan.EntityExists(entity))
{
Logger.Error($"Attempting to attach player to non-existent entity {entity}!");
@@ -80,7 +78,7 @@ namespace Robust.Client.Player
{
eye = entMan.AddComponent(entity);
- if (IoCManager.Resolve().RunLevel != ClientRunLevel.SinglePlayerGame)
+ if (client.RunLevel != ClientRunLevel.SinglePlayerGame)
{
Logger.Warning($"Attaching local player to an entity {entMan.ToPrettyString(entity)} without an eye. This eye will not be netsynced and may cause issues.");
}
diff --git a/Robust.Client/Player/PlayerManager.cs b/Robust.Client/Player/PlayerManager.cs
index 5286e1e4c6..3814090b00 100644
--- a/Robust.Client/Player/PlayerManager.cs
+++ b/Robust.Client/Player/PlayerManager.cs
@@ -23,6 +23,7 @@ namespace Robust.Client.Player
{
[Dependency] private readonly IClientNetManager _network = default!;
[Dependency] private readonly IBaseClient _client = default!;
+ [Dependency] private readonly IEntityManager _entManager = default!;
///
/// Active sessions of connected clients to the server.
@@ -153,7 +154,7 @@ namespace Robust.Client.Player
return;
}
- LocalPlayer.AttachEntity(entity.Value);
+ LocalPlayer.AttachEntity(entity.Value, _entManager, _client);
}
///