Unity事例ノート

UNITY

他のオブジェクトの動きを止める

動き続けるオブジェクトを、他のオブジェクトから止められる仕組みを作ってみましょう。

Updateの中で、上下運動をくり返すSphere。

Cubeを操作し、Capsuleに触れた際に、Bool変数をtrueに変えます。

このboolを、Sphere側で取得し、Sphereの動きを停止させます。

関連記事:他のスクリプトのBoolを取得する

他のオブジェクトのBoolを取得し、動作を止める

Cube、Sphere、Capsuleを作成し、それぞれを横並びに配置します。

Cubeにリジッドボディを追加し、Use Gravityのチェックを外します。

Capsuleのトリガーにするのチェックにチェックを入れます。

CubeMove.csを作成し、Cubeに追加します。

CubeMove.csを記述します。

続いて、SphereMove.csを作成し、Sphereに追加します。

SphereMove.csを記述します。

ゲームプレイしてみましょう。

Capsuleにぶつかった時点で、isStopのフラグがtrueに変換。

Sphere側でisStopのフラグを参照し、こちらもtrueのタイミングで、動きが停止します。

関連記事:他のスクリプトのBoolを取得する