Esempio n. 1
0
        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();
            }
        }
Esempio n. 2
0
        static void Main(string[] args)
        {
            string[,] gameboard = new string[3, 3];
            GameMotor motor = new GameMotor();

            motor.StartGame(gameboard);
            Console.Read();
        }
Esempio n. 3
0
        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);
        }
Esempio n. 4
0
        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);
        }
Esempio n. 5
0
        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);
        }
Esempio n. 6
0
File: Game.cs Progetto: Vicra/Tron
 public Game(int x, int y)
 {
     _gameMotor = new GameMotor(x, y);
     _parser = new Parser();
 }