boolean[] row = new boolean[width];
for(int x : columns)
if (!row[x] && rand.nextDouble() < pbb)
row[moveBlock(x, y, false, s)] = true;
}
s.optimizeMoves();
return s;
}
/**
* Generates a new situation with moves, which execution leads to the board from