Advertisement
Guest User

Untitled

a guest
Dec 5th, 2019
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.89 KB | None | 0 0
  1. /*
  2. GAME RULES:
  3.  
  4. - The game has 2 players, playing in rounds
  5. - In each turn, a player rolls a dice as many times as he whishes. Each result get added to his ROUND score
  6. - BUT, if the player rolls a 1, all his ROUND score gets lost. After that, it's the next player's turn
  7. - 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
  8. - The first player to reach 100 points on GLOBAL score wins the game
  9.  
  10. */
  11.  
  12. var scores, roundScores, activePlayer, dice, dice2, gamePlaying, dicedNum, winValue;
  13.  
  14. init();
  15. //winValue = document.getElementById('win-value').value;
  16.  
  17.  
  18. document.querySelector('.btn-roll').addEventListener('click', function(){
  19. if (gamePlaying) {
  20. //1. Roll random nm
  21. var dice = Math.floor(Math.random()*6)+1;
  22. var dice2 = Math.floor(Math.random()*6)+1;
  23. //2. Display result
  24. displayResults(dice, '');
  25. displayResults(dice2, '2');
  26. // GRACZ WYLOSOWAL 1
  27. if (dice ===1 || dice2 ===1){
  28. nextPlayer();
  29. dicedNum = 0;
  30. }
  31. // GRACZ WYLOSOWAL 6 PIERWSZY RAZ
  32. else if ((dice === 6 || dice2 === 6) && dicedNum === 0) {
  33. dicedNum = 6;
  34. roundScore += dice + dice2;
  35. document.querySelector('#current-' + activePlayer).textContent = roundScore;
  36. }
  37. // GRACZ WYLOSOWAL COS INNEGO NIZ 6
  38. else if (dice !== 6 && dice2 !== 6){
  39. dicedNum = 0;
  40. roundScore += dice + dice2;
  41. document.querySelector('#current-' + activePlayer).textContent = roundScore;
  42. }
  43. // GRACZ WYLOSOWAL DRUGI RAZ 6
  44. else if ((dice === 6 || dice2 === 6) && dicedNum === 6) {
  45. dicedNum = 0;
  46. scores[activePlayer] = 0;
  47. document.getElementById('score-'+activePlayer).textContent = '0';
  48. nextPlayer();
  49. }
  50. else if (dice === 6 && dice2 === 6) {
  51. dicedNum = 0;
  52. scores[activePlayer] = 0;
  53. document.getElementById('score-'+activePlayer).textContent = '0';
  54. nextPlayer();
  55. }
  56. }
  57. });
  58.  
  59. document.querySelector('.btn-hold').addEventListener('click', function(){
  60. if (gamePlaying) {
  61. //1. Add current score to global score.
  62. scores[activePlayer] += roundScore;
  63.  
  64. //2. Update the UI
  65. document.getElementById('score-'+activePlayer).textContent = scores[activePlayer];
  66.  
  67. //3. Check if player won the game
  68. if (scores[activePlayer] >= document.getElementById('win-value').value) {
  69. document.getElementById('name-'+activePlayer).textContent = 'WINNER';
  70. document.querySelector('.dice').style.display = 'none';
  71. document.querySelector('.player-'+activePlayer+'-panel').classList.add('winner');
  72. document.querySelector('.player-'+activePlayer+'-panel').classList.remove('active');
  73. gamePlaying = false;
  74. } else {
  75. nextPlayer();
  76. }
  77. }
  78. });
  79.  
  80. function nextPlayer() {
  81. activePlayer === 0 ? activePlayer = 1 : activePlayer = 0;
  82. roundScore = 0;
  83.  
  84. document.getElementById('current-0').textContent = '0';
  85. document.getElementById('current-1').textContent = '0';
  86.  
  87. document.querySelector('.player-0-panel').classList.toggle('active');
  88. document.querySelector('.player-1-panel').classList.toggle('active');
  89.  
  90. document.querySelector('.dice').style.display = 'none';
  91. document.querySelector('.dice2').style.display = 'none';
  92. }
  93.  
  94. function displayResults(dice, diceNum){
  95. var diceDOM = document.querySelector('.dice'+diceNum);
  96. diceDOM.style.display = 'block';
  97. diceDOM.src = 'dice-'+dice+'.png';
  98. }
  99.  
  100. document.querySelector('.btn-new').addEventListener('click', init);
  101.  
  102. function init() {
  103. scores = [0,0];
  104. activePlayer = 0;
  105. roundScore = 0;
  106. dicedNum = 0;
  107. gamePlaying = true;
  108.  
  109. document.querySelector('.dice').style.display = 'none';
  110.  
  111. document.getElementById('score-0').textContent = '0';
  112. document.getElementById('score-1').textContent = '0';
  113. document.getElementById('current-0').textContent = '0';
  114. document.getElementById('current-1').textContent = '0';
  115. document.getElementById('name-0').textContent = 'Player 1';
  116. document.getElementById('name-1').textContent = 'Player 2';
  117. document.querySelector('.player-0-panel').classList.remove('winner');
  118. document.querySelector('.player-1-panel').classList.remove('winner');
  119. document.querySelector('.player-0-panel').classList.remove('active');
  120. document.querySelector('.player-1-panel').classList.remove('active');
  121. document.querySelector('.player-0-panel').classList.add('active');
  122.  
  123.  
  124.  
  125. }
  126.  
  127. /* dice = Math.round(Math.random()*6);
  128. document.querySelector('#current-' + activePlayer).textContent = dice;
  129.  
  130. var x = document.querySelector('#score-0').textContent;
  131. console.log(x); */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement