Core/Spells: Add missing privateObjectOwner support to Spell::SummonGuardian

This commit is contained in:
Shauren
2021-03-28 16:55:08 +02:00
parent 33b3ebcae6
commit 46a81ea1f4
2 changed files with 7 additions and 7 deletions

View File

@@ -872,7 +872,7 @@ class TC_GAME_API Spell
HitTriggerSpellList m_hitTriggerSpells;
// effect helpers
void SummonGuardian(uint32 i, uint32 entry, SummonPropertiesEntry const* properties, uint32 numSummons);
void SummonGuardian(uint32 i, uint32 entry, SummonPropertiesEntry const* properties, uint32 numSummons, ObjectGuid privateObjectOwner);
void CalculateJumpSpeeds(SpellEffectInfo const* effInfo, float dist, float& speedxy, float& speedz);
void UpdateSpellCastDataTargets(WorldPackets::Spells::SpellCastData& data);

View File

@@ -1938,7 +1938,7 @@ void Spell::EffectSummonType(SpellEffIndex effIndex)
case SUMMON_CATEGORY_UNK:
if (properties->Flags & 512)
{
SummonGuardian(effIndex, entry, properties, numSummons);
SummonGuardian(effIndex, entry, properties, numSummons, privateObjectOwner);
break;
}
switch (SummonTitle(properties->Title))
@@ -1947,7 +1947,7 @@ void Spell::EffectSummonType(SpellEffIndex effIndex)
case SummonTitle::Guardian:
case SummonTitle::Runeblade:
case SummonTitle::Minion:
SummonGuardian(effIndex, entry, properties, numSummons);
SummonGuardian(effIndex, entry, properties, numSummons, privateObjectOwner);
break;
// Summons a vehicle, but doesn't force anyone to enter it (see SUMMON_CATEGORY_VEHICLE)
case SummonTitle::Vehicle:
@@ -2015,7 +2015,7 @@ void Spell::EffectSummonType(SpellEffIndex effIndex)
}//switch
break;
case SUMMON_CATEGORY_PET:
SummonGuardian(effIndex, entry, properties, numSummons);
SummonGuardian(effIndex, entry, properties, numSummons, privateObjectOwner);
break;
case SUMMON_CATEGORY_PUPPET:
summon = m_caster->GetMap()->SummonCreature(entry, *destTarget, properties, duration, m_originalCaster, m_spellInfo->Id, 0, privateObjectOwner);
@@ -2606,7 +2606,7 @@ void Spell::EffectSummonPet(SpellEffIndex effIndex)
{
SummonPropertiesEntry const* properties = sSummonPropertiesStore.LookupEntry(67);
if (properties)
SummonGuardian(effIndex, petentry, properties, 1);
SummonGuardian(effIndex, petentry, properties, 1, ObjectGuid::Empty);
return;
}
@@ -5060,7 +5060,7 @@ void Spell::EffectGameObjectSetDestructionState(SpellEffIndex /*effIndex*/)
gameObjTarget->SetDestructibleState(GameObjectDestructibleState(effectInfo->MiscValue), player, true);
}
void Spell::SummonGuardian(uint32 i, uint32 entry, SummonPropertiesEntry const* properties, uint32 numGuardians)
void Spell::SummonGuardian(uint32 i, uint32 entry, SummonPropertiesEntry const* properties, uint32 numGuardians, ObjectGuid privateObjectOwner)
{
Unit* caster = m_originalCaster;
if (!caster)
@@ -5094,7 +5094,7 @@ void Spell::SummonGuardian(uint32 i, uint32 entry, SummonPropertiesEntry const*
// randomize position for multiple summons
pos = m_caster->GetRandomPoint(*destTarget, radius);
TempSummon* summon = map->SummonCreature(entry, pos, properties, duration, caster, m_spellInfo->Id);
TempSummon* summon = map->SummonCreature(entry, pos, properties, duration, caster, m_spellInfo->Id, 0, privateObjectOwner);
if (!summon)
return;