はじめてゲームプログラミング 「一時停止してから動き出す床」を作る方法
『つくってわかる はじめてゲームプログラミング』で、「一時停止してから動き出す床」を作る方法についてのメモです。
アクションゲームでよく見かける「動く床」は、「スライドれんけつ」と「カウンター」の組み合わせで、意外と簡単に作ることができます。
設定に少し手を加えれば、到着地点で一旦停止した後に再び動き出す動作も、再現可能です。
「動く床」の基本的な作り方
今回は、「れんけつパーツ」の「スライドれんけつ」を使用して、上下に動く、エレベーター式の床を作成してみます。
「ヒトノードン」や「カメラ」の基本操作に関しては、省略します。
まず、プログラム画面で、「直方体」を2個と、「Yスライド」を用意しましょう。
用意するノードン | 分類 |
---|---|
直方体 | モノ |
Yスライド | モノ |
「直方体」の一つは、「動く床」として使用するので、「ヒト」が乗りやすい大きさに変えておきます。
設定画面を開き、「ふるまい」の「見える・当たる・動く」だけを、ONに。
「れんけつ面」は「中央・中央」に変更して、「Yスライド」の「上の連結ポート」と連結します。
もう一方の「直方体」は、「動く床」の起点用なので、床を動作させたい場所に設置します。
形状よりも、「位置」と「動かない」ことが重要で、実際は、「球」や「円柱」を使用しても問題ありません。
こちらの「ふるまい」は、全項目をOFFにして、「Yスライド」の「下の連結ポート」と連結します。
これで、「直方体」を、Y方向(縦)にのみ、動かせるようになりました。
次に、「カウンターノードン」と「定数ノードン」を、プログラム画面に追加します。
追加するノードン | 分類 |
---|---|
カウンター | 中間 |
定数 | 入力 |
「定数」を、「カウンター」の「増やす」ポートに接続。
続いて、「カウンター」の出力を、「Yスライド」の入力ポートに繋げます。
さらに、「カウンター」の設定画面を開いて、「モード」を「おうふく」に変更しましょう。
「カウントはんい」は、最小値:0、最大値:5 に設定します。
これで、「カウンター」の値は、0 → 5 → 0 → 5… と、増減を繰り返します。
この値が「Yスライド」に出力されると、「動く床」が、0m〜5mの位置で、上下するようになります。
ただし、現状では、カウントのペースが早すぎるため、ゲーム画面で確認すると、床が激しく上下する状態になっているはずです。
「定数」の値を、0.02程度に変更すると、動きが落ち着きます。
これで、「動く床」の基本的な動作が、完成しました。
「動く床」に一時停止の動作を追加する方法
現在の「動く床」は、一定のペースで上下するだけなので、一時停止するように、修正を加えます。
「Yスライド」の設定画面を開き、「はんい」を、最小値:0、最大値:5 に設定しましょう。
続いて、再び「カウンター」の設定画面を開き、「カウントはんい」を、-3 〜 8 に変更します。
これで、スライド範囲よりも、カウント範囲の方が広くなりました。
「カウンター」が、「Yスライド」の範囲を超える値を出力している間は、「動く床」が、上端か下端で固定されるため、結果として、一時停止状態となります。
今回の例では、0〜5mの範囲で床を上下移動させましたが、設定を調整することで、移動距離を長くしたり、前後・左右の動作に変えることもできます。
[ はじめてゲームプログラミング ]