Skip to main content

StatSource.AddStatModifier

Declaration#

public virtual bool AddStatModifier(GDTKStatModifier modifier, IUniquelyIdentifiable source, StatSource other)

Parameters#

NameDescription
modifierModifier to add
sourceSource of the modifier
otherOther Stat Source

Description#

Add a new Stat Modifier

Usage#

Example
using NullSave.GDTK.Stats;using UnityEngine;
public class Example : MonoBehaviour{
    public void ExampleMethod(StatSource source)    {        // Create a modifier that applies 1 time immediately        // Modifier changes the value of a Stat with the Id        // of 'HP' by adding 2        GDTKStatModifier modifier = new GDTKStatModifier();        modifier.target = ModifierTarget.Value;        modifier.applies = ModifierApplication.Immediately;        modifier.affectsStatId = "HP";        modifier.changeType = ModifierChangeType.Add;        modifier.value.valueExpression = "2";
        source.AddStatModifier(modifier);    }
}

Declaration#

public virtual bool AddStatModifier(GDTKStatModifier modifier, IUniquelyIdentifiable source, Dictionary<string, StatSource> sources)

Parameters#

NameDescription
modifierModifier to add
sourceSource of the modifier
sourcesDictionary of other sources

Description#

Add a new Stat Modifier

Usage#

Example
using NullSave.GDTK;using NullSave.GDTK.Stats;using System.Collections.Generic;using UnityEngine;
public class Example : MonoBehaviour{
    public void ExampleMethod(StatSource target)    {        // Create a modifier that applies 1 time immediately        // Modifier changes the value of a Stat with the Id        // of 'HP' by adding 2        GDTKStatModifier modifier = new GDTKStatModifier();        modifier.target = ModifierTarget.Value;        modifier.applies = ModifierApplication.Immediately;        modifier.affectsStatId = "HP";        modifier.changeType = ModifierChangeType.Add;        modifier.value.valueExpression = "2";
        Dictionary<string, StatSource> sources = new Dictionary<string, StatSource>()        {            { "", target },            { "global", ToolRegistry.GetComponent<GlobalStats>().source }        };
        target.AddStatModifier(modifier, null, sources);    }}