Exemple #1
0
 public MazeCell()
 {
     _sides  = new bool[] { true, true, true, true, true, true };
     _data   = null;
     Visited = false;
     Row     = -1;
     Column  = -1;
     Layer   = -1;
 }
Exemple #2
0
 public MazeCell(MazeCellData data, int row, int col, int lay)
 {
     _sides  = new bool[] { true, true, true, true, true, true };
     _data   = data;
     Row     = row;
     Column  = col;
     Layer   = lay;
     Visited = false;
 }
    public MazeGenerator(MazeData data, MazeCellData mcData)
    {
        _data   = data;
        _mcData = mcData;
        ROWS    = _data.numberOfRows;
        COLS    = _data.numberOfColumns;
        LAYS    = _data.numberOfLayers;

        _maze = new Maze(ROWS, COLS, LAYS, mcData);

        _cellStack = new Stack <MazeCell>();
    }
    public void Init(MazeData data, MazeCellData mcData)
    {
        if (data == null)
        {
            _data = new MazeData();
        }
        else
        {
            _data = data;
        }

        MazeGenerator mg = new MazeGenerator(data, mcData);

        _spawnGroups    = mg.GenerateMaze();
        _startCell      = mg.StartCell;
        _endCell        = mg.EndCell;
        CanDoPickup     = false;
        _mazeGameObject = GameObject.FindGameObjectWithTag("MazeParent");
    }
Exemple #5
0
 public Maze(int rows, int cols, int layers, MazeCellData mcData)
 {
     _rows   = rows;
     _cols   = cols;
     _layers = layers;
     _cells  = new MazeCell[_rows][][];
     for (int i = 0; i < _rows; ++i)
     {
         _cells[i] = new MazeCell[_cols][];
         for (int j = 0; j < _cols; ++j)
         {
             _cells[i][j] = new MazeCell[_layers];
             for (int k = 0; k < _layers; ++k)
             {
                 _cells[i][j][k] = new MazeCell(mcData, i, j, k);
             }
         }
     }
 }