public void Execute() { var parser = new Parse(); parser.AddCommand("/help", OnHelpCommand); parser.AddCommand("/closegame", OnCloseGameCommand); parser.AddCommand("/rolldice", OnRollDiceCommand); parser.SetErrorAction(OnErrorCommand); _gameInfoOutput = _dataProvider.GetText("gameinfo"); _afterBoardOutput = string.Format( _dataProvider.GetText("afterboardinfo"), _dataProvider.GetNumberLiteral(_logic.CurrentPlayerID)); while (isRunning) { _boardOutput = _game.Board.CreateOutput(); UpdateOutput(); _error = string.Empty; _helpOutput = string.Empty; _afterTurnOutput = string.Empty; _sourceWrapper.WriteOutput(0, 21, "Type an Command: ", ConsoleColor.DarkGray); Console.SetCursorPosition(17, 21); var input = _sourceWrapper.ReadInput(); parser.Execute(input); _afterBoardOutput = string.Format( _dataProvider.GetText("afterboardinfo"), _dataProvider.GetNumberLiteral(_logic.CurrentPlayerID)); _lastInput = input; } }
public void Execute() { while (inMenu) { Console.BackgroundColor = ConsoleColor.Black; var parser = new Parse(); parser.AddCommand("/startgame", OnStartGameCommand); parser.AddCommand("/closegame", OnCloseGameCommand); parser.AddCommand("/classic", OnClassicCommand); parser.SetErrorAction(OnErrorCommand); _mainMenuOutput = _dataProvider.GetText("mainmenuinfo"); while (ruleNotSet) { UpdateOutput(); _error = string.Empty; _sourceWrapper.WriteOutput(0, 15, "Type an Command: ", ConsoleColor.DarkGray); Console.SetCursorPosition(17, 15); var input = _sourceWrapper.ReadInput(); _lastInput = input; rulesname = input; parser.Execute(input); } while (gameNotStarted) { UpdateOutput(); _error = string.Empty; _sourceWrapper.WriteOutput(0, 17, "Type an Command: ", ConsoleColor.DarkGray); Console.SetCursorPosition(17, 17); var input = _sourceWrapper.ReadInput(); _lastInput = input; parser.Execute(input); } } }