private void Awake() { if (HighLogic.CurrentGame.Mode == Game.Modes.SANDBOX) { Destroy(gameObject); } if (instance != null) { Destroy(gameObject); } if (!reflected) { assignReflection(); } if (!spritesLoaded) { loadSprite(); } instance = this; processPrefab(); }
private void Start() { ScienceRelayDialog.onDialogSpawn.Add(onSpawn); ScienceRelayDialog.onDialogClose.Add(onClose); GameEvents.OnTriggeredDataTransmission.Add(onTriggeredData); GameEvents.onGamePause.Add(onPause); GameEvents.onGameUnpause.Add(onUnpause); GameEvents.OnGameSettingsApplied.Add(onSettingsApplied); settings = HighLogic.CurrentGame.Parameters.CustomParams <ScienceRelayParameters>(); if (settings == null) { instance = null; Destroy(gameObject); } Assembly assembly = AssemblyLoader.loadedAssemblies.GetByAssembly(Assembly.GetExecutingAssembly()).assembly; var ainfoV = Attribute.GetCustomAttribute(assembly, typeof(AssemblyInformationalVersionAttribute)) as AssemblyInformationalVersionAttribute; switch (ainfoV == null) { case true: version = ""; break; default: version = ainfoV.InformationalVersion; break; } }
private void OnDestroy() { instance = null; popupDismiss(); ScienceRelayDialog.onDialogSpawn.Remove(onSpawn); ScienceRelayDialog.onDialogClose.Remove(onClose); GameEvents.OnTriggeredDataTransmission.Remove(onTriggeredData); GameEvents.onGamePause.Remove(onPause); GameEvents.onGameUnpause.Remove(onUnpause); GameEvents.OnGameSettingsApplied.Remove(onSettingsApplied); }