2012-02-21 12 views
0

私は現在JSでゲームを作っていますが、問題が発生しました。JSで非常に簡単なゲームを作成

イメージを格納する2D配列を取得しましたが、1秒ごとにランダムなピクチャを変更したいので、すべて動作しますが、画像をどのように変更できるかわかりません。

アレイ内のランダムなセルを変更するには、他のすべてのイメージを印刷する必要がありますか?

私はほとんどそれがそれをせずにそれを変更する別の方法があると確信しています。

他の人の説明が必要な場合は、私は喜んで助けてくれるでしょう。ゲームは私はjQueryを使用することになり、その後

を開始したとき

+0

これまでのコードを教えてください。 –

+0

あなたのコードはどうですか? – jbranchaud

+0

大丈夫、私はそれを表示します – idish

答えて

0

あなたのヘッダーでこのようなものを試すことができます。毎秒changePic()と呼び出し、ピクチャ配列をインクリメントして、新しい画像を画像要素に設定する必要があります。

//know your array sizes 
var max_x = picArr.length; 
var max_y = picArr[0].length; 
var current_x = 0; 
var current_y = 0; 

function changePic() 
{ 
    if(current_y == max_y-1) 
    { 
    if(current_x == max_x-1) 
    { 
     current_x = 0; 
     current_y = 0; 
    } 
    else 
    { 
     current_x++; 
     current_y = 0; 
    } 
    } 
    else 
    current_y++; 

    var pic = picArr[current_x][current_y]; 
    getElementById('randomImage').setAttribute('src', pic); 

    window.setTimeout(changePic, 1000); 
} 

setTimeout(changePic, 1000); 

https://developer.mozilla.org/en/DOM/window.setTimeout

0

私はすべてのイメージがロードされていることを確認するように

var ImageOne = new Image(); 
ImageOne.src = "UrlToImage"; 

など何かから始めます:

$("#IdOfImg").attr("src", ImageOne); 
0

あなたはダンはDOMに画像を追加することではなく、背景画像を持つ要素のCSSクラスを使用してしようとする場合があります。私はback.png用のCSSクラスと1.png用のクラスがこのトリックを行うべきだと思います。

毎秒td要素のクラスを切り替えます。

これが役に立ちます。

関連する問題