/*** METHODS ***/ protected void InflictDamage(FlyingObject obj) { if (level > 0) { obj.ReduceHp(damage * (0.5f + level / 2f)); } }
//void OnTriggerEnter2D(Collider2D other) //{ // if (other.gameObject.tag == "Enemy") // { // other.gameObject.GetComponent<FlyingObject>().ReduceHp(damage); // } //} void OnAwake() { Collider[] hits = Physics.OverlapSphere( transform.position, radius ); foreach (Collider coll in hits) { if (coll.gameObject == gameObject) { continue; //Ignore the explosion itself } FlyingObject fo = coll.gameObject.GetComponent <FlyingObject>(); if (coll.gameObject.tag == "Enemy" && fo != null) { fo.ReduceHp(damage); } } }