void OnContactWithObject(GameObject otherGameObject) { if (owner == null || otherGameObject == owner.gameObject) { return; } CharacterHealthController characterHealthController = otherGameObject.GetComponent <CharacterHealthController>(); if (characterHealthController != null) { float lastDamageTaken = float.MinValue; if (lastDamagesTaken.ContainsKey(characterHealthController)) { lastDamageTaken = lastDamagesTaken[characterHealthController]; } if (Time.time - lastDamageTaken > damageCooldown) { characterHealthController.TakeDamage(damage, owner); lastDamagesTaken[characterHealthController] = Time.time; } } }
void OnContactWithObject(GameObject otherGameObject) { if (owner == null || otherGameObject == owner.gameObject) { return; } CharacterHealthController characterHealthController = otherGameObject.GetComponent <CharacterHealthController>(); if (characterHealthController != null) { characterHealthController.TakeDamage(damage, owner); Destroy(gameObject); } else if (DestroyOnAnyContact) { Destroy(gameObject); } }