- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在制作这个刽子手游戏,但我无法让“损失”/“胜利”计数器发挥作用。
看来我有损失计数器可以工作,但猜测的数量会变成负数。它将把比赛计为失败,但不会重置。
当我设置获胜计数时,它会计算每个用户的点击而不是整个单词。到目前为止,我在游戏中所做的一切尝试都失败了。
如何在有人输或赢后重置游戏并保持分数?
function getItem() {
var array = [
{
answer: "harvey",
hint: "Thank you Harvey, I prefer you too."
},
{
answer: "titanic",
hint: "Jack, I’m flying!"
},
{
answer: "jaws",
hint: "You’re Gonna Need A Bigger Boat…"
},
{
answer: "rocky",
hint: "ADRIAAAAAAAAAAAN!!!!!!!!"
},
{
answer: "casablanca",
hint: "We'll always have Paris."
},
{
answer: "braveheart",
hint: "They may take away our lives, but they'll never take our freedom!"
},
{
answer: "goodfellas",
hint: "As far back as I can remember, I always wanted to be a gangster."
},
{
answer: "diehard",
hint: "Nine million terrorists in the world and I gotta kill one with feet smaller than my sister."
},
{
answer: "chinatown",
hint: "Forget it, Jake, it's Chinatown."
},
{
answer: "psycho",
hint: "A boy's best friend is his mother.",
}
]
var randomNumber = Math.floor(Math.random() * array.length);
return array[randomNumber];
};
var randomThing = getItem()
document.getElementById("hint-text").innerHTML = ("Here is your
hint.... " + randomThing.hint.italics());
var blankSpacesAnswer = [];
var blanksAndSuccesses = document.getElementById("blankspaces-text");
for (var i = 0; i < randomThing.answer.length; i++) {
blankSpacesAnswer[i] = "_";
console.log(blankSpacesAnswer);
blanksAndSuccesses.innerHTML = ("Your word: " +
blankSpacesAnswer.join(" "));
};
var currentWord;
var guessingWord = [];
var winCounter = 0;
var lossCounter = 0;
var numGuesses = 12;
var letterGuessed = "";
var wrongGuesses = [];
var remainingLetters = randomThing.answer.length;
document.onkeyup = function (event) {
var userGuess = event.key;
console.log(userGuess);
var answerLetterArray = randomThing.answer.split("");
guessingWord.length = answerLetterArray.length;
console.log(answerLetterArray);
if (remainingLetters > 0) {
var guessesEl = document.getElementById("blankspaces-text")
guessesEl.innerHTML = blankSpacesAnswer.join(" ")
var notFound = false;
for (var i = 0; i < answerLetterArray.length; i++) {
console.log(answerLetterArray[i]);
if (userGuess === answerLetterArray[i]) {
blankSpacesAnswer[i] = userGuess
}
else if (answerLetterArray[i] !== userGuess) {
notFound = true;
}
blanksAndSuccesses.innerHTML = ("Your word: " +
blankSpacesAnswer.join(" "));
document.getElementById("usser-guesses-text").innerHTML =
("Your guesses: " + userGuess);
document.getElementById("wins-text").textContent = ("Wins: " +
winCounter);
}
if (notFound === true) {
numGuesses--;
}
if (numGuesses === 0)
lossCounter++;
}
document.getElementById("guesses-left").textContent = ("Number of
guesses: " + numGuesses);
document.getElementById("losses-text").textContent = ("Losses: " +
lossCounter);
};
最佳答案
您遇到麻烦的根本原因似乎是游戏刚开始就没有真正的设置、获胜或失败的概念。
因此,当您跟踪猜测的状态时,您并没有跟踪游戏本身的状态。
我建议将代码分成几个部分:
设置阶段应设置用户界面、按键处理程序等。
初始化开始游戏(选择一个随机单词,将猜测次数设置为您想要的,等等)
运行/循环只会等待您的输入并跟踪游戏的状态。如果发生赢
或输
情况,则应相应结束游戏。
到达游戏结束时,您可以通过返回初始化阶段来重置/重新启动游戏。
如果您将代码放入函数 setup()
、initialize()
、run()
和 win( )
/lose()
,当你想要/需要切换游戏状态时,可以调用这些函数。
关于javascript - 如何在不重置分数的情况下重置刽子手游戏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53785757/
我正在尝试使用谷歌浏览器的 Trace Event Profiling Tool分析我正在运行的 Node.js 应用程序。选择点样本后,我可以在三种 View 之间进行选择: 自上而下(树) 自上而
对于一个可能是菜鸟的问题,我们深表歉意,但尽管在 SO 上研究了大量教程和其他问题,但仍找不到答案。 我想做的很简单:显示一个包含大量数据库存储字符串的 Android ListView。我所说的“很
我已经开始了一个新元素的工作,并决定给 Foundation 5 一个 bash,看看它是什么样的。在创建带有水平字段的表单时,我在文档中注意到的第一件事是它们使用大量 div 来设置样式。所以我在下
我有一个 Windows 窗体用户控件,其中包含一个使用 BeginInvoke 委托(delegate)调用从单独线程更新的第 3 方图像显示控件。 在繁重的 CPU 负载下,UI 会锁定。当我附加
我有一堆严重依赖dom元素的JS代码。我目前使用的测试解决方案依赖于 Selenium ,但 AFAIK 无法正确评估 js 错误(addScript 错误不会导致您的测试失败,而 getEval 会
我正在制作一款基于滚动 2D map /图 block 的游戏。每个图 block (存储为图 block [21][11] - 每个 map 总共 231 个图 block )最多可以包含 21 个
考虑到以下情况,我是前端初学者: 某个 HTML 页面应该包含一个沉重的图像(例如 - 动画 gif),但我不想强制客户缓慢地等待它完全下载才能享受一个漂亮的页面,而是我更愿意给他看一个轻量级图像(例
我正在设计一个小软件,其中包括: 在互联网上获取资源, 一些用户交互(资源的快速编辑), 一些处理。 我想使用许多资源(它们都列在列表中)来这样做。每个都独立于其他。由于编辑部分很累,我想让用户(可能
我想比较两个理论场景。为了问题的目的,我简化了案例。但基本上它是您典型的生产者消费者场景。 (我关注的是消费者)。 我有一个很大的Queue dataQueue我必须将其传输给多个客户端。 那么让我们
我有一个二元分类问题,标签 0 和 1(少数)存在巨大不平衡。由于测试集带有标签 1 的行太少,因此我将训练测试设置为至少 70-30 或 60-40,因此仍然有重要的观察结果。由于我没有过多地衡量准
我是一名优秀的程序员,十分优秀!