hexlet-project-lvl1-german
Version:
Project1 from hexlet. Brain Games.
45 lines (35 loc) • 4.34 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _readlineSync = require('readline-sync');
var _readlineSync2 = _interopRequireDefault(_readlineSync);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var rightAnswersForWin = 3;
var showWrongMessage = function showWrongMessage(userAnswer, answer, name) {
console.log('\'' + userAnswer + '\' is wrong answer ;(. Correct answer was \'' + answer + '\'.');
console.log('Let\'s try again, ' + name + '!');
};
var gameProcess = function gameProcess(description, generateAnswerAndQuestion) {
console.log('Welcome to the Brain Games!');
console.log(description);
console.log();
var actualName = _readlineSync2.default.question('May I have your name? ');
console.log('Hello, ' + actualName + '!');
console.log();
for (var i = 0; i < rightAnswersForWin; i += 1) {
var _generateAnswerAndQue = generateAnswerAndQuestion(),
question = _generateAnswerAndQue.question,
answer = _generateAnswerAndQue.answer;
console.log('Question: ' + question);
var userAnswer = _readlineSync2.default.question('Your answer: ');
if (userAnswer !== answer) {
showWrongMessage(userAnswer, answer, actualName);
return;
}
console.log('Correct!');
}
console.log('Congratulations, ' + actualName + '!');
};
exports.default = gameProcess;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJyaWdodEFuc3dlcnNGb3JXaW4iLCJzaG93V3JvbmdNZXNzYWdlIiwidXNlckFuc3dlciIsImFuc3dlciIsIm5hbWUiLCJjb25zb2xlIiwibG9nIiwiZ2FtZVByb2Nlc3MiLCJkZXNjcmlwdGlvbiIsImdlbmVyYXRlQW5zd2VyQW5kUXVlc3Rpb24iLCJhY3R1YWxOYW1lIiwicmVhZGxpbmVTeW5jIiwicXVlc3Rpb24iLCJpIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7Ozs7O0FBRUEsSUFBTUEscUJBQXFCLENBQTNCOztBQUVBLElBQU1DLG1CQUFtQixTQUFuQkEsZ0JBQW1CLENBQUNDLFVBQUQsRUFBYUMsTUFBYixFQUFxQkMsSUFBckIsRUFBOEI7QUFDckRDLFVBQVFDLEdBQVIsUUFBZ0JKLFVBQWhCLG9EQUF1RUMsTUFBdkU7QUFDQUUsVUFBUUMsR0FBUix3QkFBZ0NGLElBQWhDO0FBQ0QsQ0FIRDs7QUFLQSxJQUFNRyxjQUFjLFNBQWRBLFdBQWMsQ0FBQ0MsV0FBRCxFQUFjQyx5QkFBZCxFQUE0QztBQUM5REosVUFBUUMsR0FBUixDQUFZLDZCQUFaO0FBQ0FELFVBQVFDLEdBQVIsQ0FBWUUsV0FBWjtBQUNBSCxVQUFRQyxHQUFSO0FBQ0EsTUFBTUksYUFBYUMsdUJBQWFDLFFBQWIsQ0FBc0Isd0JBQXRCLENBQW5CO0FBQ0FQLFVBQVFDLEdBQVIsYUFBc0JJLFVBQXRCO0FBQ0FMLFVBQVFDLEdBQVI7QUFDQSxPQUFLLElBQUlPLElBQUksQ0FBYixFQUFnQkEsSUFBSWIsa0JBQXBCLEVBQXdDYSxLQUFLLENBQTdDLEVBQWdEO0FBQUEsZ0NBQ2pCSiwyQkFEaUI7QUFBQSxRQUN0Q0csUUFEc0MseUJBQ3RDQSxRQURzQztBQUFBLFFBQzVCVCxNQUQ0Qix5QkFDNUJBLE1BRDRCOztBQUU5Q0UsWUFBUUMsR0FBUixnQkFBeUJNLFFBQXpCO0FBQ0EsUUFBTVYsYUFBYVMsdUJBQWFDLFFBQWIsQ0FBc0IsZUFBdEIsQ0FBbkI7QUFDQSxRQUFJVixlQUFlQyxNQUFuQixFQUEyQjtBQUN6QkYsdUJBQWlCQyxVQUFqQixFQUE2QkMsTUFBN0IsRUFBcUNPLFVBQXJDO0FBQ0E7QUFDRDtBQUNETCxZQUFRQyxHQUFSLENBQVksVUFBWjtBQUNEOztBQUVERCxVQUFRQyxHQUFSLHVCQUFnQ0ksVUFBaEM7QUFDRCxDQW5CRDs7a0JBcUJlSCxXIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHJlYWRsaW5lU3luYyBmcm9tICdyZWFkbGluZS1zeW5jJztcblxuY29uc3QgcmlnaHRBbnN3ZXJzRm9yV2luID0gMztcblxuY29uc3Qgc2hvd1dyb25nTWVzc2FnZSA9ICh1c2VyQW5zd2VyLCBhbnN3ZXIsIG5hbWUpID0+IHtcbiAgY29uc29sZS5sb2coYCcke3VzZXJBbnN3ZXJ9JyBpcyB3cm9uZyBhbnN3ZXIgOyguIENvcnJlY3QgYW5zd2VyIHdhcyAnJHthbnN3ZXJ9Jy5gKTtcbiAgY29uc29sZS5sb2coYExldCdzIHRyeSBhZ2FpbiwgJHtuYW1lfSFgKTtcbn07XG5cbmNvbnN0IGdhbWVQcm9jZXNzID0gKGRlc2NyaXB0aW9uLCBnZW5lcmF0ZUFuc3dlckFuZFF1ZXN0aW9uKSA9PiB7XG4gIGNvbnNvbGUubG9nKCdXZWxjb21lIHRvIHRoZSBCcmFpbiBHYW1lcyEnKTtcbiAgY29uc29sZS5sb2coZGVzY3JpcHRpb24pO1xuICBjb25zb2xlLmxvZygpO1xuICBjb25zdCBhY3R1YWxOYW1lID0gcmVhZGxpbmVTeW5jLnF1ZXN0aW9uKCdNYXkgSSBoYXZlIHlvdXIgbmFtZT8gJyk7XG4gIGNvbnNvbGUubG9nKGBIZWxsbywgJHthY3R1YWxOYW1lfSFgKTtcbiAgY29uc29sZS5sb2coKTtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCByaWdodEFuc3dlcnNGb3JXaW47IGkgKz0gMSkge1xuICAgIGNvbnN0IHsgcXVlc3Rpb24sIGFuc3dlciB9ID0gZ2VuZXJhdGVBbnN3ZXJBbmRRdWVzdGlvbigpO1xuICAgIGNvbnNvbGUubG9nKGBRdWVzdGlvbjogJHtxdWVzdGlvbn1gKTtcbiAgICBjb25zdCB1c2VyQW5zd2VyID0gcmVhZGxpbmVTeW5jLnF1ZXN0aW9uKCdZb3VyIGFuc3dlcjogJyk7XG4gICAgaWYgKHVzZXJBbnN3ZXIgIT09IGFuc3dlcikge1xuICAgICAgc2hvd1dyb25nTWVzc2FnZSh1c2VyQW5zd2VyLCBhbnN3ZXIsIGFjdHVhbE5hbWUpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zb2xlLmxvZygnQ29ycmVjdCEnKTtcbiAgfVxuXG4gIGNvbnNvbGUubG9nKGBDb25ncmF0dWxhdGlvbnMsICR7YWN0dWFsTmFtZX0hYCk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBnYW1lUHJvY2VzcztcbiJdfQ==