ボスを作ってみましょう(ボスの移動編)

これまでの説明ではその場で立ちつくすだけで何にもしないボスしかできません。
今回はボスを動かしてみましょう


ボスを動かすには

オリジナルボスではボスの位置を座標で指定することで決まります。
つまり座標が変われば、ボスの位置が変わるということです。


具体的にどう動かすのか

今回はサンプルプログラムを例に見ていくことにします。
ですが、その前に関数を実行するにはどうしたらよいかを
確実に押さえておきましょう。


timerID = setInterval("関数",時間)による動作

これは指定した関数を何秒おきに実行するかを指定するものです。
これを記述しておけば関数は自動的に実行されます。


userGameJS()による動作

MasaoXJSS.classやMasaoXJSS2.classなどを用いる場合はこちらを使います。
これは、ゲーム中に0.1秒間隔で呼び出される関数です。
timerID = setInterval("関数",10)と書いたときと同じ動作をします。


動作が分かったところで

つまり、関数が呼び出されるということは、その関数の内容を実行するということです。
それでは本題に入りましょう。


x軸方向に動かしてみましょう

それでは実際にオリジナルボスを横に動かす方法を見ていくことにしましょう。
ボスの座標が変わるということは、ボスの位置が変わると先ほど言いました。
つまり、関数が呼び出されたとき座標の数値を変える処理を施せばいいわけです。

boss_x = boss_x - 8;
と関数内に記述したとします。
するとボスのx座標が、関数が呼び出されるたびに8ドット分前に来ます。
画面上ではボスが左にスライド移動します。
ただし、これだけでは永遠に8ドット分前に動き続けるので、ちゃんと画面外に出ないように
戻してやる処理も一緒に記述しましょう。
y方向(縦)に動かす場合も同様です。


まとめ

「ボスの座標を変更することでボスを動かす。」


一応疑問点

ボスを動かしたら、当たり判定とか一体どうなるんだ?と思われる方もいらっしゃるかも知れませんが、大丈夫です。
ボスの当たり判定を作成したときに、ボスのx座標とy座標の位置を指定する変数から何ドット分までを対象にするか
という記述で書いています。なので、座標を指定している変数の内容が変われば自動的に当たり判定も移動します。
これを具体的な数字で当たり判定を指定していた場合には当たり判定はその位置から変化しないので、おかしなことになります。
こういったことが無いように、当たり判定には具体的な数字で与えないようにしましょう。