Example #1
0
        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);
        }
Example #2
0
        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());
        }
Example #3
0
        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();
        }