public void Ensure(EntityStatKind kind) { if (!stats.ContainsKey(kind)) { stats[kind] = new EntityStat(kind, 0); } }
internal void IncreaseDynamicStatValue(EntityStatKind sk, EntityStat percIncrease, bool useCurrentValue = true) { var inc = FactorCalculator.CalcPercentageValue(Stats[sk].GetValueToCalcPercentage(useCurrentValue), percIncrease.Factor); //if (inc < 1) // inc = 1; ChangeStatDynamicValue(sk, inc); }
public float SumValueAndPercentageFactor(EntityStat factorPercentage, bool useCurrentValue) { if (factorPercentage.Unit != EntityStatUnit.Percentage) { throw new Exception("factorPercentage.Unit != EntityStatUnit.Percentage" + factorPercentage); } return(SumValueAndPercentageFactor(factorPercentage.Value.Factor, useCurrentValue)); }
public void Ensure(EntityStatKind kind) { if (!stats.ContainsKey(kind)) { var es = new EntityStat(kind, 0, EntityStatUnit.Unset); es.SetKind(kind); stats[kind] = es; } }
public void SetStat(EntityStatKind esk, EntityStat es) { Ensure(esk); Stats[esk] = es; }