← 前のページへ戻る

画像のプリロード

 ゲームをスタートするまでに、ゲーム中に使用する画像は全てダウンロードさせておかなければなりません。そうでないと、ゲーム中に随時ダウンロードすることになりますが、通信速度の問題から、画像が表示されないまま、ゲームだけが進行してしまいます。



<プリロード方法>

1.ゲームの最初の画面には、ゲーム中に使用する全ての画像を表示させるようにします。

2.<BODY>タグのなかにonload="check()"と記述します。

3.check()関数により、ダウンロードが完了するまでは、ゲームをスタートできないようにします。(下記のスクリプトを使用)

function check(){
    flag=true;
    for(j=0; j<document.images.length; j++){
        if(document.images[j].complete==false){
        flag=false;
        }
    }
    if(flag==true){
    b=1; 
//全ての画像のダウンロードが完了すると、この部分が実行される
    }
    else{setTimeout("check()",200);}
}


 上記のスクリプトは、200/1000秒ごとにcheck()関数を実行し、全ての画像が表示(ダウンロード)されたかを確認しつづけます。
 そして、ダウンロードが完了すると、b=1(//コメント行の部分)が実行されるようになっています。
 初期設定をb=0にしておき、b=1にならないとスタートボタンを押せないような設定にしておけば、ダウンロードが完了しない限りはゲームをスタートすることができなくなります。