Skip to content

Commit a52649c

Browse files
committed
Impove architecture by adding general logic to index.js & update even-game according to it
1 parent 3b8b1a1 commit a52649c

File tree

3 files changed

+28
-28
lines changed

3 files changed

+28
-28
lines changed

bin/brain-even.js

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
11
#!/usr/bin/env node
22

3-
import askIsEven from '../src/even.js';
4-
import getName from '../src/cli.js';
3+
import run from '../src/games/even.js';
54

6-
const name = getName();
7-
console.log('Answer "yes" if the number is even, otherwise answer "no".');
8-
askIsEven(name);
5+
run();

src/even.js

Lines changed: 0 additions & 23 deletions
This file was deleted.

src/index.js

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
import readlineSync from 'readline-sync';
2+
import getName from './cli.js';
3+
4+
const playGame = (rules, game) => {
5+
const name = getName();
6+
console.log(rules);
7+
8+
for (let gameRound = 1; gameRound <= 3; gameRound += 1) {
9+
const [question, correctAnswer] = game();
10+
console.log('Question: ', question);
11+
const answer = readlineSync.question('Your answer: ');
12+
13+
if (answer === correctAnswer) {
14+
console.log('Correct!');
15+
if (gameRound === 3) {
16+
console.log(`Congratulations, ${name}!`);
17+
}
18+
} else {
19+
console.log(`'${answer}' is wrong answer ;(. Correct answer was '${correctAnswer}'.`);
20+
console.log(`Let's try again, ${name}!`);
21+
break;
22+
}
23+
}
24+
};
25+
26+
export default playGame;

0 commit comments

Comments
 (0)