feat(Core/Debug): GetDebugInfo implementation (#12705)

Cherry-pick: 9a924fb9d5

Co-authored-by: jackpoz <giacomopoz@gmail.com>

Co-authored-by: jackpoz <giacomopoz@gmail.com>
This commit is contained in:
Maelthyr
2022-08-15 14:43:41 +02:00
committed by GitHub
parent 0fa783793e
commit d0d1671745
30 changed files with 218 additions and 20 deletions

View File

@@ -297,8 +297,8 @@ void AuraApplication::ClientUpdate(bool remove)
uint8 Aura::BuildEffectMaskForOwner(SpellInfo const* spellProto, uint8 avalibleEffectMask, WorldObject* owner)
{
ASSERT(spellProto);
ASSERT(owner);
ASSERT_NODEBUGINFO(spellProto);
ASSERT_NODEBUGINFO(owner);
uint8 effMask = 0;
switch (owner->GetTypeId())
{
@@ -325,10 +325,10 @@ uint8 Aura::BuildEffectMaskForOwner(SpellInfo const* spellProto, uint8 avalibleE
Aura* Aura::TryRefreshStackOrCreate(SpellInfo const* spellproto, uint8 tryEffMask, WorldObject* owner, Unit* caster, int32* baseAmount /*= nullptr*/, Item* castItem /*= nullptr*/, ObjectGuid casterGUID /*= ObjectGuid::Empty*/, bool* refresh /*= nullptr*/, bool periodicReset /*= false*/)
{
ASSERT(spellproto);
ASSERT(owner);
ASSERT(caster || casterGUID);
ASSERT(tryEffMask <= MAX_EFFECT_MASK);
ASSERT_NODEBUGINFO(spellproto);
ASSERT_NODEBUGINFO(owner);
ASSERT_NODEBUGINFO(caster || casterGUID);
ASSERT_NODEBUGINFO(tryEffMask <= MAX_EFFECT_MASK);
if (refresh)
*refresh = false;
uint8 effMask = Aura::BuildEffectMaskForOwner(spellproto, tryEffMask, owner);
@@ -351,10 +351,10 @@ Aura* Aura::TryRefreshStackOrCreate(SpellInfo const* spellproto, uint8 tryEffMas
Aura* Aura::TryCreate(SpellInfo const* spellproto, uint8 tryEffMask, WorldObject* owner, Unit* caster, int32* baseAmount /*= nullptr*/, Item* castItem /*= nullptr*/, ObjectGuid casterGUID /*= ObjectGuid::Empty*/, ObjectGuid itemGUID /*= ObjectGuid::Empty*/)
{
ASSERT(spellproto);
ASSERT(owner);
ASSERT(caster || casterGUID);
ASSERT(tryEffMask <= MAX_EFFECT_MASK);
ASSERT_NODEBUGINFO(spellproto);
ASSERT_NODEBUGINFO(owner);
ASSERT_NODEBUGINFO(caster || casterGUID);
ASSERT_NODEBUGINFO(tryEffMask <= MAX_EFFECT_MASK);
uint8 effMask = Aura::BuildEffectMaskForOwner(spellproto, tryEffMask, owner);
if (!effMask)
return nullptr;
@@ -363,11 +363,11 @@ Aura* Aura::TryCreate(SpellInfo const* spellproto, uint8 tryEffMask, WorldObject
Aura* Aura::Create(SpellInfo const* spellproto, uint8 effMask, WorldObject* owner, Unit* caster, int32* baseAmount, Item* castItem, ObjectGuid casterGUID, ObjectGuid itemGUID /*= ObjectGuid::Empty*/)
{
ASSERT(effMask);
ASSERT(spellproto);
ASSERT(owner);
ASSERT(caster || casterGUID);
ASSERT(effMask <= MAX_EFFECT_MASK);
ASSERT_NODEBUGINFO(effMask);
ASSERT_NODEBUGINFO(spellproto);
ASSERT_NODEBUGINFO(owner);
ASSERT_NODEBUGINFO(caster || casterGUID);
ASSERT_NODEBUGINFO(effMask <= MAX_EFFECT_MASK);
// try to get caster of aura
if (casterGUID)
{
@@ -2707,6 +2707,15 @@ void Aura::SetTriggeredByAuraSpellInfo(SpellInfo const* triggeredByAuraSpellInfo
m_triggeredByAuraSpellInfo = triggeredByAuraSpellInfo;
}
std::string Aura::GetDebugInfo() const
{
std::stringstream sstr;
sstr << std::boolalpha
<< "Id: " << GetId() << " Caster: " << GetCasterGUID().ToString()
<< "\nOwner: " << (GetOwner() ? GetOwner()->GetDebugInfo() : "NULL");
return sstr.str();
}
SpellInfo const* Aura::GetTriggeredByAuraSpellInfo() const
{
return m_triggeredByAuraSpellInfo;