Files
CreatureLib/src/Battling/Library/ExperienceLibrary.cpp
Deukhoofd 649de39571
Some checks failed
continuous-integration/drone/push Build is failing
Implements experience gain on opponent faint.
2019-12-14 13:28:23 +01:00

14 lines
533 B
C++

#include "ExperienceLibrary.hpp"
#include "../Models/Creature.hpp"
void CreatureLib::Battling::ExperienceLibrary::HandleExperienceGain(
CreatureLib::Battling::Creature* faintedMon, const std::unordered_set<Creature*>& opponents) const {
for (auto opponent : opponents) {
auto levelDiff = faintedMon->GetLevel() - opponent->GetLevel() + 10;
if (levelDiff <= 0)
continue;
auto experienceGain = levelDiff * 10;
opponent->AddExperience(static_cast<uint32_t>(experienceGain));
}
}