static void Main(string[] args) { #region Initilize Classes using var context = new LudoGameContext(); var loadSavedGame = false; var gUI = new RunGUI(); var game = new GameInitializer(); var gameMotor = new GameMotor(); game.GameBoard.PopulateBoard(); #endregion var loadGameAnswer = ""; bool validChoice = false; LoadSavedGameOrCreateNewGame(context, ref loadSavedGame, gUI, game, ref loadGameAnswer, ref validChoice); Console.Clear(); bool gameHasEnd = false; while (gameHasEnd == false) { gameHasEnd = PlayerTurn(gUI, game, gameMotor, gameHasEnd); Console.Clear(); var exitGameAnswer = ""; bool validChoiceInGame = false; ContinueOrExit(context, loadSavedGame, game, ref exitGameAnswer, ref validChoiceInGame); Console.Clear(); } }
static void Main(string[] args) { string[,] gameboard = new string[3, 3]; GameMotor motor = new GameMotor(); motor.StartGame(gameboard); Console.Read(); }
public void TestHowManyActivePawnsLeft(int amount) { var gameMotor = new GameMotor(); var user = new User(); var listOfPawns = new List <Pawn>(); user.Pawns = listOfPawns; var pawn = new Pawn(1, 56, "Red") { HasReachedGoal = true }; listOfPawns.Add(pawn); var userPawnListToTest = gameMotor.CountActivePawns(user); Assert.Equal(amount, userPawnListToTest.Count); }
public void TestIfPawnCanOccupySquarePosition() { var gameMotor = new GameMotor(); var gameBoard = new GameBoard(); var listOfSquares = new List <Square>(); gameBoard.Squares = listOfSquares; var square = new Square(34) { IsEmpty = false }; listOfSquares.Add(square); gameMotor.OccupySquare(gameBoard, 34); Assert.False(square.IsEmpty); }
private static bool PlayerTurn(RunGUI gUI, GameInitializer game, GameMotor gameMotor, bool gameHasEnd) { for (int i = 0; i < game.Users.Count; i++) { var player = game.PlayerByID(i + 1); gUI.ShowWhichPlayer(player); gameMotor.RollDie(game.Die); gUI.ShowDie(game.Die.Roll); var IDOnPawn = gUI.TimeToChoosePawn(player); var pawn = player.PawnByID(IDOnPawn); game.IfNotStartedSetStartPosition(pawn); var landingSquare = gameMotor.Move(pawn, game.Die.Roll); gUI.WalkWithPawn(pawn, game.Die.Roll); gameHasEnd = gameMotor.CheckIfReachedGoal(player, pawn, gameHasEnd); gameMotor.OccupySquare(game.GameBoard, landingSquare); } return(gameHasEnd); }
public Game(int x, int y) { _gameMotor = new GameMotor(x, y); _parser = new Parser(); }