Beispiel #1
0
    void Explotar()
    {
        Instantiate(prefabExplosionEffect, transform.position, transform.rotation);

        Collider[] collidersDestruir = Physics.OverlapSphere(transform.position, radio);

        foreach (Collider objetoEnRango in collidersDestruir)
        {
            Destructible destruible = objetoEnRango.GetComponent <Destructible>();

            if (destruible != null)
            {
                destruible.Destruir();
            }
        }

        Collider[] collidersMover = Physics.OverlapSphere(transform.position, radio);

        foreach (Collider objetoEnRango in collidersMover)
        {
            NetPlayerHealth enemy = objetoEnRango.GetComponent <NetPlayerHealth>();

            if (enemy != null)
            {
                // El método TakeDamage devuelve true, si somos nosotros los que lo hemos matado
                if (enemy.TakeDamage(daño))
                {
                    // Incrementamos el número de muertes
                    GetComponentInParent <Score>().kills++;
                }
            }
        }

        Destroy(gameObject);
    }