public LastingEffectCalcInfo(EffectType type, int turns, EffectiveFactor effective, PercentageFactor perc) { Type = type; Origin = EffectOrigin.SelfCasted; if (type == EffectType.Bleeding) { Origin = EffectOrigin.Unset; } else if (type == EffectType.Weaken || type == EffectType.Inaccuracy) { Origin = EffectOrigin.OtherCasted; } Turns = turns; EffectiveFactor = effective; PercentageFactor = perc; }
public LastingEffect(EffectType type, ILastingEffectOwner owner, int turns, EffectOrigin origin, EffectiveFactor effectiveFactor, PercentageFactor percentageFactor) { this.Id = Guid.NewGuid(); this.Origin = origin; this.Type = type; this.Owner = owner; this.PendingTurns = turns; this.EffectiveFactor = effectiveFactor; this.PercentageFactor = percentageFactor; Application = EffectApplication.Single; if (type == EffectType.Bleeding || type == EffectType.Poisoned || type == EffectType.Frozen || type == EffectType.Firing || type == EffectType.ConsumedRawFood || type == EffectType.ConsumedRoastedFood || type == EffectType.BushTrap //|| ) { Application = EffectApplication.EachTurn; } }