SEの方の間でも評価が上昇傾向のビジュアルプログラミング言語、Viscuit(以下ビスケット)でシューティングゲームを作りたいときの基本的なプログラムです。
今回はスコアの作り方です。また、割れたメガネを使用します。
自機については#1シューティングゲームレシピ/コントローラの作り方を、
敵キャラについては#2シューティングゲームレシピ/敵キャラの作り方を参照下さい。
※ビスケットのコーディングは全て描画で行います。こちらの記事はビスケットでのコーディングを簡潔に紹介するため、敢えてサッパリした描画のプログラムにしております。こちらをベースに、お好みの描画でオリジナリティーの高いプログラムに仕上げてくださいm(_ _)m
##【プログラム解説】
###1ずつ加算するプログラム
左のメガネに0を入れ、1マス右に+1を入れます。右のメガネに1を入れます。
左のメガネに1を入れ、1マス右に+1を入れます。右のメガネに2を入れます。
一般的なプログラム風に訳すと
0の右隣に+1が表示されると、1に変わる。
1の右隣に+1が表示されると、2に変わる。
という意味になります。
…以下同様にしますが9までいくと繰り上がりさせなければいけません。
###繰り上げプログラム
左のメガネに9を入れ、1マス右に+1を入れます。右のメガネに0を入れ、その上に+1を重ねます。
+1を0になぜ重ねるのかが、作ってみると分かります。(桁数さえ増やせば何兆〜何億以上もカウントできます。)
一般的なプログラム風に訳すと
9の右隣に+1が表示されると、0に変わり、0の上に重ねて+1が表示される。
という意味です。
###炎をスコアに変換するプログラム(割れたメガネ2分割と割れたメガネ3分割)
まず、1つ目のメガネです。メガネの中央を約3秒間タッチし、割れたメガネにします。
左のメガネ上段に四角を入れ下段に炎を入れます。右のメガネ上段に四角と+1、下段は何も入れません。
一般的なプログラム風に訳すと
炎が生成したら、四角の枠に+1が生成され、炎は消滅する
という意味です。
その下、2つ目のメガネです。こちらは3分割の割れたメガネです。
約3秒間触って2分割の割れたメガネを作ったのち、再びメガネの中央を約3秒間触ると下半分が2分割され、3分割の割れたメガネになります。
できたら、左のメガネ下段左右ともに炎を入れます。上段に四角い枠を入れます。右のメガネ上部にには四角い枠とその上に+1を2つ重ねて置きます。
一般的なプログラム風に訳すと
炎が2つ同時に生成したら、四角い枠に+1がダブルで生成され、炎は消滅する
という意味です。
###なぜ炎が2つ発生した時の処理が必要なのか?
打つタイミングと自機の左右移動にり2台同時撃破によって、同時に炎が発生することがあります。そんな時、上のプログラムだけでは2つの炎をさばけず、1つ分の炎しかカウントされません。この3分割メガネによって、それに対応できます。
##【繰り上がりの瞬間】
よく考えるとこれまでのままでは最高スコアが7なので、敵を4機増やしてスコアが繰り上がるところを撮影しました。
これにて、サッパリ系ビスケットシューティングゲームレシピは終了です。あとはオリジナリティー溢れるプログラムにカスタムしてください♩