diff options
| author | Snapper <snapperryen@gmail.com> | 2016-10-30 11:20:58 +0100 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2016-10-30 11:20:58 +0100 |
| commit | 5d9d25d5960a29d098035f9382a7b022e5294229 (patch) | |
| tree | cbebe8a54fd89adaf4a63d421aa1cc784359953f /src/server/game/Spells/SpellEffects.cpp | |
| parent | f0ab95f19cd5e269efdee33cf02b91eb77a98277 (diff) | |
Core/GameObjects: Handle despawning and respawning of nearby linked traps on gameobject despawn and respawn
Closes #12139
Closes #17553
Diffstat (limited to 'src/server/game/Spells/SpellEffects.cpp')
| -rw-r--r-- | src/server/game/Spells/SpellEffects.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index 8f25b3f7a5a..6a05a55019c 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -3540,6 +3540,7 @@ void Spell::EffectSummonObjectWild(SpellEffIndex effIndex) GameObject* linkedGO = new GameObject(); if (linkedGO->Create(map->GenerateLowGuid<HighGuid::GameObject>(), linkedEntry, map, m_caster->GetPhaseMask(), Position(x, y, z, target->GetOrientation()), rot, 255, GO_STATE_READY)) { + pGameObj->SetLinkedTrap(linkedGO); linkedGO->SetRespawnTime(duration > 0 ? duration/IN_MILLISECONDS : 0); linkedGO->SetSpellId(m_spellInfo->Id); @@ -5146,6 +5147,7 @@ void Spell::EffectTransmitted(SpellEffIndex effIndex) GameObject* linkedGO = new GameObject; if (linkedGO->Create(cMap->GenerateLowGuid<HighGuid::GameObject>(), linkedEntry, cMap, m_caster->GetPhaseMask(), pos, rot, 255, GO_STATE_READY)) { + pGameObj->SetLinkedTrap(linkedGO); linkedGO->SetRespawnTime(duration > 0 ? duration/IN_MILLISECONDS : 0); //linkedGO->SetUInt32Value(GAMEOBJECT_LEVEL, m_caster->getLevel()); linkedGO->SetSpellId(m_spellInfo->Id); |
