public Dictionary <Keys, ICommand> GetKeyboardMappings(IGameState gameState) { PauseGameState gameStateCast = (PauseGameState)gameState; return(new Dictionary <Keys, ICommand> { { Keys.Escape, new ResumeGameCommand(gameState) }, { Keys.W, new MoveSelectorCommand(gameStateCast.PauseGameMenu, Constants.Direction.Up) }, { Keys.D, new MoveSelectorCommand(gameStateCast.PauseGameMenu, Constants.Direction.Right) }, { Keys.S, new MoveSelectorCommand(gameStateCast.PauseGameMenu, Constants.Direction.Down) }, { Keys.A, new MoveSelectorCommand(gameStateCast.PauseGameMenu, Constants.Direction.Left) }, { Keys.Enter, new SelectButtonCommand(gameStateCast.PauseGameMenu.ButtonSelector, GetButtonMappings(gameState)) }, { Keys.Space, new SelectButtonCommand(gameStateCast.PauseGameMenu.ButtonSelector, GetButtonMappings(gameState)) }, { Keys.I, new MoveSelectorCommand(gameStateCast.PauseGameMenu, Constants.Direction.Up) }, { Keys.L, new MoveSelectorCommand(gameStateCast.PauseGameMenu, Constants.Direction.Right) }, { Keys.K, new MoveSelectorCommand(gameStateCast.PauseGameMenu, Constants.Direction.Down) }, { Keys.J, new MoveSelectorCommand(gameStateCast.PauseGameMenu, Constants.Direction.Left) }, }); }
private Dictionary <Buttons, ICommand> GetGamepadMappings(IGameState gameState) { PauseGameState gameStateCast = (PauseGameState)gameState; ICommand resumeGameCommand = new ResumeGameCommand(gameState); return(new Dictionary <Buttons, ICommand> { { Buttons.Start, resumeGameCommand }, { Buttons.B, resumeGameCommand }, { Buttons.LeftThumbstickUp, new MoveSelectorCommand(gameStateCast.PauseGameMenu, Constants.Direction.Up) }, { Buttons.LeftThumbstickRight, new MoveSelectorCommand(gameStateCast.PauseGameMenu, Constants.Direction.Right) }, { Buttons.LeftThumbstickDown, new MoveSelectorCommand(gameStateCast.PauseGameMenu, Constants.Direction.Down) }, { Buttons.LeftThumbstickLeft, new MoveSelectorCommand(gameStateCast.PauseGameMenu, Constants.Direction.Left) }, { Buttons.DPadUp, new MoveSelectorCommand(gameStateCast.PauseGameMenu, Constants.Direction.Up) }, { Buttons.DPadRight, new MoveSelectorCommand(gameStateCast.PauseGameMenu, Constants.Direction.Right) }, { Buttons.DPadDown, new MoveSelectorCommand(gameStateCast.PauseGameMenu, Constants.Direction.Down) }, { Buttons.DPadLeft, new MoveSelectorCommand(gameStateCast.PauseGameMenu, Constants.Direction.Left) }, { Buttons.A, new SelectButtonCommand(gameStateCast.PauseGameMenu.ButtonSelector, GetButtonMappings(gameState)) } }); }