public StatBuffAilment GetStatBuffAilment(ModifiableStat stat, float value) { StatBuffAilment ailment = (StatBuffAilment)this.commonStatusAilments.Find(ail => ail.name == "StatBuff"); ailment = Instantiate(ailment); ailment.statType = stat; ailment.val = value; return(ailment); }
public override void Initialize(Fighter player) { List <ModifiableStat> modifiableStats = new List <ModifiableStat>(player.stats.GetModifiableStats().Keys); statType = modifiableStats[Random.Range(0, modifiableStats.Count)]; StatBuffAilment statAilment = GameManager.Instance.models.GetStatBuffAilment(this.statType, percentage); statAilment.val = Random.Range(minPercentage, maxPercentage); this.percentage = statAilment.val; this.ailment = statAilment; this.name = GetStatDisplayName(statType) + " " + statAilment.val; this.description = "Raises " + statType.ToString() + " by: " + statAilment.val; if (statAilment.damageType == StatModifier.Type.ADD_PERCENTAGE) { this.description += "%"; this.name += "%"; } }
private void ApplyHelper(Fighter p, StatBuffAilment ailment) { modifiers.Add(p.stats.GetModifiableStats()[ailment.statType].ApplyDeltaModifier(ailment.val, ailment.damageType)); }
public override void StackWith(Fighter p, StatusAilment other) { StatBuffAilment otherAilment = (StatBuffAilment)other; this.ApplyHelper(p, otherAilment); }