636 {
637
638
640 return;
641
642 uint8 casterStack = 1;
643 uint8 targetStack = 1;
645 if (casterAura)
648 if (targetAura)
650 uint8 newStack = casterStack + targetStack;
651 if (newStack > 5)
652 newStack = 5;
653 if (casterAura)
655 else
656 {
659 aur->SetStackAmount(newStack);
660 }
661
662
663 if (newStack >= 4)
665
666
667 if (newStack >= 5)
668 {
673 if (rotface->IsAlive())
674 {
678 }
679
685 }
686
690 }
std::uint8_t uint8
Definition: Define.h:110
std::uint32_t uint32
Definition: Define.h:108
@ TYPEID_UNIT
Definition: ObjectGuid.h:37
@ SPELL_LARGE_OOZE_COMBINE
Definition: boss_rotface.cpp:58
@ SPELL_UNSTABLE_OOZE_EXPLOSION
Definition: boss_rotface.cpp:65
@ SPELL_UNSTABLE_OOZE
Definition: boss_rotface.cpp:63
@ SPELL_LARGE_OOZE_BUFF_COMBINE
Definition: boss_rotface.cpp:59
@ SAY_UNSTABLE_EXPLOSION
Definition: boss_rotface.cpp:33
@ EMOTE_UNSTABLE_EXPLOSION
Definition: boss_rotface.cpp:32
@ EVENT_STICKY_OOZE
Definition: boss_rotface.cpp:88
@ DATA_OOZE_DANCE_ACHIEVEMENT
Definition: icecrown_citadel.h:114
@ DATA_ROTFACE
Definition: icecrown_citadel.h:99
Creature * GetCreature(WorldObject const &u, ObjectGuid const guid)
Definition: ObjectAccessor.cpp:213
void Talk(uint8 id, WorldObject const *whisperTarget=nullptr, Milliseconds delay=0s)
Causes the creature to talk/say the text assigned to their entry in the creature_text database table.
Definition: CreatureAI.cpp:49
Definition: Creature.h:46
void DespawnOrUnsummon(Milliseconds msTimeToDespawn, Seconds forcedRespawnTimer)
Definition: Creature.cpp:2117
CreatureAI * AI() const
Definition: Creature.h:136
Creature * ToCreature()
Definition: Object.h:197
Aura * GetAura(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, ObjectGuid itemCasterGUID=ObjectGuid::Empty, uint8 reqEffMask=0) const
Definition: Unit.cpp:5519
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:4855
Definition: InstanceScript.h:141
Definition: SpellAuras.h:87
void SetStackAmount(uint8 num)
Definition: SpellAuras.cpp:1009
uint8 GetStackAmount() const
Definition: SpellAuras.h:148
Creature * GetHitCreature()
Definition: SpellScript.cpp:458
Unit * GetCaster()
Definition: SpellScript.cpp:401