Пример #1
0
    public void PlayerRegret()
    {
        if ((_gameDataHandler.GameState != GameState.BlackPlay && _isBlack) ||
            (_gameDataHandler.GameState != GameState.WhitePlay && !_isBlack) ||
            (_gameDataHandler.Turn <= 1))
        {
            return;
        }
        try {
            // remove 2 step
            _gameDataHandler.RevertGameState();
            GameTrace gameTrace = _gameDataHandler.GetCurrentStep();
            _gameDataHandler.RemoveStep(gameTrace);
            _gameSceneTool.RemoveGameObj(gameTrace);

            _gameDataHandler.RevertGameState();
            gameTrace = _gameDataHandler.GetCurrentStep();
            _gameDataHandler.RemoveStep(gameTrace);
            _gameSceneTool.RemoveGameObj(gameTrace);
        }
        catch (EmptyGameDataException) {
            // no game date available
            Debug.Log("EmptyGameDataException");
        }
    }