private void OnTriggerStay(Collider other) { IDamaging damaging = GetIDamaging(other.gameObject); if (damaging != null && _damageable != null && this.gameObject.tag != damaging.IgnoreCollisionTag) { if (damaging.DamageType == DamageType.OVER_TIME || damaging.DamageType == DamageType.BOTH) { bool blocked = _damageable.TakeDamage(damaging.DamageOverTime * Time.deltaTime); damaging.RegisterHit(blocked); } } }
private void OnTriggerEnter(Collider other) { IDamaging damaging = GetIDamaging(other.gameObject); if (damaging != null && _damageable != null && this.gameObject.tag != damaging.IgnoreCollisionTag) { if (damaging.DamageType == DamageType.INSTANTANEOUS || damaging.DamageType == DamageType.BOTH) { bool blocked = _damageable.TakeDamage(damaging.DamageInstantaneous); damaging.RegisterHit(blocked); } } }