1282 {
1284 return;
1285
1287 if (!instance)
1288 return;
1289
1291
1293 {
1295 {
1296 if (
Aura* oldPlague =
GetCaster()->GetAura(plagueId, professor->GetGUID()))
1297 {
1298 if (
Aura* newPlague = professor->AddAura(plagueId,
GetHitUnit()))
1299 {
1300 newPlague->SetMaxDuration(oldPlague->GetMaxDuration());
1301 newPlague->SetDuration(oldPlague->GetDuration());
1302 oldPlague->Remove();
1307 }
1308 }
1309 }
1310 }
1311 }
std::uint32_t uint32
Definition: Define.h:108
@ SPELL_UNBOUND_PLAGUE_PROTECTION
Definition: boss_professor_putricide.cpp:79
@ SPELL_PLAGUE_SICKNESS
Definition: boss_professor_putricide.cpp:78
@ DATA_PROFESSOR_PUTRICIDE
Definition: icecrown_citadel.h:99
Creature * GetCreature(WorldObject const &u, ObjectGuid const guid)
Definition: ObjectAccessor.cpp:215
Definition: Creature.h:46
InstanceScript * GetInstanceScript() const
Definition: Object.cpp:1192
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:1169
void RemoveAurasDueToSpell(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, uint8 reqEffMask=0, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
Definition: Unit.cpp:4835
Definition: InstanceScript.h:140
ObjectGuid GetGuidData(uint32 type) const override
Definition: InstanceScript.cpp:94
Definition: SpellAuras.h:87
Unit * GetHitUnit()
Definition: SpellScript.cpp:448