今回も、超ミニミニTIPSです。
何かに衝突したら、自分自身が消えてしまう・・・
みたいなプログラム、ありますよね。
これ、うまくいかないことってありませんか?
きちんと当たり判定はあるのに・・・
知ってるよ!っていう人はごめんなさいね。
あるあるだものね。
前提として
・衝突は、物体のどちらかにRigidbodyがないとダメです。
・当たり判定(collider)も確認してみてね。
で、よくやっちゃうのが・・・
Destroy(this);
です。
初心者の頃、これが何でダメなのかよくわかりませんでしたが。
Destroyできるのは、これ・・・ではダメで。きちんと何を消
すのか指定しないとダメです。
正解は
Destroy(this.Object);
これならうまくいくと思います。
ちなみに秒数もフロートで指定できます。
Destroy(this.Object,0.5f);
こんな書き方をすると、衝突から0.5秒後に消えます。便利!
でも、Destroyは消えてしまうと元に戻せません。
もし、復活させたいのであれば座標を画面の外に設定し、移
動させるか。setActiveをfalseにしましょお。
今日も小ネタですいません。
それではよきプログラミングライフを!
またね。