private void Update() { if (_openEditorKey.Value.IsDown()) { if (KKABMX_AdvancedGUI.Enabled) { KKABMX_AdvancedGUI.Disable(); } else { var g = GetCurrentVisibleGirl(); if (g != null) { KKABMX_AdvancedGUI.Enable(g.GetComponent <BoneController>()); } else { if (StudioAPI.InsideStudio) { Logger.LogMessage("No characters selected. Select a character to edit its bones."); } else { Logger.LogMessage("No characters found to edit"); } } } } }
private void Start() { Instance = this; Logger = base.Logger; gameObject.AddComponent <KKABMX_AdvancedGUI>(); XyzMode = Config.Bind("Maker", Metadata.XyzModeName, false, Metadata.XyzModeDesc); RaiseLimits = Config.Bind("Maker", Metadata.RaiseLimitsName, false, Metadata.RaiseLimitsDesc); TransparentAdvancedWindow = Config.Bind("General", Metadata.AdvTransparencyName, false, Metadata.AdvTransparencyDesc); _openEditorKey = Config.Bind("General", "Open bonemod editor", KeyboardShortcut.Empty, "Opens advanced bonemod window if there is a character that can be edited."); #if !EC if (KKAPI.Studio.StudioAPI.InsideStudio) { KKAPI.Studio.StudioAPI.GetOrCreateCurrentStateCategory(null) .AddControl(new KKAPI.Studio.UI.CurrentStateCategorySwitch("Show Bonemod", c => false)) .Value.Subscribe(show => { if (show) { KKABMX_AdvancedGUI.Enable(GetCurrentVisibleGirl()?.GetComponent <BoneController>()); } else { KKABMX_AdvancedGUI.Disable(); } }); } else #endif { gameObject.AddComponent <KKABMX_GUI>(); XyzMode.SettingChanged += KKABMX_GUI.OnIsAdvancedModeChanged; } CharacterApi.RegisterExtraBehaviour <BoneController>(ExtDataGUID); Hooks.Init(); }