/// <summary> /// Pulls information from the engine into the controller/data structure /// </summary> public void EnginePull() { c_inputData.f_inputAxisLHoriz = GlobalInputController.GetAnalogInputAction(ControlAction.SPIN_AXIS); c_inputData.f_inputAxisLVert = GlobalInputController.GetAnalogInputAction(ControlAction.FLIP_AXIS); CheckForZone(); }
// Update is called once per frame public override void UpdateEditor() { if (!c_controllerData.b_editorActive) { return; } float inputAxisValue = GlobalInputController.GetAnalogInputAction(ControlAction.SPIN_AXIS); if (inputAxisValue < -0.5f) { c_controllerData.i_increasing = -1; sm_editController.Execute(Command.MENU_TICK_INPUT); } else if (inputAxisValue > 0.5f) { c_controllerData.i_increasing = 1; sm_editController.Execute(Command.MENU_TICK_INPUT); } else { // no input, unready c_controllerData.i_increasing = 0; } if (float.Equals(c_controllerData.f_currentTickTime, c_controllerData.f_maxTickTime)) { sm_editController.Execute(Command.MENU_READY); } else { sm_editController.Execute(Command.MENU_IDLE); } if (c_controllerData.i_increasing == 0) { sm_editController.Execute(Command.MENU_READY); } if (!CheckForConfirmation()) { return; } if (GlobalInputController.GetInputAction(ControlAction.CONFIRM, KeyValue.PRESSED)) { ConfirmDataEdit(CurrentTarget); Deactivate(); } else if (GlobalInputController.GetInputAction(ControlAction.BACK, KeyValue.PRESSED)) { CancelDataEdit(); Deactivate(); } sm_editController.Act(); EnginePush(); }
public void UpdateMenu() { if (c_activeMenuData.b_editorActive) { c_activeMenuItem.UpdateEditor(); return; } if (c_activeMenuData.b_menuActive == false) { return; } c_activeMenuData.i_menuMousePositionItemIndex = -1; CheckMouseInput(); float inputAxisValue = GlobalInputController.GetAnalogInputAction(ControlAction.FLIP_AXIS); if (inputAxisValue > 0.5f) { c_activeMenuData.i_menuDir = -1; // menus are often organized top to bottom } else if (inputAxisValue < -0.5f) { c_activeMenuData.i_menuDir = 1; } else { c_activeMenuData.i_menuDir = 0; } if (!CheckForConfirmation()) { return; } if (GlobalInputController.GetInputAction(ControlAction.BACK, KeyValue.PRESSED)) { // return to previous menu c_activeMenuItem.MenuCommandBack(); } if (GlobalInputController.GetInputAction(ControlAction.CONFIRM, KeyValue.PRESSED) || c_activeMenuData.b_menuItemClicked) { c_activeMenuItem.ExecuteMenuCommand(); } UpdateStateMachine(); SetActiveMenuItemIndex(); }
void FixedUpdate() { c_activeMenuData.v_lastFramePosition = c_activeMenuData.v_currentPosition; if (c_activeMenuData.b_showMenu == true) { float inputAxisValue = GlobalInputController.GetAnalogInputAction(ControlAction.FLIP_AXIS); if (inputAxisValue > 0.5f) { c_activeMenuData.i_menuDir = -1; // menus are often organized top to bottom } else if (inputAxisValue < -0.5f) { c_activeMenuData.i_menuDir = 1; } else { c_activeMenuData.i_menuDir = 0; } if (GlobalInputController.GetInputAction(ControlAction.CONFIRM, KeyValue.PRESSED)) { c_activeMenuItem.ExecuteMenuCommand(); } } UpdateStateMachine(); sm_menuInput.Act(); sm_pauseMenu.Act(); if (i_activeMenuItemIndex != c_activeMenuData.i_activeMenuItemIndex) { c_activeMenuItem.ExecuteStateMachineCommand(Command.UNSELECT); i_activeMenuItemIndex = c_activeMenuData.i_activeMenuItemIndex; c_activeMenuItem = MenuItems[i_activeMenuItemIndex]; c_activeMenuItem.ExecuteStateMachineCommand(Command.SELECT); } }