プレイヤーが敗北したり勝ったときにゲームの終了方法を理解できません。私は間違って何をしていますか?これは私がこれまで持っていたものです。どんな提案も役に立ちます。ありがとう!ゲーム終了時に新しいゲームの開始を拒否する方法は?
<HTML>
<HEAD>
<TITLE>Hangman</TITLE>
<SCRIPT LANGUAGE="JavaScript"><!--
gallows = new Array("--------\n| |\n|\n|\n|\n|\n=====",
"--------\n| O\n|\n|\n|\n|\n=====",
"--------\n| O\n| |\n|\n|\n|\n=====",
"--------\n| O\n| \\|\n|\n|\n|\n=====",
"--------\n| O\n| \\|/\n|\n|\n|\n=====",
"--------\n| O\n| \\|/\n| |\n|\n|\n=====",
"--------\n| O\n| \\|/\n| |\n| /\n|\n=====",
"--------\n| O\n| \\|/\n| |\n| /\\\n|\n=====")
guessChoices = new
Array("summertime")
{
guesses = 0
max = gallows.length-1
guessed = " "
len = guessChoices.length - 1
toGuess = guessChoices[Math.round(len*Math.random())].toUpperCase()
displayHangman()
displayToGuess()
displayGuessed()
}
function stayAway() {
document.game.elements[3].focus()
alert("Don't mess with this form element!")
}
function displayHangman() {
document.game.status.value=gallows[guesses]
}
function displayToGuess() {
pattern=""
for(i=0;i<toGuess.length;++i) {
if(guessed.indexOf(toGuess.charAt(i)) != -1)
pattern += (toGuess.charAt(i)+" ")
else pattern += "_ "
}
document.game.toGuess.value=pattern
}
function displayGuessed() {
document.game.guessed.value=guessed
}
function badGuess(s) {
if(toGuess.indexOf(s) == -1) return true
return false
}
function winner() {
for(i=0;i<toGuess.length;++i) {
if(guessed.indexOf(toGuess.charAt(i)) == -1) return false
}
return true
}
function guess(s){
if(guessed.indexOf(s) == -1) guessed = s + guessed
if(badGuess(s)) ++guesses
displayHangman()
displayToGuess()
displayGuessed()
if(guesses >= max){
alert("You're dead.")
}
if(winner()) {
alert("You won!")
}
}
// --></SCRIPT>
</HEAD>
<BODY>
<H1>Hangman</H1>
<FORM NAME="game">
<PRE>
<TEXTAREA NAME="status" ROWS="7" COLS="16"
ONFOCUS="stayAway()"></TEXTAREA>
</PRE><P>
<INPUT TYPE="TEXT" NAME="toGuess"
ONFOCUS="stayAway()"> Enter this word in the promo code box!<BR>
<INPUT TYPE="TEXT" NAME="guessed"
ONFOCUS="stayAway()"> Letters you have guessed.<BR>
<P>Enter your next guess.</P>
<INPUT TYPE="BUTTON" VALUE=" A " ONCLICK="guess('A')">
<INPUT TYPE="BUTTON" VALUE=" B " ONCLICK="guess('B')">
<INPUT TYPE="BUTTON" VALUE=" C " ONCLICK="guess('C')">
<INPUT TYPE="BUTTON" VALUE=" D " ONCLICK="guess('D')">
<INPUT TYPE="BUTTON" VALUE=" E " ONCLICK="guess('E')">
<INPUT TYPE="BUTTON" VALUE=" F " ONCLICK="guess('F')">
<INPUT TYPE="BUTTON" VALUE=" G " ONCLICK="guess('G')">
<INPUT TYPE="BUTTON" VALUE=" H " ONCLICK="guess('H')">
<INPUT TYPE="BUTTON" VALUE=" I " ONCLICK="guess('I')">
<INPUT TYPE="BUTTON" VALUE=" J " ONCLICK="guess('J')">
<INPUT TYPE="BUTTON" VALUE=" K " ONCLICK="guess('K')">
<INPUT TYPE="BUTTON" VALUE=" L " ONCLICK="guess('L')">
<INPUT TYPE="BUTTON" VALUE=" M " ONCLICK="guess('M')">
<INPUT TYPE="BUTTON" VALUE=" N " ONCLICK="guess('N')">
<INPUT TYPE="BUTTON" VALUE=" O " ONCLICK="guess('O')">
<INPUT TYPE="BUTTON" VALUE=" P " ONCLICK="guess('P')">
<INPUT TYPE="BUTTON" VALUE=" Q " ONCLICK="guess('Q')">
<INPUT TYPE="BUTTON" VALUE=" R " ONCLICK="guess('R')">
<INPUT TYPE="BUTTON" VALUE=" S " ONCLICK="guess('S')">
<INPUT TYPE="BUTTON" VALUE=" T " ONCLICK="guess('T')">
<INPUT TYPE="BUTTON" VALUE=" U " ONCLICK="guess('U')">
<INPUT TYPE="BUTTON" VALUE=" V " ONCLICK="guess('V')">
<INPUT TYPE="BUTTON" VALUE=" W " ONCLICK="guess('W')">
<INPUT TYPE="BUTTON" VALUE=" X " ONCLICK="guess('X')">
<INPUT TYPE="BUTTON" VALUE=" Y " ONCLICK="guess('Y')">
<INPUT TYPE="BUTTON" VALUE=" Z " ONCLICK="guess('Z')"><P>
</FORM>
</BODY>
</HTML>
私はちょうどこれを学んでいますので、あなたの返事で簡単にしてください。ありがとう!
if(guesses >= max){
alert("You're dead. Press OK to start new game.")
location.reload(true);
}
if(winner()) {
alert("You won! Press OK to start new game.")
location.reload(true);
}
それとも、あなたがボタンを持っているフォームの一部を隠し、メッセージを表示することができます:新しいゲームを始めるまで来て、あなたがlocation.reload(true)
でページをリロードできalert
後
コードの作品を:それを解決するには、右のあなたの
body
タグの最後にscript
タグを移動します。私は "あなたが勝った!"というメッセージを受け取ります。私は正しい文字を入力します。何が問題ですか?スタートアップコードがフォームを参照できるように、スクリプトをHTMLドキュメントの最後に移動する必要があります。しかし、この問題はあなたが最後まで演奏するのを妨げるものではありません。 – trincotねえ、そこに...助けてくれてありがとう!はい、あなたは正しいです、それはメッセージを出します。しかし、人が敗北すると、メッセージも出されますが、それ以降も、パズルが解決されるまで手紙を選択し続けることができます。失ってもゲームは終了し、もうプレイできなくなるはずです。故意にそれを失うように試してみてください。ゲームがあなたに紛失したことを伝えたら、別の手紙を選んで私が何を参照しているのか見てみてください。ポイントは、あなたが失った場合、ゲームを終了する必要があります。 – kateyes1966
ああ、私は今あなたが意味するものを参照してください。私は答えを投稿します... – trincot