Add support for turning off the random damage modifier.
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
@@ -83,8 +83,10 @@ float PkmnLib::Battling::DamageLibrary::GetDamageModifier(CreatureLib::Battling:
|
||||
mod *= critModifier;
|
||||
}
|
||||
Ensure(attack->GetUser()->GetBattle().GetValue());
|
||||
float randPercentage = 85 + attack->GetUser()->GetBattle().GetValue()->GetRandom()->Get(0, 16);
|
||||
mod *= randPercentage / 100.0;
|
||||
if (_hasRandomness) {
|
||||
float randPercentage = 85 + attack->GetUser()->GetBattle().GetValue()->GetRandom()->Get(0, 16);
|
||||
mod *= randPercentage / 100.0;
|
||||
}
|
||||
if (attack->GetUser()->HasType(hitData.GetType())) {
|
||||
float stabModifier = 1.5;
|
||||
PKMN_HOOK(OverrideSTABModifier, attack, attack, target, hitIndex, &stabModifier);
|
||||
|
||||
@@ -4,7 +4,11 @@
|
||||
#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;
|
||||
|
||||
Reference in New Issue
Block a user