-
Notifications
You must be signed in to change notification settings - Fork 0
/
ramen.js
45 lines (40 loc) · 926 Bytes
/
ramen.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
export class RamenAutomat {
constructor() {
this.coins = 0;
this.ramens = {
0: 2,
1: 3,
2: 4,
3: 5
};
this.selectedPrice = null;
}
insertCoin() {
this.coins += 1;
return "Your credit: " + this.coins;
}
select(n) {
if (this.ramens[n] <= this.coins) {
this.selectedPrice = this.ramens[n];
return ["You have selected ramen " + n, this.ramens[n]]
} else {
return ["Not enough coins", this.ramens[n]];
}
}
chooseRamen() {
if (this.selectedPrice) {
if (this.coins == this.selectedPrice) {
this.coins = 0;
return "Take your ramen";
} if (this.coins > this.selectedPrice) {
this.coins = 0;
return "Take your ramen and don't forget your change!";
}
}
}
cancel() {
const coinsIn = this.coins
this.coins = 0;
return coinsIn + " coins in tray"
}
};