Ejemplo n.º 1
0
        public void RestoreFromSnapshot(MineFieldSnapshot snapshot)
        {
            Cells          = CloneCells(snapshot.Cells);
            MinesLeft      = snapshot.MinesLeft;
            FreeCellsLeft  = snapshot.FreeCellsLeft;
            TotalOpenCells = snapshot.TotalOpenCells;
            // CHECK: Do we need to restore the other params? (width, height, etc)

            Changed?.Invoke(this, EventArgs.Empty);
        }
Ejemplo n.º 2
0
        public static MineField CreateFromSnapshot(MineFieldSnapshot snapshot)
        {
            var mineField = new MineField(
                snapshot.Width,
                snapshot.Height,
                snapshot.TotalMines,
                snapshot.IsResolvable,
                snapshot.MinePutterDifficulty
                );

            mineField.RestoreFromSnapshot(snapshot);

            return(mineField);
        }
Ejemplo n.º 3
0
 public PlayerTurnData(
     MineFieldSnapshot mineFieldSnapshot,
     PlayerTurnSnapshot playerTurnSnapshot,
     string description,
     float time,
     GameState gameState
     )
 {
     MineFieldSnapshot  = mineFieldSnapshot;
     PlayerTurnSnapshot = playerTurnSnapshot;
     Description        = description;
     Time      = time;
     GameState = gameState;
 }
Ejemplo n.º 4
0
 public void AddTurn(MineFieldSnapshot mineFieldSnapshot, PlayerTurnSnapshot playerTurnSnapshot, string description, float time)
 {
     _playerTurns.Add(new PlayerTurnData(mineFieldSnapshot, playerTurnSnapshot, description, time, GameStateManager.CurrentState));
 }