newbymikhail
Version:
brain-games project for student
48 lines (40 loc) • 4.49 kB
JavaScript
;
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 roundCount = 3;
var iter = function iter(questionAndAnswer, count) {
if (count === 0) {
return true;
}
var pair = questionAndAnswer();
var question = (0, _hexletPairs.car)(pair);
console.log('' + question);
var answer = _readlineSync2.default.question('Your answer: ');
var correctAnswer = (0, _hexletPairs.cdr)(pair);
if (answer !== correctAnswer) {
console.log('\'' + answer + '\' is wrong answer ;(. Correct answer was \'' + correctAnswer + '\'.');
return false;
}
console.log('Correct!');
return iter(questionAndAnswer, count - 1);
};
exports.default = function (descriptionGame, questionAndAnswer) {
console.log('Welcome to the Brain Games!');
console.log(descriptionGame);
console.log();
var name = _readlineSync2.default.question('May I have your name? ');
console.log('Hello, ' + name + '!');
console.log();
var isWin = iter(questionAndAnswer, roundCount);
if (isWin) {
console.log('Congratulations, ' + name + '!');
} else {
console.log('Let\'s try again, ' + name + '!');
}
};
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9nYW1lLmpzIl0sIm5hbWVzIjpbInJvdW5kQ291bnQiLCJpdGVyIiwicXVlc3Rpb25BbmRBbnN3ZXIiLCJjb3VudCIsInBhaXIiLCJxdWVzdGlvbiIsImNvbnNvbGUiLCJsb2ciLCJhbnN3ZXIiLCJyZWFkbGluZVN5bmMiLCJjb3JyZWN0QW5zd2VyIiwiZGVzY3JpcHRpb25HYW1lIiwibmFtZSIsImlzV2luIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7OztBQUNBOzs7O0FBRUEsSUFBTUEsYUFBYSxDQUFuQjs7QUFFQSxJQUFNQyxPQUFPLFNBQVBBLElBQU8sQ0FBQ0MsaUJBQUQsRUFBb0JDLEtBQXBCLEVBQThCO0FBQ3pDLE1BQUlBLFVBQVUsQ0FBZCxFQUFpQjtBQUNmLFdBQU8sSUFBUDtBQUNEO0FBQ0QsTUFBTUMsT0FBT0YsbUJBQWI7QUFDQSxNQUFNRyxXQUFXLHNCQUFJRCxJQUFKLENBQWpCO0FBQ0FFLFVBQVFDLEdBQVIsTUFBZUYsUUFBZjtBQUNBLE1BQU1HLFNBQVNDLHVCQUFhSixRQUFiLENBQXNCLGVBQXRCLENBQWY7QUFDQSxNQUFNSyxnQkFBZ0Isc0JBQUlOLElBQUosQ0FBdEI7QUFDQSxNQUFJSSxXQUFXRSxhQUFmLEVBQThCO0FBQzVCSixZQUFRQyxHQUFSLFFBQWdCQyxNQUFoQixvREFBbUVFLGFBQW5FO0FBQ0EsV0FBTyxLQUFQO0FBQ0Q7QUFDREosVUFBUUMsR0FBUixDQUFZLFVBQVo7QUFDQSxTQUFPTixLQUFLQyxpQkFBTCxFQUF3QkMsUUFBUSxDQUFoQyxDQUFQO0FBQ0QsQ0FmRDs7a0JBaUJlLFVBQUNRLGVBQUQsRUFBa0JULGlCQUFsQixFQUF3QztBQUNyREksVUFBUUMsR0FBUixDQUFZLDZCQUFaO0FBQ0FELFVBQVFDLEdBQVIsQ0FBWUksZUFBWjtBQUNBTCxVQUFRQyxHQUFSO0FBQ0EsTUFBTUssT0FBT0gsdUJBQWFKLFFBQWIsQ0FBc0Isd0JBQXRCLENBQWI7QUFDQUMsVUFBUUMsR0FBUixhQUFzQkssSUFBdEI7QUFDQU4sVUFBUUMsR0FBUjtBQUNBLE1BQU1NLFFBQVFaLEtBQUtDLGlCQUFMLEVBQXdCRixVQUF4QixDQUFkO0FBQ0EsTUFBSWEsS0FBSixFQUFXO0FBQ1RQLFlBQVFDLEdBQVIsdUJBQWdDSyxJQUFoQztBQUNELEdBRkQsTUFFTztBQUNMTixZQUFRQyxHQUFSLHdCQUFnQ0ssSUFBaEM7QUFDRDtBQUNGLEMiLCJmaWxlIjoiZ2FtZS5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCByZWFkbGluZVN5bmMgZnJvbSAncmVhZGxpbmUtc3luYyc7XHJcbmltcG9ydCB7IGNhciwgY2RyIH0gZnJvbSAnaGV4bGV0LXBhaXJzJztcclxuXHJcbmNvbnN0IHJvdW5kQ291bnQgPSAzO1xyXG5cclxuY29uc3QgaXRlciA9IChxdWVzdGlvbkFuZEFuc3dlciwgY291bnQpID0+IHtcclxuICBpZiAoY291bnQgPT09IDApIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuICBjb25zdCBwYWlyID0gcXVlc3Rpb25BbmRBbnN3ZXIoKTtcclxuICBjb25zdCBxdWVzdGlvbiA9IGNhcihwYWlyKTtcclxuICBjb25zb2xlLmxvZyhgJHtxdWVzdGlvbn1gKTtcclxuICBjb25zdCBhbnN3ZXIgPSByZWFkbGluZVN5bmMucXVlc3Rpb24oJ1lvdXIgYW5zd2VyOiAnKTtcclxuICBjb25zdCBjb3JyZWN0QW5zd2VyID0gY2RyKHBhaXIpO1xyXG4gIGlmIChhbnN3ZXIgIT09IGNvcnJlY3RBbnN3ZXIpIHtcclxuICAgIGNvbnNvbGUubG9nKGAnJHthbnN3ZXJ9JyBpcyB3cm9uZyBhbnN3ZXIgOyguIENvcnJlY3QgYW5zd2VyIHdhcyAnJHtjb3JyZWN0QW5zd2VyfScuYCk7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG4gIGNvbnNvbGUubG9nKCdDb3JyZWN0IScpO1xyXG4gIHJldHVybiBpdGVyKHF1ZXN0aW9uQW5kQW5zd2VyLCBjb3VudCAtIDEpO1xyXG59O1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgKGRlc2NyaXB0aW9uR2FtZSwgcXVlc3Rpb25BbmRBbnN3ZXIpID0+IHtcclxuICBjb25zb2xlLmxvZygnV2VsY29tZSB0byB0aGUgQnJhaW4gR2FtZXMhJyk7XHJcbiAgY29uc29sZS5sb2coZGVzY3JpcHRpb25HYW1lKTtcclxuICBjb25zb2xlLmxvZygpO1xyXG4gIGNvbnN0IG5hbWUgPSByZWFkbGluZVN5bmMucXVlc3Rpb24oJ01heSBJIGhhdmUgeW91ciBuYW1lPyAnKTtcclxuICBjb25zb2xlLmxvZyhgSGVsbG8sICR7bmFtZX0hYCk7XHJcbiAgY29uc29sZS5sb2coKTtcclxuICBjb25zdCBpc1dpbiA9IGl0ZXIocXVlc3Rpb25BbmRBbnN3ZXIsIHJvdW5kQ291bnQpO1xyXG4gIGlmIChpc1dpbikge1xyXG4gICAgY29uc29sZS5sb2coYENvbmdyYXR1bGF0aW9ucywgJHtuYW1lfSFgKTtcclxuICB9IGVsc2Uge1xyXG4gICAgY29uc29sZS5sb2coYExldCdzIHRyeSBhZ2FpbiwgJHtuYW1lfSFgKTtcclxuICB9XHJcbn07XHJcbiJdfQ==