public override void Execute() { switch (_buttonName) { case StringCollection.REPLAY_BUTTON_NAME: ReplayPressed(); break; case StringCollection.CONTINUE_BUTTON_NAME: ContinuePressed(); break; case StringCollection.PAUSE_BUTTON_NAME: PausePressed(); break; case StringCollection.EXIT_BUTTON_NAME: Application.Quit(); break; case StringCollection.SETTINGS_BUTTON_NAME: _setActivePanelSignal.Dispatch(StringCollection.SETTINGS_PANEL_NAME, true); break; case StringCollection.SETTINGS_CLOSE_BUTTON_NAME: _setActivePanelSignal.Dispatch(StringCollection.SETTINGS_PANEL_NAME, false); break; case StringCollection.LEFT_MOVE_BUTTON_NAME: _playerActionHappenedSignal.Dispatch(PlayerAction.MOVE_LEFT); break; case StringCollection.RIGHT_MOVE_BUTTON_NAME: _playerActionHappenedSignal.Dispatch(PlayerAction.MOVE_RIGHT); break; case StringCollection.ROTATE_BUTTON_NAME: _playerActionHappenedSignal.Dispatch(PlayerAction.ROTATE); break; case StringCollection.DOWN_MOVE_BUTTON_NAME: _playerActionHappenedSignal.Dispatch(PlayerAction.MOVE_DOWN); break; default: Debugger.LogError(LogEntryCategory.Input, $"Button name {_buttonName} is not supported"); break; } }
private void OnKeyPressed(PlayerAction playerAction) { _playerActionHappenedSignal.Dispatch(playerAction); }