星田オステオパシー

Scratchで何か動くものを003 反射衛星砲ゲーム3

今回も宿直のRacketゲーム作りに挑戦していこうと。
前回は寝る前の時間でやってたんですけど、今日は早寝早起き、5時の見回りを終えて終了までの待機時間で。

 原作ではこういう感じで衛星は5基なので揃えて・・・と。ヤマトに命中したらスコア100点加算して続けるわけですね。
 今は実行フラグを押したら即座にビームが出るけど、スタート後にカウントダウンが始まって0になったら発射。ゲームが進むとカウントダウン時間がどんどん短くなるって感じでループさせれば良いかな。


 と、ここでちょっと演出面でPC6001の頃とは違うぞ!ってのを入れてみようと。
 ネットで拾ってきた画像だけど、これを衛星で反射した瞬間に0.5秒ほど表示させて(次回以降で反射の音声も入れて)みるってのどうだ。

 更にこれもネットで拾ってきたけど、ヤマトに命中したところで3秒ほどこれを表示するってのどう?

 まあ楽勝でしょ?と思ってやってみたんだけど、これが上手くイカない。ビームが衛星に達して表示された後、消えるはずなのにずっと表示されっぱなしなんだな。
 うーん・・はっ!?そうか・・ビームって○をひたすらクローンでつないでるので、ずーっとビームが衛星に当たってる判定が出続けているんだ!


 ヤマトに命中する方は狙い通りなんだけどなぁ。

 あと、衛星の反射判定なんだけど・・・

 このように裏側から当たった場合にちゃんと動かないわけだ(0か1かの判定で角度を決めてるだけだから)。これをなんとかせんといかん・・ということで時間切れ。

 しかし帰宅して別の仕事をしてる最中に解決策を思いついたぜ!

 カットイン判定については全く同じ軌道で動く別のスプライトを作って、こっちはクローンを作らずに単体で動かす。衛星のカットイン判定はその単体スプライトに対してだけ行えばオッケイだろう。

 反射衛星の裏当たりの問題は、命中判定を衛星のスプライトじゃなくて「特定の色」に設定する。そして衛星の全面と後面を別の色に塗り分けて、表当たりと裏当たりを角度ごとに二種類、計四種類で場合ワケすれば行けそうな気がする。

 よーし、次回の金曜日が楽しみになってきた!

 あんまり関係ないんだけど今回画像を漁っていて
 こんなの発見。MZ80のゲームらしいんだけど、別の反射衛星砲ゲームもあったのか・・なんか下手にカラフルな画面よりもロマンありますねぇ(角度を調整するのがすごく難しいらしい)



  • Xでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

最近の「プログラミング」カテゴリーもっと見る

最近の記事
バックナンバー
人気記事