繁体   English   中英

石头,纸,剪刀游戏没有添加

[英]Rock, Paper, Scissors Game not adding

我意识到这是又一个石头、纸、剪刀游戏,但我有点卡住了。 我需要这一部分的帮助,然后我想弄清楚 rest。

我有这个运行 5 个循环,现在它运行 3 个。此外,我无法让 playerScore 和 computerScore 添加每一轮(即玩家连续获胜两次,然后 playerScore 应该等于 2)下面是我的代码,我已经尝试了很多选择,并在互联网上搜索了几天试图弄清楚这一点。 如果我有任何语法错误,请告诉我,我会在再次发布之前修复。 谢谢!

var playerScore = 0;
var computerScore = 0;

function computerPlay() {
  const cptchoice = ["Rock", "Paper", "Scissors"];
  const randomNumber = Math.floor(Math.random() * 3);
  return cptchoice[randomNumber];
}

function playerPlay() {
  const playerPrompt = prompt("Paper, Scissors, or Rock");
  return playerPrompt[0].toUpperCase() + playerPrompt.slice(1).toLowerCase();
}

var playRound = function() {
  for (var i = 0; i < 5; i++) {
    const playerSelection = playerPlay();
    const computerSelection = computerPlay();
    switch (playerSelection + computerSelection) {
      case "PaperRock":
      case "RockScissors":
      case "ScissorsPaper":
        console.log("Win");
        return playerScore + 1;
        break;
      case "PaperScissors":
      case "RockPaper":
      case "ScissorsRock":
        console.log("Lose");
        return computerScore + 1;
        break;
      case "PaperPaper":
      case "RockRock":
      case "ScissorsScissors":
        console.log("Tie");
        console.log(playerScore + 0);
    }
    console.log(playerScore);
  }
};

您在 switch case 语句中调用return ,这导致 function playRound()完成执行。 如果您只是删除return并仅添加到分数,它将一直 go 。

 var playerScore = 0; var computerScore = 0; function computerPlay() { const cptchoice = ["Rock", "Paper", "Scissors"]; const randomNumber = Math.floor(Math.random() * 3); return cptchoice[randomNumber]; } function playerPlay() { const playerPrompt = prompt("Paper, Scissors, or Rock"); return playerPrompt[0].toUpperCase() + playerPrompt.slice(1).toLowerCase(); } var playRound = function() { const playerSelection = playerPlay(); const computerSelection = computerPlay(); switch (playerSelection + computerSelection) { case "PaperRock": case "RockScissors": case "ScissorsPaper": console.log("Win"); playerScore += 1; break; case "PaperScissors": case "RockPaper": case "ScissorsRock": console.log("Lose"); computerScore += 1; break; case "PaperPaper": case "RockRock": case "ScissorsScissors": console.log("Tie"); } console.log(playerScore); }; for (var i = 0; i < 5; i++) { playRound(); }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM