anchor.diff:      if (!checkTetriminoPosition(current.moveDown())) {
         current.moveUp();
         _data.gameEnd = false;
  -      if (integrateTetrimino(current.tetriminoField)){
  +      if (integrateTetrimino(current.tetriminoField)) {
           _stopGame();
           return;
         }
         if (current.isJoker) {
  -        _con.refreshMessage(message['jt']);
           _jokerExplosion();
           setRotaLock(true);
  +        calculateRowElimination(1);
           nextTetrimino();
           return;
         }
  
positive.code: 
    void _jokerExplosion() {
      List<List<field>> tetField = _data.currentTetrimino.tetriminoField;
      for (int i = tetField.length; i >= 0; i--) {
        for (int j = 0; j < tetField[i].length; j++) {
          if (tetField[i][j].status) {
            deleteRow(_data.tetrisField[tetField[i][j]._posY]);
            rowMoveUp(_data.tetrisField, tetField[i][j]._posY);
            break;
          }
        }
  
negative.code:         _data.tetriminoList.getNextRandomTetrimino(_data.randomColor);
      _data.nextTetrimino =
          _data.tetriminoList.getNextRandomTetrimino(_data.randomColor);
      if (_data.currentTetrimino.isJoker) _con.refreshMessage(message['jt']);
      // Gibt das Spielfeld zur Ausgabe auf der View zurück
      _con.refreshPoints(_data.points);
      _con.refreshLevel(_data.currentLevel);
  