using System; using Robust.Client.Audio.Midi; using Robust.Client.Console; using Robust.Client.Debugging; using Robust.Client.GameObjects; using Robust.Client.GameStates; using Robust.Client.Graphics; using Robust.Client.Graphics.ClientEye; using Robust.Client.Graphics.Clyde; using Robust.Client.Graphics.Lighting; using Robust.Client.Graphics.Overlays; using Robust.Client.Input; using Robust.Client.Interfaces; using Robust.Client.Interfaces.Debugging; using Robust.Client.Interfaces.GameObjects; using Robust.Client.Interfaces.GameStates; using Robust.Client.Interfaces.Graphics; using Robust.Client.Interfaces.Graphics.ClientEye; using Robust.Client.Interfaces.Graphics.Lighting; using Robust.Client.Interfaces.Graphics.Overlays; using Robust.Client.Interfaces.Input; using Robust.Client.Interfaces.Map; using Robust.Client.Interfaces.Placement; using Robust.Client.Interfaces.ResourceManagement; using Robust.Client.Interfaces.State; using Robust.Client.Interfaces.UserInterface; using Robust.Client.Interfaces.Utility; using Robust.Client.Map; using Robust.Client.Placement; using Robust.Client.Player; using Robust.Client.Reflection; using Robust.Client.ResourceManagement; using Robust.Client.State; using Robust.Client.UserInterface; using Robust.Client.Utility; using Robust.Client.ViewVariables; using Robust.Shared; using Robust.Shared.GameObjects; using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.Interfaces.Map; using Robust.Shared.Interfaces.Network; using Robust.Shared.Interfaces.Reflection; using Robust.Shared.Interfaces.Resources; using Robust.Shared.IoC; using Robust.Shared.Network; using Robust.Shared.Prototypes; namespace Robust.Client { internal static class ClientIoC { public static void RegisterIoC(GameController.DisplayMode mode) { SharedIoC.RegisterIoC(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); switch (mode) { case GameController.DisplayMode.Headless: IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); break; case GameController.DisplayMode.Clyde: IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); #if LINUX IoCManager.Register(); #elif MACOS IoCManager.Register(); #elif WINDOWS IoCManager.Register(); #endif break; default: throw new ArgumentOutOfRangeException(); } IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); IoCManager.Register(); } } }