void Awake() { Log.dbg("NavUtils: NavUtilLibApp.Awake()"); //load settings to config ConfigLoader.LoadSettings(); Log.dbg("NavUtil: useBlizzy? " + var.Settings.useBlizzy78ToolBar); if (var.Settings.useBlizzy78ToolBar) { toolbarButton = Toolbar.Button.Create(this , KSP.UI.Screens.ApplicationLauncher.AppScenes.FLIGHT , Asset.Texture2D.LoadFromFile("Toobar", "toolbarButton.png") , Asset.Texture2D.LoadFromFile("Toobar", "toolbarButton.png") , "NavUtilities HSI / Hold Alt to open settings" ); toolbarButton.Toolbar.Add(Toolbar.Button.ToolbarEvents.Kind.Active , new Toolbar.Button.Event(this.onToobarButtonPressed, this.onToobarButtonPressed) ); ToolbarController.Instance.Add(toolbarButton); } else { //GameEvents.onGUIApplicationLauncherReady.Add(OnGUIReady); if (appButton == null) { GameEvents.onGUIApplicationLauncherReady.Add(AddButton); } GameEvents.onGUIApplicationLauncherUnreadifying.Add(onDestroy); GameEvents.onGameSceneLoadRequested.Add(onDestroy); GameEvents.onShowUI.Add(ShowGUI); GameEvents.onHideUI.Add(HideGUI); } var.Settings.appInstance = this.GetInstanceID(); var.Settings.appReference = this; }
public void onDestroy(GameScenes g) { Log.dbg("NavUtils: Destorying App 1"); GameEvents.onGUIApplicationLauncherReady.Remove(AddButton); if (appButton != null) { Log.dbg("NavUtils: Destorying App 2"); ToolbarController.Instance.Destroy(); //save settings to config ConfigLoader.SaveSettings(); var.Settings.hsiState = false; KSP.UI.Screens.ApplicationLauncher.Instance.RemoveModApplication(appButton); } }
public void Activate(bool state) { Log.dbg("NavUtils: NavUtilLibApp.Activate()"); if (state) { rt = new RenderTexture(640, 640, 24, RenderTextureFormat.ARGB32); rt.Create(); Log.dbg("NavUtil: Starting systems..."); if (!var.Settings.navAidsIsLoaded) { var.Settings.loadNavAids(); } if (!var.Materials.isLoaded) { var.Materials.loadMaterials(); } //load settings to config //ConfigLoader.LoadSettings(var.Settings.settingsFileURL); //ConfigureCamera(); windowPosition.x = var.Settings.hsiPosition.x; windowPosition.y = var.Settings.hsiPosition.y; Log.dbg("NavUtil: Systems started successfully!"); } else { state = false; //RenderingManager.RemoveFromPostDrawQueue(3, OnDraw); //close the GUI var.Settings.hsiPosition.x = windowPosition.x; var.Settings.hsiPosition.y = windowPosition.y; ConfigLoader.SaveSettings(); } }