public Strength(string statName, StatType statType, Rarity rarity, AffectedStat affectedStat, int statValue) { this.StatName = statName; this.statType = statType; this.StatValue = statValue; this.affectedStat = affectedStat; this.rarity = rarity; }
public Move(string name, int staminaCost, Target target, AffectedStat stat, int amount) { this.name = name; this.staminaCost = staminaCost; this.target = target; this.stat = stat; this.amount = amount; }
private void AddModifiers(AffectedStat stat, UnitBase unit, bool isBuff) { switch (stat) { case AffectedStat.MaxHP: break; case AffectedStat.Strength: modifier = isBuff? new StatModifier(BuffMultiplier, StatModType.PercentAdd, this) : new StatModifier(DebuffMultiplier, StatModType.PercentAdd, this); unit.strength.AddModifier(modifier); break; case AffectedStat.Magic: modifier = isBuff? new StatModifier(BuffMultiplier, StatModType.PercentAdd, this) : new StatModifier(DebuffMultiplier, StatModType.PercentAdd, this); unit.magic.AddModifier(modifier); break; case AffectedStat.Accuracy: modifier = isBuff? new StatModifier(BuffMultiplier, StatModType.PercentAdd, this) : new StatModifier(DebuffMultiplier, StatModType.PercentAdd, this); unit.accuracy.AddModifier(modifier); break; case AffectedStat.Initiative: modifier = isBuff? new StatModifier(BuffMultiplier, StatModType.PercentAdd, this) : new StatModifier(DebuffMultiplier, StatModType.PercentAdd, this); unit.initiative.AddModifier(modifier); break; case AffectedStat.CriticalChance: modifier = isBuff? new StatModifier(BuffMultiplier, StatModType.PercentAdd, this) : new StatModifier(DebuffMultiplier, StatModType.PercentAdd, this); unit.criticalChance.AddModifier(modifier); break; case AffectedStat.Defense: modifier = isBuff? new StatModifier(BuffMultiplier, StatModType.PercentAdd, this) : new StatModifier(DebuffMultiplier, StatModType.PercentAdd, this); unit.defense.AddModifier(modifier); break; case AffectedStat.Resistance: modifier = isBuff? new StatModifier(BuffMultiplier, StatModType.PercentAdd, this) : new StatModifier(DebuffMultiplier, StatModType.PercentAdd, this); unit.resistance.AddModifier(modifier); break; case AffectedStat.None: break; default: Logging.Log("Could not find the stat to modify"); break; } }
public Move(MoveData data) { this.name = data.name; this.staminaCost = data.staminaCost; this.amount = data.amount; if (data.target == "Self") { this.target = Target.Self; } else { this.target = Target.Enemy; } switch(data.stat) { case "Health": this.stat = AffectedStat.Health; break; case "MP": this.stat = AffectedStat.MP; break; case "Strength": this.stat = AffectedStat.Strength; break; case "Intelligence": this.stat = AffectedStat.Intelligence; break; case "Dexterity": this.stat = AffectedStat.Dexterity; break; case "Stamina": this.stat = AffectedStat.Stamina; break; case "Defense": this.stat = AffectedStat.Defense; break; } }
private void RemoveModifier(AffectedStat stat, UnitBase unit) { switch (stat) { case AffectedStat.MaxHP: break; case AffectedStat.Strength: unit.strength.RemoveModifier(modifier); break; case AffectedStat.Magic: unit.magic.RemoveModifier(modifier); break; case AffectedStat.Accuracy: unit.accuracy.RemoveModifier(modifier); break; case AffectedStat.Initiative: unit.initiative.RemoveModifier(modifier); break; case AffectedStat.CriticalChance: unit.criticalChance.RemoveModifier(modifier); break; case AffectedStat.Defense: unit.defense.RemoveModifier(modifier); break; case AffectedStat.Resistance: unit.resistance.RemoveModifier(modifier); break; case AffectedStat.None: break; } }
public MagicMove(string name, int staminaCost, Target target, AffectedStat stat, int amount, int mpCost) : base(name, staminaCost, target, stat, amount) { this.mpCost = mpCost; }