private double damagePerHit(GameData.DataBuddyInformation character, DataEquipmentInformation weapon, DataEquipmentInformation armor, DataEquipmentInformation accessory, DataRecordMateriaInformation recordMateria, double atk, double mag, double mnd, GameData.Ability ability) { if (ability.Name == "Cactuar") { return 1000; } double damage = ((ability.Formula == GameData.SchemaConstants.Formulas.Healing ? 0 : 5) + ability.CalculateDamage(atk, Double.Parse(textBoxEnemyEffectiveDef.Text), mag, Double.Parse(textBoxEnemyEffectiveRes.Text), mnd) * ability.Multiplier) * (recordMateria != null ? recordMateria.AbilityModifier(weapon, armor, accessory, ability) : 1); if (ability.Formula != GameData.SchemaConstants.Formulas.Healing) { damage *= (weapon != null ? weapon.ElementalMultiplier(ability.Element) : 1) * (armor != null ? armor.ElementalMultiplier(ability.Element) : 1) * (accessory != null ? accessory.ElementalMultiplier(ability.Element) : 1) * BossElementalMultiplier(ability.Element); } return damage; }