protected override void Awake() { base.Awake(); Connection = new GameObject("Connection"); CameraManager.Instance.CurrentCamera = GameObject.Find("Main Camera").GetComponent <Camera>(); DontDestroyOnLoad(GameObject.Find("EventSystem")); if (_firstStart) { API.ConsoleFramework.Console.Init(); } else { API.ConsoleFramework.Console.Instance.ClearCommands(); } DefaultConsoleCommands defaultCmds = new DefaultConsoleCommands(); API.ConsoleFramework.Console.Instance.RegisterCommands(defaultCmds); if (_firstStart) { InternalObjectUtils.CheckObjects(); if (!Debug.isDebugBuild && SteamAPI.RestartAppIfNecessary(GameInfo.ID)) { Application.Quit(); return; } Fading.Init(); _parser = new FluentCommandLineParser <ApplicationArguments>(); _parser.Setup(arg => arg.Dedicated) .As('d', "dedicated") .Callback(DedicatedCallback) .SetDefault(false); _parser.Setup(arg => arg.Lan) .As('l', "lan") .SetDefault(false); var result = _parser.Parse(Environment.GetCommandLineArgs()); if (result.HasErrors) { LogUtils.LogError("Couldn't parse arguments: " + result.ErrorText); } _firstStart = false; } #if !UNITY_EDITOR LogUtils.Debug("Commandline: " + Environment.CommandLine); if (Debug.isDebugBuild) { LogUtils.Debug("##### Debug build #####"); } #endif }