private void LoadFromDatabase(TakEngine.Notation.DatabaseRecord database) { if (database.Games.Count != 1) { throw new ApplicationException("File must contain exactly 1 game"); } _gameRecord = database.Games[0]; _game = GameState.NewGame(_gameRecord.BoardSize); _ai = new TakAI_V4(_game.Size); _evaluator = _ai.Evaluator; _boardView.Game = _game; foreach (var notation in _gameRecord.MoveNotations) { ProcessMove(notation: notation); } _fileName = dlgOpen.FileName; PrepareTurn(); }
void NewGame(int size) { _fileName = null; _gameRecord.Tags.Clear(); _gameRecord.Player1 = "Human"; _gameRecord.Player2 = "Human"; _gameRecord.Site = "RTak Local"; _gameRecord.Date = DateTime.Now; _gameRecord.MoveNotations.Clear(); _navigating = true; if (_historyForm != null) { _historyForm.Clear(); } _navigating = false; _game = GameState.NewGame(size); _ai = new TakAI_V4(_game.Size); _evaluator = new PositionalEvaluatorV3(_game.Size); _boardView.Game = _game; PrepareTurn(); }