private Boolean handleMenuControlKeyPressCustomInput(GameObject activeButton = null) { UIScene sceneFromState = PersistenSingleton <UIManager> .Instance.GetSceneFromState(PersistenSingleton <UIManager> .Instance.State); if (ButtonGroupState.ActiveButton && ButtonGroupState.ActiveButton != PersistenSingleton <UIManager> .Instance.gameObject) { activeButton = ButtonGroupState.ActiveButton; } else if (activeButton == null) { activeButton = UICamera.selectedObject; } if (sceneFromState != null && (!PersistenSingleton <UIManager> .Instance.Dialogs.Activate || PersistenSingleton <UIManager> .Instance.IsPause)) { if (sceneFromState.GetType() == typeof(ConfigUI) && FF9StateSystem.AndroidTVPlatform && PersistenSingleton <HonoInputManager> .Instance.IsInputDown(8)) { if (PersistenSingleton <UIManager> .Instance.IsPauseControlEnable) { sceneFromState.OnKeyPause(activeButton); } return(true); } if (PersistenSingleton <HonoInputManager> .Instance.IsInputDown(1) || keyCommand == Control.Cancel) { keyCommand = Control.None; sceneFromState.OnKeyCancel(activeButton); return(true); } if (PersistenSingleton <HonoInputManager> .Instance.IsInputDown(0) || keyCommand == Control.Confirm) { keyCommand = Control.None; sceneFromState.OnKeyConfirm(activeButton); return(true); } if (PersistenSingleton <HonoInputManager> .Instance.IsInputDown(8) || keyCommand == Control.Pause) { keyCommand = Control.None; if (PersistenSingleton <UIManager> .Instance.IsPauseControlEnable) { sceneFromState.OnKeyPause(activeButton); } return(true); } if (PersistenSingleton <HonoInputManager> .Instance.IsInputDown(9) || keyCommand == Control.Select) { keyCommand = Control.None; sceneFromState.OnKeySelect(UICamera.selectedObject); return(true); } if (PersistenSingleton <HonoInputManager> .Instance.IsInputDown(2) || keyCommand == Control.Menu) { keyCommand = Control.None; if (FF9StateSystem.AndroidTVPlatform && FF9StateSystem.EnableAndroidTVJoystickMode && (PersistenSingleton <HonoInputManager> .Instance.GetSource(Control.Menu) == SourceControl.Joystick && PersistenSingleton <UIManager> .Instance.State == UIManager.UIState.Pause)) { sceneFromState.OnKeyMenu(activeButton); } else if (PersistenSingleton <UIManager> .Instance.IsMenuControlEnable) { sceneFromState.OnKeyMenu(activeButton); } return(true); } if (PersistenSingleton <HonoInputManager> .Instance.IsInputDown(3) || keyCommand == Control.Special) { keyCommand = Control.None; sceneFromState.OnKeySpecial(activeButton); return(true); } if (PersistenSingleton <HonoInputManager> .Instance.IsInputDown(4) || keyCommand == Control.LeftBumper) { keyCommand = Control.None; sceneFromState.OnKeyLeftBumper(activeButton); return(true); } if (PersistenSingleton <HonoInputManager> .Instance.IsInputDown(5) || keyCommand == Control.RightBumper) { keyCommand = Control.None; sceneFromState.OnKeyRightBumper(activeButton); return(true); } if (PersistenSingleton <HonoInputManager> .Instance.IsInputDown(6) || keyCommand == Control.LeftTrigger) { BattleHUD.ForceNextTurn = true; keyCommand = Control.None; sceneFromState.OnKeyLeftTrigger(activeButton); return(true); } if (PersistenSingleton <HonoInputManager> .Instance.IsInputDown(7) || keyCommand == Control.RightTrigger) { keyCommand = Control.None; sceneFromState.OnKeyRightTrigger(activeButton); return(true); } } if (AltKey) { if (F2KeyDown) { OnPartySceneCommandDetected(sceneFromState); return(true); } if (F4KeyDown) { OnQuitCommandDetected(sceneFromState); return(true); } if (F5KeyDown) { OnSaveLoadSceneCommandDetected(sceneFromState, SaveLoadUI.SerializeType.Save); return(true); } if (F9KeyDown) { OnSaveLoadSceneCommandDetected(sceneFromState, SaveLoadUI.SerializeType.Load); return(true); } if (SpaceKeyDown) { Configuration.Graphics.WidescreenSupport = !Configuration.Graphics.WidescreenSupport; return(true); } if (ShiftKey && ControlKey) { if (SKeyDown) { OnSoundDebugRoomCommandDetected(); return(true); } if (F12KeyDown) { GameObjectService.Start(); return(true); } } } if (ShiftKey && F4KeyDown) { SettingsState.IsRapidEncounter = !SettingsState.IsRapidEncounter; return(true); } return(false); }