Esempio n. 1
0
        public Labyrinth(MazeSaveData mazeSave)
        {
            this.Height    = mazeSave.Height;
            this.Width     = mazeSave.Height;
            this.CellCount = mazeSave.CellCount;
            this.ExitIndex = mazeSave.ExitIndex.ToVector2Int();

            _cells = new Cell[Height * Width];
            InitGrid(mazeSave);
        }
Esempio n. 2
0
 private void InitGrid(MazeSaveData mazeSave)
 {
     for (int i = 0; i < _cells.Length; i++)
     {
         _cells[i] = new Cell(mazeSave.Cells[i]);
     }
     for (int i = 0; i < _cells.Length; i++)
     {
         _cells[i].SetCellLinks(Index2Neighbor(mazeSave.Cells[i].Links));
         _cells[i].SetCellNeigbours(Index2Neighbor(mazeSave.Cells[i].Neigbours));
     }
 }
        public GameSaveData(GameData gameData)
        {
            Labyrinth  = new MazeSaveData(gameData.maze);
            PlayerData = new PlayerData(gameData.playerPosition, gameData.bulletCount, gameData.playerHealth);

            enemyPositions    = new Position[gameData.enemyPositions.Count];
            enemyHealth       = new float[gameData.enemyHealth.Count];
            PlayerData.Health = gameData.playerHealth;

            for (int i = 0; i < gameData.enemyPositions.Count; i++)
            {
                enemyPositions[i] = new Position(gameData.enemyPositions[i]);
                enemyHealth[i]    = gameData.enemyHealth[i];
            }
        }