void SubtractPowerResistance <T>(CombatStatEnum cse, Stats precursorStats, ref CombatStats power, ref CombatStats resistance, List <T> buffList) where T : AbstractEffect { foreach (AbstractEffect e in buffList) { power[cse] += e.PowerValue(cse); resistance[cse] += e.ResistanceValue(cse); power[cse] += e.PercentPowerValue(cse) * precursorStats.PowerValue(cse) / 100; resistance[cse] += e.ResistanceValue(cse) * precursorStats.ResistanceValue(cse) / 100; } }
public float ResistanceValue(CombatStatEnum combatStatEnum) { return(resistance[combatStatEnum]); }
public float PercentResistanceValue(CombatStatEnum combatStatEnum) { return(percentStats.ResistanceValue(combatStatEnum)); }
public float PowerValue(CombatStatEnum combatStatEnum) { return(power[combatStatEnum]); }
public float PercentPowerValue(CombatStatEnum combatStatEnum) { return(percentStats.PowerValue(combatStatEnum)); }
public float ResistanceValue(CombatStatEnum combatStatEnum) { return(stats.ResistanceValue(combatStatEnum)); }
public float PowerValue(CombatStatEnum combatStatEnum) { return(stats.PowerValue(combatStatEnum)); }
public float DamageValue(CombatStatEnum cse) { return(damage[cse]); }
public float this[CombatStatEnum cse] { get{ switch (cse) { case CombatStatEnum.fire: return(fire); case CombatStatEnum.ice: return(ice); case CombatStatEnum.lightning: return(lightning); case CombatStatEnum.bleeding: return(bleeding); case CombatStatEnum.blunt: return(blunt); case CombatStatEnum.sharp: return(sharp); case CombatStatEnum.piercing: return(piercing); case CombatStatEnum.normal: return(normal); case CombatStatEnum.stamina: return(stamina); case CombatStatEnum.mana: return(mana); } return(0); } set{ switch (cse) { case CombatStatEnum.fire: fire = value; break; case CombatStatEnum.ice: ice = value; break; case CombatStatEnum.lightning: lightning = value; break; case CombatStatEnum.bleeding: bleeding = value; break; case CombatStatEnum.blunt: blunt = value; break; case CombatStatEnum.sharp: sharp = value; break; case CombatStatEnum.piercing: piercing = value; break; case CombatStatEnum.normal: normal = value; break; case CombatStatEnum.stamina: stamina = value; break; case CombatStatEnum.mana: mana = value; break; } } }