広告

JavaScriptを使ってオリジナルの単語タイピングゲームを作っていきます。
単語タイピングゲーム作りを通してリアルタイム入力、文字列の操作、タイマーによるプログラムの自動実行、簡単なアニメーションなど実践的なプログラミング技術を学んでいきます。
「JavaScriptでプログラミング入門」の応用編になりますので、まだ終えてない方はそちらを先にご覧ください。
今回はレベルを切り替えるとともに背景も切り替えていきます。
簡単なのでさらっといきたいと思います。
レベルアップ条件は正誤の数にかかわらず10ステージごとに切り替えていきます。
事前にステージ最大数である「MAX_STAGE」を「30」にして、レベルを表す変数「lv」を「1」に、背景用の画像を「img2.jpg」・「img3.jpg」という名前で2枚追加しておいてください。
レベルの切り替え用の関数になります。
function my_change_lv(){
if(stage == 10){
lv = 2;
}
else if(stage == 20){
lv = 3;
}
}
ステージ数に応じてレベルを切り替えているだけです。
これを「my_get_key()」の前半に設置します。
if(init_flag == 0){
if(stage == MAX_STAGE){
my_game_over();
}
my_change_lv();
my_set_mondai();
my_set_stage();
timer = setInterval("my_move_timer()",10);
init_flag = 1;
}
これで「10」ステージごとにレベルを切り替えることができます。
問題の配列もレベルに連動してるので、自動的に切り替わります。
広告
あとは背景の切り替えを「my_set_stage()」に加えるだけです。
function my_set_stage(){
document.getElementById("input_mondai_box").innerHTML = "";
document.getElementById("mondai_box").style.left = mondai_left + "px";
document.getElementById("mondai_box").innerHTML = lv_all_ary[lv - 1][ransuu];
document.getElementById("marubatu_box").innerHTML =
"結果: 残り問題数:" + (MAX_STAGE - stage);
if(stage == 10){
document.getElementById("background_img_box").style.backgroundImage = "url(img2.jpg)";
}
else if(stage == 20){
document.getElementById("background_img_box").style.backgroundImage = "url(img3.jpg)";
}
}
さきほどと同じようにステージ数に応じて「background_img_box」の「.style.backgroundImage」を書き換えれば背景の切り替えも完了です!
レベルアップ!
ここまでの中間ソースになります。
次回はタイプミスした場所などの結果報告部分を作っていきます。
広告
Copyright 2016 K.N/petitetech.com