Example #1
0
    public virtual void RemoveModifier(ICharacteristicModifier <int> modifier)
    {
        attributeModifiers.Remove(modifier);

        modifier.OnChangeCharacteristicModifier -= ReportUpdateFinalValue;

        ReportUpdateFinalValue();
    }
Example #2
0
    public virtual void AddModifier(ICharacteristicModifier <float> modifier)
    {
        statModifiers.Add(modifier);

        modifier.OnChangeCharacteristicModifier += ReportUpdateFinalValue;

        ReportUpdateFinalValue();
    }
Example #3
0
    public override void RemoveModifier(ICharacteristicModifier <float> modifier)
    {
        if (modifier.GetModifierValue() > 1f)
        {
            Debug.LogWarning("You remove too much Percent modifier!");
        }

        base.RemoveModifier(modifier);
    }
Example #4
0
    public override void AddModifier(ICharacteristicModifier <float> modifier)
    {
        if (modifier.GetModifierValue() > 1f)
        {
            Debug.LogWarning("Too much Percent modifier to add!");
        }

        base.AddModifier(modifier);
    }