Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- 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
- */
- var scores, roundScores, activePlayer, dice, dice2, gamePlaying, dicedNum, winValue;
- init();
- //winValue = document.getElementById('win-value').value;
- document.querySelector('.btn-roll').addEventListener('click', function(){
- if (gamePlaying) {
- //1. Roll random nm
- var dice = Math.floor(Math.random()*6)+1;
- var dice2 = Math.floor(Math.random()*6)+1;
- //2. Display result
- displayResults(dice, '');
- displayResults(dice2, '2');
- // GRACZ WYLOSOWAL 1
- if (dice ===1 || dice2 ===1){
- nextPlayer();
- dicedNum = 0;
- }
- // GRACZ WYLOSOWAL 6 PIERWSZY RAZ
- else if ((dice === 6 || dice2 === 6) && dicedNum === 0) {
- dicedNum = 6;
- roundScore += dice + dice2;
- document.querySelector('#current-' + activePlayer).textContent = roundScore;
- }
- // GRACZ WYLOSOWAL COS INNEGO NIZ 6
- else if (dice !== 6 && dice2 !== 6){
- dicedNum = 0;
- roundScore += dice + dice2;
- document.querySelector('#current-' + activePlayer).textContent = roundScore;
- }
- // GRACZ WYLOSOWAL DRUGI RAZ 6
- else if ((dice === 6 || dice2 === 6) && dicedNum === 6) {
- dicedNum = 0;
- scores[activePlayer] = 0;
- document.getElementById('score-'+activePlayer).textContent = '0';
- nextPlayer();
- }
- else if (dice === 6 && dice2 === 6) {
- dicedNum = 0;
- scores[activePlayer] = 0;
- document.getElementById('score-'+activePlayer).textContent = '0';
- nextPlayer();
- }
- }
- });
- document.querySelector('.btn-hold').addEventListener('click', function(){
- if (gamePlaying) {
- //1. Add current score to global score.
- scores[activePlayer] += roundScore;
- //2. Update the UI
- document.getElementById('score-'+activePlayer).textContent = scores[activePlayer];
- //3. Check if player won the game
- if (scores[activePlayer] >= document.getElementById('win-value').value) {
- document.getElementById('name-'+activePlayer).textContent = 'WINNER';
- document.querySelector('.dice').style.display = 'none';
- document.querySelector('.player-'+activePlayer+'-panel').classList.add('winner');
- document.querySelector('.player-'+activePlayer+'-panel').classList.remove('active');
- gamePlaying = false;
- } else {
- nextPlayer();
- }
- }
- });
- function nextPlayer() {
- activePlayer === 0 ? activePlayer = 1 : activePlayer = 0;
- roundScore = 0;
- document.getElementById('current-0').textContent = '0';
- document.getElementById('current-1').textContent = '0';
- document.querySelector('.player-0-panel').classList.toggle('active');
- document.querySelector('.player-1-panel').classList.toggle('active');
- document.querySelector('.dice').style.display = 'none';
- document.querySelector('.dice2').style.display = 'none';
- }
- function displayResults(dice, diceNum){
- var diceDOM = document.querySelector('.dice'+diceNum);
- diceDOM.style.display = 'block';
- diceDOM.src = 'dice-'+dice+'.png';
- }
- document.querySelector('.btn-new').addEventListener('click', init);
- function init() {
- scores = [0,0];
- activePlayer = 0;
- roundScore = 0;
- dicedNum = 0;
- gamePlaying = true;
- document.querySelector('.dice').style.display = 'none';
- document.getElementById('score-0').textContent = '0';
- document.getElementById('score-1').textContent = '0';
- document.getElementById('current-0').textContent = '0';
- document.getElementById('current-1').textContent = '0';
- document.getElementById('name-0').textContent = 'Player 1';
- document.getElementById('name-1').textContent = 'Player 2';
- 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');
- }
- /* dice = Math.round(Math.random()*6);
- document.querySelector('#current-' + activePlayer).textContent = dice;
- var x = document.querySelector('#score-0').textContent;
- console.log(x); */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement