-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgame.js
149 lines (123 loc) · 4.78 KB
/
game.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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
/*
GAME RULES:
- The game has 2 players, playing in rounds
- In each turn, a player rolls a dice as many times as he whishes. Each result get added to his ROUND score
- BUT, if the player rolls a 1, all his ROUND score gets lost. After that, it's the next player's turn
- The player can choose to 'Hold', which means that his ROUND score gets added to his GLBAL score. After that, it's the next player's turn
- The first player to reach 100 points on GLOBAL score wins the game
*/
/// setting varibles for game
let scores, roundScore, activePlayer, dice, gameOn;
// let imgDice = document.querySelector('.dice');
let DICE = document.getElementById('dice-1');
let DICE2 = document.getElementById('dice-2');
DICE.style.display = 'block';
DICE2.style.display = 'block';
function init() {
scores = [0, 0];
roundScore = 0;
activePlayer = 0;
gameOn = true;
//setting img display to none
DICE.style.display = 'none';
DICE2.style.display = 'none';
// console.log('skjdf');
/// change score p1 p2
// setting score to 0
let currentScoreP1 = document.getElementById('current-0').textContent = '0';
let currentScoreP2 = document.getElementById('current-1').textContent = '0';
//seting score to 0
let ScoreP0 = document.getElementById('score-0').textContent = '0';
let ScoreP1 = document.getElementById('score-1').textContent = '0';
// resign thire name
document.querySelector('#name-0').textContent = 'Player 1';
document.querySelector('#name-1').textContent = 'Player 2';
//rid of 2nd palyer active and get 1st player active
document.querySelector('.player-0-panel').classList.remove('Winner');
document.querySelector('.player-1-panel').classList.remove('Winner');
document.querySelector('.player-0-panel').classList.remove('active');
document.querySelector('.player-1-panel').classList.remove('active');
document.querySelector('.player-0-panel').classList.add('active');
document.querySelector('.player-1-panel').classList.remove('active');
}
init();
//swapPlayer function//
const swapPlayer = () => {
if (activePlayer === 1) {
activePlayer = 0;
} else if (activePlayer == 0) {
activePlayer = 1;
}
// imgDice.style.display = 'none';
roundScore = 0;
document.querySelector('#current-' + activePlayer).textContent = roundScore;
//changing their score
document.querySelector('#current-0').textContent = 0;
document.querySelector('#current-1').textContent = 0;
document.querySelector('.player-0-panel').classList.toggle('active');
document.querySelector('.player-1-panel').classList.toggle('active');
};
// Who won??
const winGame = () => {
let input = document.querySelector('.final-score').value;
let winningScore;
if (input) {
winningScore = input;
} else {
winningScore = 100;
}
if (scores[activePlayer] >= winningScore) {
document.querySelector('#name-' + activePlayer).textContent = 'Winner';
document.querySelector('.player-' + activePlayer + '-panel').classList.add('winner');
document.querySelector('.player-' + activePlayer + '-panel').classList.remove('active');
DICE.style.display = 'none';
DICE2.style.display = 'none';
gameOn = false;
} else {
swapPlayer();
}
};
let dicePrev, dice2;
//////////dice roll method
let diceRoll = document.querySelector('.btn-roll').addEventListener('click', () => {
if (gameOn) {
dice = Math.floor(Math.random() * 6) + 1;
dice1 = Math.floor(Math.random() * 6) + 1;
// console.log(dice);
dicePrev = dice;
// console.log('this is dicePrev ' + dicePrev);
// console.log('this is dice2 ' + dice2);
if (dice1 === dice) {
scores[activePlayer] = 0;
document.querySelector('#score-' + activePlayer).textContent = scores[activePlayer];
swapPlayer();
}
//
DICE.style.display = 'block';
DICE2.style.display = 'block';
DICE.src = 'img/dice-' + dice + '.png';
DICE2.src = 'img/dice-' + dice1 + '.png';
if (dice !== 1 && dice1 !== 1) {
roundScore += dice + dice1;
document.querySelector('#current-' + activePlayer).textContent = roundScore;
} else {
swapPlayer();
}
}
});
// btn hold//
let btnhold = document.querySelector('.btn-hold').addEventListener('click', () => {
if (gameOn) {
scores[activePlayer] += roundScore;
document.querySelector('#score-' + activePlayer).textContent = scores[activePlayer];
winGame();
// swapPlayer();
}
});
let btnNew = document.querySelector('.btn-new').addEventListener('click', init);
/// Creating some new ruls for the game!
/*
rule -1: if a player rolls two 6 then it's next players turn
--rule-1 DONE
issu -1: create a input field where user can set the winng score
*/