コード例 #1
0
    public void DealDamage(IDamageType damage, GameObject causer = null)
    {
        damage.ChangeHealth(this, causer);

        var data = new DamageData(damage, causer);

        if (IsAlive())
        {
            BroadcastMessage("OnReceiveDamage", data);
        }
        else
        {
            BroadcastMessage("OnDeath", data);
        }

        actual = Mathf.Clamp(actual, 0, max);
    }