void Save() { // ensure board size tag is set correctly _gameRecord.BoardSize = _game.Size; // finish saving var database = new TakEngine.Notation.DatabaseRecord(); database.Games.Add(_gameRecord); database.Save(_fileName); }
string SaveToString() { // ensure board size tag is set correctly _gameRecord.BoardSize = _game.Size; // finish saving var database = new TakEngine.Notation.DatabaseRecord(); database.Games.Add(_gameRecord); var sb = new StringBuilder(); using (var writer = new System.IO.StringWriter(sb)) { database.Write(writer); } return(sb.ToString()); }
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(); }