Ejemplo n.º 1
0
    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;
            }
        }
    }
Ejemplo n.º 2
0
    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);
        }
    }