void Start() { windowPos = new Vector2d(Screen.width / 2 + 120, Screen.height / 2 - 150); morseSettingsRect = new Rect((float)windowPos.x, (float)windowPos.y, 1, 1); morseAlphabetRect = new Rect((float)windowPos.x - 680, (float)windowPos.y, 450, 450); morseSettings = HighLogic.CurrentGame.Parameters.CustomParams <CL_GeneralSettings>(); morseAlph = (Texture)GameDatabase.Instance.GetTexture("CrewLight/International_Morse_Code", false); Init(); completed = false; Instance = this; }
public override bool Interactible(System.Reflection.MemberInfo member, GameParameters parameters) { if (morseConf) { if (go == null) { go = new GameObject(); } MoreMorseSettings gui = go.GetComponent <MoreMorseSettings>(); if (gui == null) { gui = go.AddComponent <MoreMorseSettings>(); } if (MoreMorseSettings.Instance != null) { if (MoreMorseSettings.Instance.completed) { morseConf = false; MoreMorseSettings.Instance.EnableWindow(false); UnityEngine.Object.Destroy(gui); gui = null; MoreMorseSettings.Instance = null; } else { MoreMorseSettings.Instance.lastTimeTic = Time.realtimeSinceStartup; if (!MoreMorseSettings.Instance.active) { MoreMorseSettings.Instance.EnableWindow(); } } } } // HeadLight interactible if (member.Name == "onForEVASpace" || member.Name == "onForEVALanded") { if (useSunLightEVA) { return(true); } else { return(false); } } // EVA switch lights if (member.Name == "lightSymLights" || member.Name == "onAviationLights") { if (useVesselLightsOnEVA) { return(true); } else { return(false); } } // Morse Code if (member.Name == "onlyForControllable" || member.Name == "morseCodeStr" || member.Name == "distance" || member.Name == "morseConf") { if (useMorseCode) { return(true); } else { return(false); } } return(base.Interactible(member, parameters)); }