public void AddInfluencerGauge(Gauge g, InfluencerModAmount modAmount) { Modifier m = new Modifier(modAmount(g), g.name); modifiers.Add(m); influencers.Add(g, m); influencerFuncs.Add(g, modAmount); g.OnChanged += UpdateInfluencerModAmount; }
public void UpdateInfluencerModAmount(Gauge g) { int initial = ModifiedCurrent; Modifier m = null; if (influencers.TryGetValue(g, out m)) { InfluencerModAmount modAmount = null; if (influencerFuncs.TryGetValue(g, out modAmount)) { m.SetValue(modAmount(g)); } } if (initial != ModifiedCurrent) { if (OnChanged != null) { OnChanged(this); } } }