Initial support for Event Hooks.
Some checks failed
continuous-integration/drone/push Build is failing

This commit is contained in:
2019-12-15 12:24:08 +01:00
parent 6ba708ad12
commit 410487c86b
6 changed files with 74 additions and 1 deletions

View File

@@ -107,7 +107,9 @@ void Battling::Creature::Damage(uint32_t damage, Battling::DamageSource source)
damage = __CurrentHealth;
}
// HOOK: On Damage
__CurrentHealth -= damage;
auto newHealth = __CurrentHealth - damage;
this->GetBattle()->TriggerEventListener(new DamageEvent(this, source, __CurrentHealth, newHealth));
__CurrentHealth = newHealth;
if (IsFainted() && damage > 0) {
OnFaint();