2011-12-30 3 views
2

私は非常に新しいJavascriptであり、単純なゲームを作ろうとしています。基本的に、あなたは攻撃するか癒すことができ、あなたのHPはそれに応じて上下に移動します。ここで私はこれまで持っているものです。Javascript変数の更新をライブにする

<script type="text/javascript"> 
var myHP=50; 
var eHP=50; 
</script> 

<script type="text/javascript"> 
function attack() 
{ 
    var dmg=(Math.floor(Math.random()*11)); 
    var edmg=(Math.floor(Math.random()*11)); 
    var nHP=myHP - edmg; 

    alert("You deal " + dmg + " damage!"); 
    alert("You are dealt " + edmg + " damage!"); 
    document.getElementById("hp").innerHTML=nHP; 
} 
</script> 

だから、私は「馬力」のidを持つ段落を作り、私は攻撃ボタンをクリックしたとき、それは変更を見ることができます。しかし、それは常に50 edmgです。私。私は3で攻撃され、私のHPは47です。次に、私は2で攻撃されます。私のHPは48から45ではなく、常にベースから減算されます。 myHP変数が実際に更新され、したがって常に正しい数を反映するようにするにはどうすればよいですか?

答えて

2

を新しい健康を割り当てていません。修正は次のように簡単に追加できます:

最後のスクリプトの最後の行です。

+0

ありがとうございました。それはトリックでした! – sbatson5

1

あなたがmyHP変数を更新されることはありませんバックmyHP変数へ

myHP -= edmg 
1

ヘルス値を更新する必要があります。

myHP = myHP - edmg; 
alert("You deal " + dmg + " damage!"); 
alert("You are dealt " + edmg + " damage!"); 
document.getElementById("hp").innerHTML= myHP; 
関連する問題