move method

bool move(
  1. String move
)

Move then change the game situation

Implementation

bool move(String move) {
  int fromX = move.codeUnitAt(0) - colIndexBase;
  int fromY = int.parse(move[1]);
  int toX = move.codeUnitAt(2) - colIndexBase;
  int toY = int.parse(move[3]);
  if (fromY > 9 || fromX > 8) {
    logger.info('From pos error:$move');
    return false;
  }
  if (toY > 9 || toX > 8) {
    logger.info('To pos error:$move');
    return false;
  }
  if (fromY == toY && fromX == toX) {
    logger.info('No movement:$move');
    return false;
  }
  if (_rows[fromY][fromX] == '0') {
    logger.info('From pos is empty:$move');
    return false;
  }
  _rows[toY][toX] = _rows[fromY][fromX];
  _rows[fromY][fromX] = '0';
  _fen = '';

  return true;
}