in lib/src/game/game_core.dart [111:159]
String toBoardString() {
final buffer = StringBuffer();
for (var y = -2; y < field.height; y++) {
if (y > -2) {
buffer.write('\n');
}
for (var x = -2; x < field.width; x++) {
late String char;
if (y == -2) {
if (x == -2) {
char = ' ';
} else if (x == -1) {
char = '|';
} else {
char = (x % 10).toString();
}
} else if (y == -1) {
if (x == -1) {
char = '+';
} else {
char = '-';
}
} else {
if (x == -2) {
char = (y % 10).toString();
} else if (x == -1) {
char = '|';
} else {
switch (getSquareState(x, y)) {
case SquareState.flagged:
char = '\u2611';
break;
case SquareState.revealed:
final count = field.getAdjacentCount(x, y);
char = count.toString();
break;
case SquareState.hidden:
char = '?';
break;
default:
// noop;
}
}
}
buffer.write(char);
}
}
return buffer.toString();
}