private void Awake() { if (instance != null && instance != this) { Destroy(gameObject); return; } instance = this; }
private void Start() { if (HighLogic.LoadedSceneIsEditor) { running = false; Destroy(gameObject); } if (!SEP_Utilities.partModulesLoaded) { SEP_Utilities.loadPartModules(); } if (!SEP_Utilities.antennaModulesLoaded) { SEP_Utilities.loadAntennaParts(); } if (!SEP_Utilities.spritesLoaded) { StartCoroutine(loadSprites()); } if (ResearchAndDevelopment.GetTechnologyState(transmissionNode) == RDTech.State.Available) { transmissionUpgrade = true; } else { transmissionUpgrade = false; } if (running) { Destroy(gameObject); } if (HighLogic.LoadedSceneIsFlight) { StartCoroutine(attachWindowListener()); } instance = this; running = true; usingCommNet = HighLogic.CurrentGame.Parameters.Difficulty.EnableCommNet; GameEvents.onLevelWasLoaded.Add(onReady); GameEvents.OnGameSettingsApplied.Add(onSettingsApplied); }
private void Start() { GameScenes scene = HighLogic.LoadedScene; if (scene == GameScenes.MAINMENU) { if (!SEP_Utilities.partModulesLoaded) { SEP_Utilities.loadPartModules(); } if (!SEP_Utilities.UIWindowReflectionLoaded) { SEP_Utilities.assignReflectionMethod(); } } if (!(scene == GameScenes.FLIGHT || scene == GameScenes.TRACKSTATION || scene == GameScenes.SPACECENTER)) { running = false; Destroy(gameObject); } if (ResearchAndDevelopment.GetTechnologyState(transmissionNode) == RDTech.State.Available) { transmissionUpgrade = true; } else { transmissionUpgrade = false; } if (running) { Destroy(gameObject); } if (scene == GameScenes.FLIGHT) { StartCoroutine(attachWindowListener()); } instance = this; running = true; GameEvents.onLevelWasLoaded.Add(onReady); }
private void OnDestroy() { if (instance == this) { instance = null; } GameEvents.onLevelWasLoaded.Remove(onReady); GameEvents.OnGameSettingsApplied.Remove(onSettingsApplied); var handlers = experiments.Values.SelectMany(e => e).ToList(); int l = handlers.Count; for (int i = 0; i < l; i++) { SEP_ExperimentHandler handler = handlers[i]; handler.OnDestroy(); } }