はじめてゲームプログラミング 「乗ると動き出す床」を作る方法
『つくってわかる はじめてゲームプログラミング』で、「乗ると動き出す床」を作る方法についてのメモです。
アクションゲームでよく見かける「動く床」は、「スライドれんけつ」と「カウンター」を組み合わせることで、意外と簡単に作れます。
さらに「センサー」を併用すれば、キャラクターが乗ると動き始める仕組みも追加できます。
「動く床」の基本的な作り方
今回は、「れんけつパーツ」の「スライドれんけつ」を使用して、左右に動く床を作成してみます。
「ヒトノードン」や「カメラ」の基本操作に関しては、省略します。
まず、プログラム画面で、「直方体」を2個と、「Xスライド」を用意しましょう。
用意するノードン | 分類 |
---|---|
直方体 | モノ |
Xスライド | モノ |
「直方体」の一つは、「動く床」として使用するので、「ヒト」が乗りやすい大きさに変えておきます。
設定画面を開き、「ふるまい」の「見える・当たる・動く」だけを、ONに。
「れんけつ面」は「中央・中央」に変更して、「Xスライド」の「上の連結ポート」と連結します。
もう一方の「直方体」は、「動く床」の起点用なので、床を動作させたい場所に設置します。
形状よりも、「位置」と「動かない」ことが重要で、実際は、「球」や「円柱」を使用しても問題ありません。
こちらの「ふるまい」は、全項目をOFFにして、「Xスライド」の「下の連結ポート」と連結します。
これで、「直方体」を、X方向(左右)にのみ、動かせるようになりました。
次に、「カウンターノードン」と「定数ノードン」を、プログラム画面に追加します。
追加するノードン | 分類 |
---|---|
カウンター | 中間 |
定数 | 入力 |
「定数」を、「カウンター」の「増やす」ポートに接続。
続いて、「カウンター」の出力を、「Xスライド」の入力ポートに繋げます。
さらに、「カウンター」の設定画面を開いて、「モード」を「おうふく」に変更しましょう。
「カウントはんい」は、最小値:0、最大値:10 に設定します。
これで、「カウンター」の値は、0 → 10 → 0 → 10… と、増減を繰り返します。
この値が「Xスライド」に出力されると、「動く床」が、0m〜10mの位置で、左右を往復するようになります。
ただし、現状では、カウントのペースが早すぎるため、ゲーム画面で確認すると、床が激しく横移動する状態になっているはずです。
「定数」の値を、0.02程度に変更すると、動きが落ち着きます。
これで、「動く床」の基本的な動作が、完成しました。
「動く床」に「乗ると動く仕組み」を追加する方法
現在の「動く床」は、ゲーム開始直後から動作を始めるので、センサーを使用して、「ヒト」が乗ってから動き出す仕組みを追加します。
プログラム画面で、「さわっているセンサー」と、「けいさん」の「×」を呼び出しましょう。
追加するノードン | 分類 |
---|---|
さわっているセンサー | モノ |
けいさん(×) | 中間 |
「さわっているセンサー」は、「動く床」の「直方体」に連結させます。
センサーの形は「直方体」、「れんけつ面」は「自分:Y- 連結先:Y+」 の設定です。
また、「何をチェックする?」で、「ヒト」を選択しておきます。
ここで、「定数」と「カウンター」の接続を解除し、その間に「けいさん (×)」を挟みます。
先ほど設置した「さわっているセンサー」の出力と、「けいさん (×)」の入力ポートを接続。
「定数」も、「けいさん (×)」の、もう一方の入力ポートへ繋げます。
そして、「けいさん (×)」の出力を、「カウンター」の「増やす」ポートに接続すれば、センサーの反応が「動く床」に伝わります。
「さわっているセンサー」は、何もなければ「0」を、チェック中の「モノ」が触れている時は「1」を出力します。
「ヒト」が床に乗って「さわっているセンサー」に触れると、センサーの出力と「定数」の計算結果 (1 × 0.02= 0.02)が、「カウンター」に送られる仕組みです。
センサーの大きさによっては、「ヒト」が「動く床」に乗る前に反応してしまうため、床よりも少し小さめに調整した方が、それっぽい動作に見えるかもしれません。
センサーは、「ふるまい」の「見える」をOFFにしても機能は変わらないので、ゲーム中は非表示でOKです。
「動き続ける仕組み」の追加方法
現状は、センサーが反応している間だけ「床」が動く仕組みになっているので、「ヒト」が離れても動き続けるように修正します。
プログラム画面に、「フラグノードン」を追加しましょう。
追加するノードン | 分類 |
---|---|
フラグ | 中間 |
「さわっているセンサー」と「けいさん (×)」の接続を解除し、「フラグ」の「オン」を中継するように繋ぎ直します。
「フラグ」は、「オン」ポートに「0以外」が入力されると、「オフ」ポートに「0以外」が入力されるまで、「1」の出力を続けます。
一度センサーが反応した後は、「フラグ」が「1」の送信を継続するため、「ヒト」が「さわっているセンサー」から離れても、「動く床」の動作が止まらないようになりました。
今回は、センサーで「動く床」が動作するように作りましたが、敵を倒す、アイテムを取るなど、「フラグ」をONにする条件を変えることで、色々な応用が可能です。
[ はじめてゲームプログラミング ]
関連記事
-
-
はじめてゲームプログラミング 「フリースライドれんけつ」の特徴と使い方
『つくってわかる はじめてゲームプログラミング』の、「フリースライドれんけつ」の特徴や使い方についてのメモです。 「フリースライドれんけつ」は、3方向への移動を指定できる「れんけつパーツ」です。 連結した「モノ」を、同時に複数方向へスライド …
-
-
はじめてゲームプログラミング 「スライドれんけつ」の基本的な使い方
『つくってわかる はじめてゲームプログラミング』の、「スライドれんけつ」の基本的な設定や使い方についてのメモです。 「スライドれんけつ」は、「モノノードン」同士を、スライド移動ができる状態で繋ぎ合わせる「れんけつパーツ」です。 使い方を覚え …
-
-
はじめてゲームプログラミング 「ジャンプ台」の作り方
『つくってわかる はじめてゲームプログラミング』で、「ジャンプ台」を作る方法についてのメモです。 アクション系のゲームでは、キャラクターを空中に跳ね上げる「ジャンプ台」が登場することがあります。 今回は、通常のジャンプより高く「ヒト」を飛ば …
-
-
はじめてゲームプログラミング 「自動ドア」の作り方
『つくってわかる はじめてゲームプログラミング』で、「自動ドア」を作る方法についてのメモです。 「モノノードン」を特定の方向に移動・固定する「スライドれんけつ」や、「モノ」が触れているかをチェックできる「さわっているセンサー」は、ゲーム内の …
-
-
はじめてゲームプログラミング 「一時停止してから動き出す床」を作る方法
『つくってわかる はじめてゲームプログラミング』で、「一時停止してから動き出す床」を作る方法についてのメモです。 アクションゲームでよく見かける「動く床」は、「スライドれんけつ」と「カウンター」の組み合わせで、意外と簡単に作ることができます …
-
-
はじめてゲームプログラミング 「スライド」で「モノ」や「キャラクター」を組み合わせる方法
『つくってわかる はじめてゲームプログラミング』で、「モノノードン」同士や「キャラクター」を組み合わせる方法についてのメモです。 「スライドれんけつ」は、「モノノードン」を動かすだけでなく、位置を固定することもできます。 この仕組みを利用す …
-
-
はじめてゲームプログラミング 「ノードン」の複数選択・コピー・削除の方法
『つくってわかる はじめてゲームプログラミング』で、「ノードン」を複数選択する方法についてのメモです。 プログラム画面に配置した「ノードン」は、まとめてコピーしたり、削除することができます。 ノードンの使用数が多い、複雑なプログラムを作る際 …
-
-
はじめてゲームプログラミング 「3Dカメラ」の設定とリセットの方法
『つくってわかる はじめてゲームプログラミング』の「カメラノードン」で、「3Dカメラ」を設定する方法についてのメモです。 「ゲーム画面ノードン」は便利ですが、ゲーム中にカメラアングルを変えることができません。 アングルを変更するには、「カメ …