I made a very simple script to make an object fall and explode in contact with ground. The problem is that after the explosion, when Destroy(gameObject) is called on the script, the editor play window freezes.
var explosion : GameObject;
var damage : float = 10;
// var rendererer : Renderer;
function OnCollisionEnter(other : Collision)
{
if(other.collider.gameObject.layer == 9 || other.collider.gameObject.layer == 10)
{
Collide();
}
}
function ExplosionDamage(center: Vector3, radius: float)
{
var Enemies = Physics.OverlapSphere(center, radius);
if(Enemies.Length > 0)
{
for (var i = 0; i < Enemies.Length; i++)
{
if(Enemies*.transform.tag == "Enemy")*
_ Enemies*.GetComponent(“AIEnemy”).AddHealth(-damage);_
_ }_
_ }_
_}*_
function Collide ()
{
* if(explosion != null)*
* explosion.SetActive (true);*
* ExplosionDamage(transform.position, 5);*
* yield WaitForSeconds(2);*
Destroy(gameObject);
}