private void readExecuteCommand() {
        try {
            if (_inp.hasNextInt() && _playing) {
                if (!_playing) {
                    throw error("no game in progress");
                }
                saveMove(_inp.nextInt(), _inp.nextInt());
            } else if (!_inp.hasNext("\\n")) {
                String nxt = _inp.next();
                for (int i = 0; i < commands.length; i++) {
                    if (commands[i].equals(nxt)) {
                        executeCommand(nxt);
                    }
                }
            }
        } catch (GameException e) {
            reportError(e.getMessage());
        }
        if (_inp.hasNextLine()) {
            _inp.nextLine();
        }
    }