private void OnArmorChanged(float newArmor) { if (ArmorChanged != null) { ArmorChanged.Invoke(newArmor); } }
public event UnityAction <float> ArmorChanged; // событие вызываемое при изменении количества брони игрока public override void ApplyDamage(IDamageDealer damageDealer) { CurrentArmor -= damageDealer.Damage; ArmorChanged?.Invoke(CurrentArmor); // вызов события if (CurrentArmor <= 0) { ProcessDie(); } }
private void ApplyArmorBonus(float armor) // применить бонус брони { CurrentArmor += armor; if (CurrentArmor > MaxArmor) { CurrentArmor = MaxArmor; } ArmorChanged?.Invoke(CurrentArmor); // вызов события }
protected void onArmorChanged(object sender, EventArgs e) { ArmorChanged?.Invoke(this, new System.EventArgs()); }