シューティングゲームで連射するプログラム

シューティングゲーム

シューティングゲームといえば、私は世代的にグラディウスなんですがピンときたかた。好きものですね。ちなみに、私はシューティングゲームは特に苦手です(;^_^A

今回は生徒がHSPでシューティングゲーム作りをしていて、連射機能をつけるのに悩んでいたので、こんな感じかな。程度にやってみました。

キャラが文字なのは勘弁。これはあくまで生徒への解説ようなので、作りこんではいません。

1発だけ発射

普通の弾の発射はボタンを押せば出ますね。

例えばスペースキーが押されたら、

弾を表示 この時、弾のx座標は自機のx座標あたり、弾のy座標も自機のy座標あたり

弾が表示されていたら  弾のx座標はそのまんま、弾のy座標を減らして画面上に向かって移動。

で、画面外に出たら弾を消す。

そして、y座標は減らさない。

みたいなことをすれば、1発だけならできると思います。

連射

まずHSPでstickを使う際には、非トリガーのキーを指定してあげる必要があります。

連射できるシューティングゲームをつくる

スペースキーを発射ボタンにして、自機は横移動のみにしたので私の場合は

stick a,5

こんな感じです。

横移動はカーソルキーを押しっぱなし。

スペースキーは押しっぱなしで発射されたくないので、一回、押すごとに発射されるようになります。

ここまではstickの設定です。

これはいいんですが、弾が問題です。

弾は配列にしてあげる必要があります。弾の表示もそうですし、弾の座標もです。

そして、スペースキーが押された回数をカウントして、そのカウントを配列の番号にしてあげます。

カウンタが弾の配列を超えたり、発射されている弾(表示されている弾)が一つもなければリセットすることも必要になりました。

やらないとわからないものですが、思ったことを形にしていき出来上がると面白いですね。

タイトルとURLをコピーしました