UNPKG

brain-games-by-botirk

Version:

game developed for hexlet.io education course

55 lines (39 loc) 4.43 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.playGame = exports.congratulate = exports.questionNameAndSayHello = exports.sayWelcome = void 0; var _readlineSync = _interopRequireDefault(require("readline-sync")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const sayWelcome = () => { console.log('\nWelcome to the Brain Games!'); }; exports.sayWelcome = sayWelcome; const questionNameAndSayHello = () => { const name = _readlineSync.default.question('\nMay I have your name? '); console.log(`\nHello, ${name}`); return name; }; exports.questionNameAndSayHello = questionNameAndSayHello; const congratulate = name => console.log(`\nCongratulations, ${name}!`); exports.congratulate = congratulate; const correctGamesCount = 3; const playGame = (instruction, generator) => { sayWelcome(); const name = questionNameAndSayHello(); console.log(`\n${instruction}`); for (let i = 0; i < correctGamesCount;) { const [question, answer] = generator(); const userAnswer = _readlineSync.default.question(`\nQuestion: ${question}\nYour answer: `); if (userAnswer === answer) { console.log('Correct!'); i += 1; } else { console.log(`'${userAnswer}' is wrong answer ;(. Correct answer was '${answer}'`); return; } } congratulate(name); }; exports.playGame = playGame; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5qcyJdLCJuYW1lcyI6WyJzYXlXZWxjb21lIiwiY29uc29sZSIsImxvZyIsInF1ZXN0aW9uTmFtZUFuZFNheUhlbGxvIiwibmFtZSIsInJlYWRsaW5lU3luYyIsInF1ZXN0aW9uIiwiY29uZ3JhdHVsYXRlIiwiY29ycmVjdEdhbWVzQ291bnQiLCJwbGF5R2FtZSIsImluc3RydWN0aW9uIiwiZ2VuZXJhdG9yIiwiaSIsImFuc3dlciIsInVzZXJBbnN3ZXIiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7OztBQUVPLE1BQU1BLFVBQVUsR0FBRyxNQUFNO0FBQzlCQyxFQUFBQSxPQUFPLENBQUNDLEdBQVIsQ0FBWSwrQkFBWjtBQUNELENBRk07Ozs7QUFJQSxNQUFNQyx1QkFBdUIsR0FBRyxNQUFNO0FBQzNDLFFBQU1DLElBQUksR0FBR0Msc0JBQWFDLFFBQWIsQ0FBc0IsMEJBQXRCLENBQWI7O0FBQ0FMLEVBQUFBLE9BQU8sQ0FBQ0MsR0FBUixDQUFhLFlBQVdFLElBQUssRUFBN0I7QUFDQSxTQUFPQSxJQUFQO0FBQ0QsQ0FKTTs7OztBQU1BLE1BQU1HLFlBQVksR0FBR0gsSUFBSSxJQUFJSCxPQUFPLENBQUNDLEdBQVIsQ0FBYSxzQkFBcUJFLElBQUssR0FBdkMsQ0FBN0I7OztBQUVQLE1BQU1JLGlCQUFpQixHQUFHLENBQTFCOztBQUNPLE1BQU1DLFFBQVEsR0FBRyxDQUFDQyxXQUFELEVBQWNDLFNBQWQsS0FBNEI7QUFDbERYLEVBQUFBLFVBQVU7QUFDVixRQUFNSSxJQUFJLEdBQUdELHVCQUF1QixFQUFwQztBQUNBRixFQUFBQSxPQUFPLENBQUNDLEdBQVIsQ0FBYSxLQUFJUSxXQUFZLEVBQTdCOztBQUNBLE9BQUssSUFBSUUsQ0FBQyxHQUFHLENBQWIsRUFBZ0JBLENBQUMsR0FBR0osaUJBQXBCLEdBQXdDO0FBQ3RDLFVBQU0sQ0FBQ0YsUUFBRCxFQUFXTyxNQUFYLElBQXFCRixTQUFTLEVBQXBDOztBQUNBLFVBQU1HLFVBQVUsR0FBR1Qsc0JBQWFDLFFBQWIsQ0FBdUIsZUFBY0EsUUFBUyxpQkFBOUMsQ0FBbkI7O0FBQ0EsUUFBSVEsVUFBVSxLQUFLRCxNQUFuQixFQUEyQjtBQUN6QlosTUFBQUEsT0FBTyxDQUFDQyxHQUFSLENBQVksVUFBWjtBQUNBVSxNQUFBQSxDQUFDLElBQUksQ0FBTDtBQUNELEtBSEQsTUFHTztBQUNMWCxNQUFBQSxPQUFPLENBQUNDLEdBQVIsQ0FBYSxJQUFHWSxVQUFXLDZDQUE0Q0QsTUFBTyxHQUE5RTtBQUNBO0FBQ0Q7QUFDRjs7QUFDRE4sRUFBQUEsWUFBWSxDQUFDSCxJQUFELENBQVo7QUFDRCxDQWhCTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCByZWFkbGluZVN5bmMgZnJvbSAncmVhZGxpbmUtc3luYyc7XG5cbmV4cG9ydCBjb25zdCBzYXlXZWxjb21lID0gKCkgPT4ge1xuICBjb25zb2xlLmxvZygnXFxuV2VsY29tZSB0byB0aGUgQnJhaW4gR2FtZXMhJyk7XG59O1xuXG5leHBvcnQgY29uc3QgcXVlc3Rpb25OYW1lQW5kU2F5SGVsbG8gPSAoKSA9PiB7XG4gIGNvbnN0IG5hbWUgPSByZWFkbGluZVN5bmMucXVlc3Rpb24oJ1xcbk1heSBJIGhhdmUgeW91ciBuYW1lPyAnKTtcbiAgY29uc29sZS5sb2coYFxcbkhlbGxvLCAke25hbWV9YCk7XG4gIHJldHVybiBuYW1lO1xufTtcblxuZXhwb3J0IGNvbnN0IGNvbmdyYXR1bGF0ZSA9IG5hbWUgPT4gY29uc29sZS5sb2coYFxcbkNvbmdyYXR1bGF0aW9ucywgJHtuYW1lfSFgKTtcblxuY29uc3QgY29ycmVjdEdhbWVzQ291bnQgPSAzO1xuZXhwb3J0IGNvbnN0IHBsYXlHYW1lID0gKGluc3RydWN0aW9uLCBnZW5lcmF0b3IpID0+IHtcbiAgc2F5V2VsY29tZSgpO1xuICBjb25zdCBuYW1lID0gcXVlc3Rpb25OYW1lQW5kU2F5SGVsbG8oKTtcbiAgY29uc29sZS5sb2coYFxcbiR7aW5zdHJ1Y3Rpb259YCk7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgY29ycmVjdEdhbWVzQ291bnQ7KSB7XG4gICAgY29uc3QgW3F1ZXN0aW9uLCBhbnN3ZXJdID0gZ2VuZXJhdG9yKCk7XG4gICAgY29uc3QgdXNlckFuc3dlciA9IHJlYWRsaW5lU3luYy5xdWVzdGlvbihgXFxuUXVlc3Rpb246ICR7cXVlc3Rpb259XFxuWW91ciBhbnN3ZXI6IGApO1xuICAgIGlmICh1c2VyQW5zd2VyID09PSBhbnN3ZXIpIHtcbiAgICAgIGNvbnNvbGUubG9nKCdDb3JyZWN0IScpO1xuICAgICAgaSArPSAxO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLmxvZyhgJyR7dXNlckFuc3dlcn0nIGlzIHdyb25nIGFuc3dlciA7KC4gQ29ycmVjdCBhbnN3ZXIgd2FzICcke2Fuc3dlcn0nYCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICB9XG4gIGNvbmdyYXR1bGF0ZShuYW1lKTtcbn07XG4iXX0=