PkmnLib/src/Battling/Library/DamageLibrary.hpp
Deukhoofd 7fe7c8becf
All checks were successful
continuous-integration/drone/push Build is passing
Add support for turning off the random damage modifier.
2021-08-24 20:57:45 +02:00

29 lines
1.5 KiB
C++

#ifndef PKMNLIB_DAMAGELIBRARY_HPP
#define PKMNLIB_DAMAGELIBRARY_HPP
#include <CreatureLib/Battling/Library/DamageLibrary.hpp>
namespace PkmnLib::Battling {
class DamageLibrary final : public CreatureLib::Battling::DamageLibrary {
bool _hasRandomness;
public:
explicit DamageLibrary(bool hasRandomness = true) : _hasRandomness(hasRandomness) {}
uint32_t GetDamage(CreatureLib::Battling::ExecutingAttack* attack, CreatureLib::Battling::Creature* target,
uint8_t hitIndex,
const CreatureLib::Battling::ExecutingAttack::HitData& hitData) const override;
uint8_t GetBasePower(CreatureLib::Battling::ExecutingAttack* attack, CreatureLib::Battling::Creature* target,
uint8_t hitIndex,
const CreatureLib::Battling::ExecutingAttack::HitData& hitData) const override;
float GetStatModifier(CreatureLib::Battling::ExecutingAttack* attack, CreatureLib::Battling::Creature* target,
uint8_t hitIndex,
const CreatureLib::Battling::ExecutingAttack::HitData& hitData) const override;
float GetDamageModifier(CreatureLib::Battling::ExecutingAttack* attack, CreatureLib::Battling::Creature* target,
uint8_t hitIndex,
const CreatureLib::Battling::ExecutingAttack::HitData& hitData) const override;
};
}
#endif // PKMNLIB_DAMAGELIBRARY_HPP