public static CustomizableDialogScreen ShowCustomDialog(string title, string message, CustomisableButtonOption[] buttonList, GameObject parent) { CustomizableDialogScreen customDialogScreen = (CustomizableDialogScreen)KScreenManager.Instance.StartScreen (ScreenPrefabs.Instance.CustomizableDialogScreen.gameObject, PauseScreen.Instance.transform.parent.gameObject); //foreach (CustomisableButtonOption opt in buttonList) //customDialogScreen.AddOption(opt.text, opt.buttonAction); customDialogScreen.SetHasFocus(true); customDialogScreen.PopupConfirmDialog(message, title, null); return(customDialogScreen); }
private void SuddenMoraleHelper() { Effect morale_effect = Db.Get().effects.Get("SuddenMoraleHelper"); CustomizableDialogScreen screen = Util.KInstantiateUI <CustomizableDialogScreen>(ScreenPrefabs.Instance.CustomizableDialogScreen.gameObject, GameScreenManager.Instance.ssOverlayCanvas.gameObject, true); screen.AddOption(UI.FRONTEND.SAVEUPGRADEWARNINGS.SUDDENMORALEHELPER_BUFF, delegate { foreach (MinionIdentity item in Components.LiveMinionIdentities.Items) { Effects component = item.GetComponent <Effects>(); component.Add(morale_effect, true); } screen.Deactivate(); }); screen.AddOption(UI.FRONTEND.SAVEUPGRADEWARNINGS.SUDDENMORALEHELPER_DISABLE, delegate { SettingConfig morale = CustomGameSettingConfigs.Morale; CustomGameSettings.Instance.customGameMode = CustomGameSettings.CustomGameMode.Custom; CustomGameSettings.Instance.SetQualitySetting(morale, morale.GetLevel("Disabled").id); screen.Deactivate(); }); screen.PopupConfirmDialog(string.Format(UI.FRONTEND.SAVEUPGRADEWARNINGS.SUDDENMORALEHELPER, Mathf.RoundToInt(morale_effect.duration / 600f)), UI.FRONTEND.SAVEUPGRADEWARNINGS.SUDDENMORALEHELPER_TITLE, null); }