Example #1
0
        void initialisePlayerSquare(byte playerNumber, Vector2 playerLoc)
        {
            MazePiece piece = getMazeLoc(playerLoc);

            piece = new MazePiece(mazePieceSize * (int)playerLoc.X, mazePieceSize * (int)playerLoc.Y, false);
            piece.givePlayer(playerNumber);
            piece.makeVisible();
            findVisibles((int)playerLoc.X, (int)playerLoc.Y);

            maze[(int)playerLoc.X, (int)playerLoc.Y] = piece;
        }
Example #2
0
        public void reset(byte players)
        {
            do
            {
                Random random = new Random();
                for (int i = 0; i < mazeSize; ++i)
                {
                    for (int j = 0; j < mazeSize; ++j)
                    {
                        maze[i, j] = new MazePiece(i * mazePieceSize, j * mazePieceSize, random.Next(0, 3) % 3 == 0);
                    }
                }

                goal = new List <Vector2>();

                playerLoc = Vector2.Zero;
                initialisePlayerSquare(1, playerLoc);
                placeGoal(1);
                if (players > 1)
                {
                    player2Loc = new Vector2(mazeSize - 1, mazeSize - 1);
                    initialisePlayerSquare(2, player2Loc);
                    placeGoal(2);
                }
                else
                {
                    if (player2Loc != new Vector2(-1, -1))
                    {
                        player2Loc = new Vector2(-1, -1);
                        foreach (MazePiece mp in maze)
                        {
                            mp.removePlayer(2);
                        }
                    }
                }
            }while (goalRoute.Count < 10);
        }
Example #3
0
        void initialisePlayerSquare(byte playerNumber, Vector2 playerLoc)
        {
            MazePiece piece = getMazeLoc(playerLoc);
            piece = new MazePiece(mazePieceSize * (int)playerLoc.X, mazePieceSize * (int)playerLoc.Y, false);
            piece.givePlayer(playerNumber);
            piece.makeVisible();
            findVisibles((int)playerLoc.X, (int)playerLoc.Y);

            maze[(int)playerLoc.X, (int)playerLoc.Y] = piece;
        }
Example #4
0
        public void reset(byte players)
        {
            do
            {
                Random random = new Random();
                for (int i = 0; i < mazeSize; ++i)
                {
                    for (int j = 0; j < mazeSize; ++j)
                    {
                        maze[i, j] = new MazePiece(i * mazePieceSize, j * mazePieceSize, random.Next(0, 3) % 3 == 0);
                    }
                }

                goal = new List<Vector2>();

                playerLoc = Vector2.Zero;
                initialisePlayerSquare(1, playerLoc);
                placeGoal(1);
                if (players > 1)
                {
                    player2Loc = new Vector2(mazeSize - 1, mazeSize - 1);
                    initialisePlayerSquare(2, player2Loc);
                    placeGoal(2);
                }
                else
                {
                    if (player2Loc != new Vector2(-1, -1))
                    {
                        player2Loc = new Vector2(-1,-1);
                        foreach (MazePiece mp in maze)
                        {
                            mp.removePlayer(2);
                        }
                    }
                }
            }
            while (goalRoute.Count < 10);
        }