diff --git a/src/Library/TypeLibrary.cpp b/src/Library/TypeLibrary.cpp index b4ee41c..220a16b 100644 --- a/src/Library/TypeLibrary.cpp +++ b/src/Library/TypeLibrary.cpp @@ -1,14 +1,11 @@ #include "TypeLibrary.hpp" #include +#include using namespace CreatureLib::Library; float TypeLibrary::GetEffectiveness(uint8_t attacking, const List& defensive) const { - auto eff = 1; - for (auto def : defensive) { - eff *= GetSingleEffectiveness(attacking, def); - } - return eff; + return std::accumulate(defensive.begin(), defensive.end(), (float)1, std::multiplies()); } float TypeLibrary::GetSingleEffectiveness(uint8_t attacking, uint8_t defensive) const {