UNPKG

@nox_wave/hexlet-braingames

Version:
48 lines (38 loc) 4.34 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _readlineSync = require('readline-sync'); var _readlineSync2 = _interopRequireDefault(_readlineSync); var _hexletPairs = require('hexlet-pairs'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var maxIterationCount = 3; exports.default = function (_ref) { var instruction = _ref.instruction, getGameData = _ref.getGameData; console.log('Welcome to the Brain Games!'); console.log(instruction); console.log(''); var userName = _readlineSync2.default.question('May I have your name? '); console.log('Hello, ' + userName + '!\n'); var gameIter = function gameIter(iterationCount) { if (iterationCount === 0) { console.log('Congratulations, ' + userName + '!'); return; } var gameData = getGameData(); var question = (0, _hexletPairs.car)(gameData); var expectedAnswer = (0, _hexletPairs.cdr)(gameData); console.log('Question: ' + question); var answer = _readlineSync2.default.question('Your answer: '); if (expectedAnswer === answer) { console.log('Correct!'); gameIter(iterationCount - 1); } else { console.log('\'' + answer + '\' is is wrong answer ;(. Correct answer was \'' + expectedAnswer + '\'.'); console.log('Let\'s try again, ' + userName); } }; gameIter(maxIterationCount); }; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJtYXhJdGVyYXRpb25Db3VudCIsImluc3RydWN0aW9uIiwiZ2V0R2FtZURhdGEiLCJjb25zb2xlIiwibG9nIiwidXNlck5hbWUiLCJyZWFkbGluZVN5bmMiLCJxdWVzdGlvbiIsImdhbWVJdGVyIiwiaXRlcmF0aW9uQ291bnQiLCJnYW1lRGF0YSIsImV4cGVjdGVkQW5zd2VyIiwiYW5zd2VyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7OztBQUNBOzs7O0FBRUEsSUFBTUEsb0JBQW9CLENBQTFCOztrQkFFZSxnQkFBa0M7QUFBQSxNQUEvQkMsV0FBK0IsUUFBL0JBLFdBQStCO0FBQUEsTUFBbEJDLFdBQWtCLFFBQWxCQSxXQUFrQjs7QUFDL0NDLFVBQVFDLEdBQVIsQ0FBWSw2QkFBWjtBQUNBRCxVQUFRQyxHQUFSLENBQVlILFdBQVo7QUFDQUUsVUFBUUMsR0FBUixDQUFZLEVBQVo7QUFDQSxNQUFNQyxXQUFXQyx1QkFBYUMsUUFBYixDQUFzQix3QkFBdEIsQ0FBakI7QUFDQUosVUFBUUMsR0FBUixhQUFzQkMsUUFBdEI7O0FBRUEsTUFBTUcsV0FBVyxTQUFYQSxRQUFXLENBQUNDLGNBQUQsRUFBb0I7QUFDbkMsUUFBSUEsbUJBQW1CLENBQXZCLEVBQTBCO0FBQ3hCTixjQUFRQyxHQUFSLHVCQUFnQ0MsUUFBaEM7QUFDQTtBQUNEOztBQUVELFFBQU1LLFdBQVdSLGFBQWpCO0FBQ0EsUUFBTUssV0FBVyxzQkFBSUcsUUFBSixDQUFqQjtBQUNBLFFBQU1DLGlCQUFpQixzQkFBSUQsUUFBSixDQUF2QjtBQUNBUCxZQUFRQyxHQUFSLGdCQUF5QkcsUUFBekI7QUFDQSxRQUFNSyxTQUFTTix1QkFBYUMsUUFBYixDQUFzQixlQUF0QixDQUFmO0FBQ0EsUUFBSUksbUJBQW1CQyxNQUF2QixFQUErQjtBQUM3QlQsY0FBUUMsR0FBUixDQUFZLFVBQVo7QUFDQUksZUFBU0MsaUJBQWlCLENBQTFCO0FBQ0QsS0FIRCxNQUdPO0FBQ0xOLGNBQVFDLEdBQVIsUUFBZ0JRLE1BQWhCLHVEQUFzRUQsY0FBdEU7QUFDQVIsY0FBUUMsR0FBUix3QkFBZ0NDLFFBQWhDO0FBQ0Q7QUFDRixHQWxCRDtBQW1CQUcsV0FBU1IsaUJBQVQ7QUFDRCxDIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHJlYWRsaW5lU3luYyBmcm9tICdyZWFkbGluZS1zeW5jJztcbmltcG9ydCB7IGNhciwgY2RyIH0gZnJvbSAnaGV4bGV0LXBhaXJzJztcblxuY29uc3QgbWF4SXRlcmF0aW9uQ291bnQgPSAzO1xuXG5leHBvcnQgZGVmYXVsdCAoeyBpbnN0cnVjdGlvbiwgZ2V0R2FtZURhdGEgfSkgPT4ge1xuICBjb25zb2xlLmxvZygnV2VsY29tZSB0byB0aGUgQnJhaW4gR2FtZXMhJyk7XG4gIGNvbnNvbGUubG9nKGluc3RydWN0aW9uKTtcbiAgY29uc29sZS5sb2coJycpO1xuICBjb25zdCB1c2VyTmFtZSA9IHJlYWRsaW5lU3luYy5xdWVzdGlvbignTWF5IEkgaGF2ZSB5b3VyIG5hbWU/ICcpO1xuICBjb25zb2xlLmxvZyhgSGVsbG8sICR7dXNlck5hbWV9IVxcbmApO1xuXG4gIGNvbnN0IGdhbWVJdGVyID0gKGl0ZXJhdGlvbkNvdW50KSA9PiB7XG4gICAgaWYgKGl0ZXJhdGlvbkNvdW50ID09PSAwKSB7XG4gICAgICBjb25zb2xlLmxvZyhgQ29uZ3JhdHVsYXRpb25zLCAke3VzZXJOYW1lfSFgKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBnYW1lRGF0YSA9IGdldEdhbWVEYXRhKCk7XG4gICAgY29uc3QgcXVlc3Rpb24gPSBjYXIoZ2FtZURhdGEpO1xuICAgIGNvbnN0IGV4cGVjdGVkQW5zd2VyID0gY2RyKGdhbWVEYXRhKTtcbiAgICBjb25zb2xlLmxvZyhgUXVlc3Rpb246ICR7cXVlc3Rpb259YCk7XG4gICAgY29uc3QgYW5zd2VyID0gcmVhZGxpbmVTeW5jLnF1ZXN0aW9uKCdZb3VyIGFuc3dlcjogJyk7XG4gICAgaWYgKGV4cGVjdGVkQW5zd2VyID09PSBhbnN3ZXIpIHtcbiAgICAgIGNvbnNvbGUubG9nKCdDb3JyZWN0IScpO1xuICAgICAgZ2FtZUl0ZXIoaXRlcmF0aW9uQ291bnQgLSAxKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5sb2coYCcke2Fuc3dlcn0nIGlzIGlzIHdyb25nIGFuc3dlciA7KC4gQ29ycmVjdCBhbnN3ZXIgd2FzICcke2V4cGVjdGVkQW5zd2VyfScuYCk7XG4gICAgICBjb25zb2xlLmxvZyhgTGV0J3MgdHJ5IGFnYWluLCAke3VzZXJOYW1lfWApO1xuICAgIH1cbiAgfTtcbiAgZ2FtZUl0ZXIobWF4SXRlcmF0aW9uQ291bnQpO1xufTtcbiJdfQ==