public void Start()
        {
            Log.Warning("WernherChecker is loading..., scene: " + HighLogic.LoadedScene.ToString());
            Version = this.GetType().Assembly.GetName().Version.ToString();
            Log.Warning(string.Format("WernherChecker Version is {0}", Version));
            Instance = this;

            if (Settings.Load())
            {
                minimized    = Settings.minimized;
                mainWindow.x = Settings.windowX;
                mainWindow.y = Settings.windowY;
            }

            checklistSystem.LoadChecklists();

            //if (AssemblyLoader.loadedAssemblies.Any(a => a.dllName == "KerbalConstructionTime"))
            if (hasMod("KerbalConstructionTime"))
            {
                KCTInstalled = true;
            }
            else
            {
                KCTInstalled = false;
            }
            if (HighLogic.LoadedScene == GameScenes.EDITOR)
            {
                panelWidth = EditorPanels.Instance.partsEditor.panelTransform.rect.xMax;
                mainWindow = new Rect(panelWidth + 3, 120, 0, 0);
                GameEvents.onEditorScreenChange.Add(onEditorPanelChange);
                GameEvents.onEditorShipModified.Add(checklistSystem.CheckVessel);
                GameEvents.onEditorRestart.Add(checklistSystem.CheckVessel);
                GameEvents.onEditorShowPartList.Add(checklistSystem.CheckVessel);

                launchDelegate        = new UnityAction(CrewCheck.OnButtonInput);
                defaultLaunchDelegate = new UnityAction(EditorLogic.fetch.launchVessel);

                if (Settings.checkCrewAssignment && !KCTInstalled)
                {
                    EditorLogic.fetch.launchBtn.onClick.RemoveListener(defaultLaunchDelegate);
                    EditorLogic.fetch.launchBtn.onClick.AddListener(launchDelegate);
                }
            }
            else
            {
                mainWindow = new Rect(panelWidth + 3, 120, 0, 0);
            }

            if (Settings.wantedToolbar == toolbarType.BLIZZY && ToolbarManager.ToolbarAvailable)
            {
                AddToolbarButton(toolbarType.BLIZZY, true);
            }
            else
            {
                AddToolbarButton(toolbarType.STOCK, true);
            }
            GameEvents.onShowUI.Add(ShowUI);
            GameEvents.onHideUI.Add(HideUI);
        }
        public void Start()
        {
            Log.Warning("WernherChecker is loading..., scene: " + HighLogic.LoadedScene.ToString());
            Version = this.GetType().Assembly.GetName().Version.ToString();
            Log.Warning(string.Format("WernherChecker Version is {0}", Version));
            Instance = this;

            if (Settings.Load())
            {
                minimized = Settings.minimized;
            }

            checklistSystem.LoadChecklists();

            if (hasMod("KerbalConstructionTime"))
            {
                KCTInstalled = true;
            }
            else
            {
                KCTInstalled = false;
            }
            mainWindow = new Rect(Settings.windowX, Settings.windowY, 0, 0);

            if (HighLogic.LoadedScene == GameScenes.EDITOR)
            {
                panelWidth = EditorPanels.Instance.partsEditor.panelTransform.rect.xMax;
                GameEvents.onEditorScreenChange.Add(onEditorPanelChange);
                GameEvents.onEditorShipModified.Add(checklistSystem.CheckVessel);
                GameEvents.onEditorRestart.Add(checklistSystem.CheckVessel);
                GameEvents.onEditorShowPartList.Add(checklistSystem.CheckVessel);

                //launchDelegate = new UnityAction(CrewCheck.OnButtonInput);
                //defaultLaunchDelegate = new UnityAction(EditorLogic.fetch.launchVessel);

                if (Settings.checkCrewAssignment && !KCTInstalled)
                {
                    //EditorLogic.fetch.launchBtn.onClick.RemoveListener(defaultLaunchDelegate);
                    //EditorLogic.fetch.launchBtn.onClick.AddListener(launchDelegate);

                    ButtonManager.BtnManager.InitializeListener(EditorLogic.fetch.launchBtn, EditorLogic.fetch.launchVessel, "WernerChecker");
                    btnId = ButtonManager.BtnManager.AddListener(EditorLogic.fetch.launchBtn, CrewCheck.OnButtonInput, "WernerChecker", "Werner's Checker");
                }
            }



            CreateAppButton();

            GameEvents.onShowUI.Add(ShowUI);
            GameEvents.onHideUI.Add(HideUI);
        }