1232 {
1234 return;
1235
1237 if (!instance)
1238 return;
1239
1241
1243 {
1245 {
1246 if (
Aura* oldPlague =
GetCaster()->GetAura(plagueId, professor->GetGUID()))
1247 {
1248 if (
Aura* newPlague = professor->AddAura(plagueId,
GetHitUnit()))
1249 {
1250 newPlague->SetMaxDuration(oldPlague->GetMaxDuration());
1251 newPlague->SetDuration(oldPlague->GetDuration());
1252 oldPlague->Remove();
1257 }
1258 }
1259 }
1260 }
1261 }
std::uint32_t uint32
Definition Define.h:107
@ SPELL_UNBOUND_PLAGUE_PROTECTION
Definition boss_professor_putricide.cpp:81
@ SPELL_PLAGUE_SICKNESS
Definition boss_professor_putricide.cpp:80
Definition SpellAuras.h:88
Definition InstanceScript.h:143
ObjectGuid GetGuidData(uint32 type) const override
Definition InstanceScript.cpp:115
Unit * GetHitUnit()
Definition SpellScript.cpp:453
SpellCastResult CastSpell(SpellCastTargets const &targets, SpellInfo const *spellInfo, CustomSpellValues const *value, TriggerCastFlags triggerFlags=TRIGGERED_NONE, Item *castItem=nullptr, AuraEffect const *triggeredByAura=nullptr, ObjectGuid originalCaster=ObjectGuid::Empty)
Definition Unit.cpp:1359
void RemoveAurasDueToSpell(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, uint8 reqEffMask=0, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
Definition Unit.cpp:4900
InstanceScript * GetInstanceScript() const
Definition Object.cpp:1247
@ DATA_PROFESSOR_PUTRICIDE
Definition icecrown_citadel.h:95
Creature * GetCreature(WorldObject const &u, ObjectGuid const &guid)
Definition ObjectAccessor.cpp:234