floodFill method

void floodFill()

Implementation

void floodFill(){
  List<TileRects> tileRectes = levelInfo[selectedLevel].tileLayer[levelInfo[selectedLevel].selectedTileLayer].tiles;
  int width = levelInfo[selectedLevel].grid.width;
  int height = levelInfo[selectedLevel].grid.height;
  QueueLinearFloodFiller flood = QueueLinearFloodFiller(
    tileRectes[selectedTileLocation],
    tileRectes,
    selectedTile[0],
    Size(width.toDouble(),height.toDouble()),
    levelInfo[selectedLevel].grid.boxSize*camera.zoom,
    camera
  );

  int y = selectedTileLocation < width?0:(selectedTileLocation/width).floor();
  int x = selectedTileLocation < width?selectedTileLocation:selectedTileLocation-width*y;
  flood.floodFill(x, y).then((value){
    levelInfo[selectedLevel].tileLayer[levelInfo[selectedLevel].selectedTileLayer].tiles = flood.allTiles;
  });
}