2016年12月14日水曜日

[Unity] OnTriggerEnter2DイベントをCollider2Dが重なり合っている時に再発生させる

OnTriggerEnter2Dイベントが発生して、2つのCollider2D同士がまだ重なっている状態で、再度OnTriggerEnter2Dイベントを発生させたい時に使える、簡単な方法がありました。(常識だったらスマン)

状況としては、プレイヤーと敵が重なって、OnTriggerEnter2Dイベントが発生したけれども、実は無敵中だったので当たり処理を行わず、スルーしていた時があげられます。その無敵時間が切れた瞬間に、プレイヤーと敵がまだ重なっていたら、当然OnTriggerEnter2Dイベントをもう一度発生させて、今度は当たり処理を行いたくなります。
そういう状況下では、無敵が切れた瞬間に、以下のようにCollider2Dのenabledフラグをfalseにしてから、すぐにtrueに戻すと、再度、OnTriggerEnter2Dイベントを発生させることができます。
theCollider.enabled = false;
theCollider.enabled = true;
これ、3D版のOnTriggerEnterイベントでも使えるかな?

0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...