Unity事例ノート

UNITY

動きが止まればn秒後に呼び出す

プレーヤーを操作している途中で、いったん動きをストップ。

ストップすれば、他のオブジェクトのプログラムが実行されるように、スクリプトを作成しましょう。

Cubeが動いてる間は何も起きませんが、停止すれば1秒後にボールが落下します。

関連記事:
Invokeを使ってn秒後に関数を実行する
相手が動いている間、プレーヤーを動けなくする
数秒後にオブジェクトを出現させる
コルーチンを使って1秒後にテキストを消す
触れた相手をn秒後に削除する
乗ったオブジェクトをn秒後に消す
ぶつかればn秒間ストップ
デリゲートを使ってn秒後に実行
出現してから1秒後に落下する

停止すると他のスクリプトが実行

Plane、Cube、Sphereを作成します。

Sphereにはリジッドボディを追加し、座標を変えます。

マテリアルカラーを付けて、わかりやすくします。

ゲームビューではこのように見えています。

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

PlayerMove.csを記述します。

BallDrop.csを作成し、Sphereに追加します。

BallDrop.csを記述します。

ゲームプレイして、Cubeを動かしましょう。

動きをやめれば、1秒後にSphereが落下。

再び動き出すと、落下はストップします。

関連記事:
Invokeを使ってn秒後に関数を実行する
相手が動いている間、プレーヤーを動けなくする
数秒後にオブジェクトを出現させる
コルーチンを使って1秒後にテキストを消す
触れた相手をn秒後に削除する
乗ったオブジェクトをn秒後に消す
ぶつかればn秒間ストップ
デリゲートを使ってn秒後に実行
出現してから1秒後に落下する