В Javascript мой onEvent не вызывается, в то время как другие onEvents - PullRequest
0 голосов
/ 11 апреля 2019

Я сейчас создаю игру в блэкджек.В моей игре, когда пользователь нажимает «Остановиться», программа предполагает, чтобы найти, кто ближе к 21, пользователь или дом.Когда я нажимаю «остаться», в моей программе ничего не происходит.Любая помощь будет оценена.Спасибо за чтение.

onEvent("stayButton","clicked", function()   {

 if (userTotal == 21) {
      setText("userArea","Player total is: " + userTotal +" Player wins!");
 }
  houseTotal();

  while (houseTotal < 17)  {
    appendItem( houseHand,deck.pop() );
    houseHandTotal();
  }

  if (houseTotal > 21) {
   setText("houseArea","House busts, User wins");
   var userWins = betAmount * 1.2;
   TotalMoney = TotalMoney + userWins;
  }

  setText("houseArea",houseHand + "house total is: " + houseTotal);

  if ( 21 - userTotal < 21-houseTotal && userHandValue != "bust" && houseHandValue != "bust")   
  {
    setText("userArea","Player total is: " + userTotal +" Player wins!");
  }

  else if (21 - userTotal > 21-houseTotal && userHandValue != "bust" && houseHandValue != "bust") 
  {
    setText("userArea","Player total is: " + userTotal +" Player loses!");
  }

});

1 Ответ

0 голосов
/ 11 апреля 2019

Если onEvent - это оболочка для addEventListener, то правильное имя события будет click, а не clicked.

Другие мелкие пункты очистки:

  • Кроме того, используйте === и !== для сравнения на равенство вместо == и !=, чтобы избежать нюансов, связанных с преобразованием типов.
  • Наконец, в основном стилистический код JS предпочитает одинарные кавычки для строк '.
  • Не специфично для JS, но попробуйте использовать логический подход к новым строкам в вашем коде, чтобы сделать его читабельным.
onEvent('stayButton', 'click', () => {
  if (userTotal === 21)
    setText('userArea', 'Player total is: ' + userTotal + ' Player wins!');

  houseTotal();
  while (houseTotal < 17) {
    appendItem(houseHand, deck.pop());
    houseHandTotal();
  }

  if (houseTotal > 21) {
    setText('houseArea', 'House busts, User wins');
    let userWins = betAmount * 1.2;
    TotalMoney = TotalMoney + userWins;
  }

  setText('houseArea', houseHand + 'house total is: ' + houseTotal);

  if (21 - userTotal < 21 - houseTotal && userHandValue !== 'bust' && houseHandValue !== 'bust')
    setText('userArea', 'Player total is: ' + userTotal + ' Player wins!');
  else if (21 - userTotal > 21 - houseTotal && userHandValue !== 'bust' && houseHandValue !== 'bust')
    setText('userArea', 'Player total is: ' + userTotal + ' Player loses!');
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...