feat(Core/Unit): Add SpellSchoolMask info to the DamageDealt() hook (#21411)

This commit is contained in:
Andrew 2025-02-12 08:16:02 -03:00 committed by GitHub
parent 3a41901154
commit b17d69b33c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 11 additions and 11 deletions

View File

@ -359,7 +359,7 @@ public:
virtual void JustExitedCombat() { }
/// @brief Called at any Damage to any victim (before damage apply)
virtual void DamageDealt(Unit* /*victim*/, uint32& /*damage*/, DamageEffectType /*damageType*/) { }
virtual void DamageDealt(Unit* /*victim*/, uint32& /*damage*/, DamageEffectType /*damageType*/, SpellSchoolMask /*damageSchoolMask*/) {}
/** @brief Called at any Damage from any attacker (before damage apply)
*

View File

@ -893,7 +893,7 @@ void SmartAI::IsSummonedBy(WorldObject* summoner)
GetScript()->ProcessEventsFor(SMART_EVENT_JUST_SUMMONED, summoner->ToUnit(), 0, 0, false, nullptr, summoner->ToGameObject());
}
void SmartAI::DamageDealt(Unit* doneTo, uint32& damage, DamageEffectType /*damagetype*/)
void SmartAI::DamageDealt(Unit* doneTo, uint32& damage, DamageEffectType /*damagetype*/, SpellSchoolMask /*damageSchoolMask*/)
{
GetScript()->ProcessEventsFor(SMART_EVENT_DAMAGED_TARGET, doneTo, damage);
}

View File

@ -131,7 +131,7 @@ public:
void IsSummonedBy(WorldObject* summoner) override;
// Called at any Damage to any victim (before damage apply)
void DamageDealt(Unit* doneTo, uint32& damage, DamageEffectType damagetyp) override;
void DamageDealt(Unit* doneTo, uint32& damage, DamageEffectType damagetyp, SpellSchoolMask damageSchoolMask) override;
// Called when a summoned creature dissapears (UnSommoned)
void SummonedCreatureDespawn(Creature* unit) override;

View File

@ -819,7 +819,7 @@ uint32 Unit::DealDamage(Unit* attacker, Unit* victim, uint32 damage, CleanDamage
victim->GetAI()->DamageTaken(attacker, damage, damagetype, damageSchoolMask);
if (attacker && attacker->IsAIEnabled)
attacker->GetAI()->DamageDealt(victim, damage, damagetype);
attacker->GetAI()->DamageDealt(victim, damage, damagetype, damageSchoolMask);
}
// Hook for OnDamage Event

View File

@ -173,7 +173,7 @@ struct boss_janalai : public BossAI
BossAI::JustSummoned(summon);
}
void DamageDealt(Unit* target, uint32& damage, DamageEffectType /*damagetype*/) override
void DamageDealt(Unit* target, uint32& damage, DamageEffectType /*damagetype*/, SpellSchoolMask /*damageSchoolMask*/) override
{
if (_isFlameBreathing)
{

View File

@ -294,7 +294,7 @@ public:
}
}
void DamageDealt(Unit* doneTo, uint32& damage, DamageEffectType /*damagetype*/) override
void DamageDealt(Unit* doneTo, uint32& damage, DamageEffectType /*damagetype*/, SpellSchoolMask /*damageSchoolMask*/) override
{
if (doneTo && doneTo == me->GetVictim())
{

View File

@ -342,7 +342,7 @@ public:
}
}
void DamageDealt(Unit* target, uint32& damage, DamageEffectType /*damageType*/) override
void DamageDealt(Unit* target, uint32& damage, DamageEffectType /*damageType*/, SpellSchoolMask /*damageSchoolMask*/) override
{
if (!target->IsPlayer())
return;
@ -612,7 +612,7 @@ public:
}
}
void DamageDealt(Unit* target, uint32& damage, DamageEffectType /*damageType*/) override
void DamageDealt(Unit* target, uint32& damage, DamageEffectType /*damageType*/, SpellSchoolMask /*damageSchoolMask*/) override
{
if (!target->IsPlayer())
return;
@ -906,7 +906,7 @@ public:
}
}
void DamageDealt(Unit* target, uint32& damage, DamageEffectType /*damageType*/) override
void DamageDealt(Unit* target, uint32& damage, DamageEffectType /*damageType*/, SpellSchoolMask /*damageSchoolMask*/) override
{
if (!target->IsPlayer())
return;
@ -1334,7 +1334,7 @@ public:
me->DespawnOrUnsummon(1);
}
void DamageDealt(Unit* target, uint32& damage, DamageEffectType /*damageType*/) override
void DamageDealt(Unit* target, uint32& damage, DamageEffectType /*damageType*/, SpellSchoolMask /*damageSchoolMask*/) override
{
if (!target->IsPlayer())
{

View File

@ -630,7 +630,7 @@ public:
uint32 _timer;
bool _damaged, justSpawned;
void DamageDealt(Unit* /*victim*/, uint32& damage, DamageEffectType /*damageType*/) override
void DamageDealt(Unit* /*victim*/, uint32& damage, DamageEffectType /*damageType*/, SpellSchoolMask /*damageSchoolMask*/) override
{
if (damage > 0 && !_damaged && me->GetInstanceScript())
{