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