anchor.diff:      _con.startGame();
     }
   
  -
     /// Füllt die GameData-Klasse mit Daten
     /// Benötigt dazu die geladenen Tetriminos [tetriminoList], die Levelbasis [lev], sowie die
     /// Höhe [tHeight] und Breite [tWidth] des Spielfeldes
  -  void _createGameData(
  -      tetriminos tetriminoList, level lev) {
  +  void _createGameData(tetriminos tetriminoList, level lev) {
   
       // Erzeugt eine neue Instanz der gamedata und füllt diese mit den nötigen Daten
       _data = new gamedata();
       _data.tetriminoList = tetriminoList;
       _data.currentLevel = lev;
  -    _data.tetrisField = _createFieldList(gamedata.tetrisFieldHeight, gamedata.tetrisFieldWidth);
  -  }
  -
  +    _data.tetrisField =
  +        _createFieldList(gamedata.tetrisFieldHeight, gamedata.tetrisFieldWidth);
  +  }
   
     /// Erstellt das Spielfeld und bildet es in einer Liste ab
     /// Benötigt dazu die Höhe [height] und Breite [width] des Spielfeldes
  
positive.code: 
    /// Prüft auf gelöschte Reihen
    int checkRows() {
      bool atleastOne = false;
      int rowsDeleted = 0;
      List<List<field>> tetField = _data.tetrisField;
      int piecesInTheRightPlace = 0;
  
negative.code:       // Ist die Reihe voll so wird sie gelöscht. Ist sies nicht rückt sie nach.
        if (piecesInTheRightPlace == gamedata.tetrisFieldWidth) {
          deleteRow(tetField[i]);
          rowMoveUp(tetField, i);
          rowsDeleted++;
        }
        piecesInTheRightPlace = 0;
      }
      return rowsDeleted;
    }
  
    /// Prüft das ganze Tetrisfeld und lässt, in der Luft schwebende Blöcke nachrücken
    void rowMoveUp(List<List<field>> tetField, int i) {
      if (i == 0) return;
      for (i -= 1; i >= 0; i--) {
        for (int j = 0; j < tetField[i].length; j++) {
          // Ist das aktuelle Feld belegt und das darunter nicht, dann versetze
          // das aktuelle Feld nach unten
          tetField[i + 1][j] = tetField[i][j];
          tetField[i][j] = new field(i, j, false);
        }
      }
    }
  
    /// Löscht eine übergebene Reihe [row]
    void deleteRow(List<field> row) {
      for (int i = 0; i < row.length; i++) {
        row[i] = new field(row[i].posX, row[i].posY, false);
      }
    }
  
    /// Entfernt einen Spielstein [tetrimino] aus der Spielfeldliste
    void deleteTetrimino(List<List<field>> tetrimino) {
  