P5.エアホッケー.04「パックは1個だけ~」
1個だけ出すようにするのは簡単。スポーンした時にフラグを立ててやって、そのフラグが立ってる時はもうスポーンさせないようにすればいいダケ。で、自陣、又は敵陣にゴールした時にこのフラグを引っ込めてやればまた出るようになるって作戦だ。
パックがあれば、"パックある" = True
前回 "Kami" に付けたスクリプトにこう変更を加える。(赤いのが追加部分)
❶ On Init
で "packAru" というプロパティを作って、これに False 値を初期値としてセットする。Boolean
ノードは True か False のどちらかの値を保持するもの。チェックが入っていれば True、なければ False となる。今回は「パックが無い=False」と考えるので、ゲームスタート時点では False にセットする。
❷ パックを出す部分に変更を加える。
❷-1(前回と同じ) でスペースキーが押されたら、
❷-2 でパックがあるかチェックし、"packAru" = False の時のみ次の処理に行くようにする。ここで使っているノードがIs False
だ。
Is True
は入力された値が True の時に、Is False
は False の時に out ピンから信号が出て次の処理に移れる。ペアで覚えておこう。ま、Gate
を使ってチェックをしてもいいけど、 True / False(真偽値)のチェックならこっちの方がシンプルだろ?
❷-3(前回と同じ) ここでシーンをコピペして、
❷-4 "packAru" を True にセット。(チェック入れる方ね。) パックを出したので、「パックある = True」としたってことだ。簡単だったな。
これで、パックがある時はパックは出ない。試しに [▶ Play] してみてくれな。
ゴールしたら、"パックある" = False に・・・
パックを再出現させてもいいタイミング、それは "packAru" = False の時。で、いつそうするかっていうと、どっちかの陣地にゴールした時だな。
だから、ゴール判定処理をしなくちゃいけないんだけど、次回にするわ。頭痛が痛い。
本日のポインヨ
Boolean
でフラグ設定。Is True
とIs False
はセットで覚える。
〇 次回、ゴール処理。(ちなみに False は「フォールス」な、読み。/fˈɔːls/)