First const & RAND(First const &first, Second const &second, Rest const &... rest)
@ CURRENT_CHANNELED_SPELL
@ SPELL_CANCEL_TRANQUILITY
void AddSC_boss_high_botanist_freywinn()
void JustEngagedWith(Unit *who) override
void Talk(uint8 id, WorldObject const *whisperTarget=nullptr)
bool IsEngaged() const override
void Repeat(Milliseconds time)
void ScheduleEvent(uint32 eventId, Milliseconds time, uint32 group=0, uint8 phase=0)
SpellCastResult DoCastSelf(uint32 spellId, CastSpellExtraArgs const &args={})
bool HasUnitState(const uint32 f) const
void RemoveAurasDueToSpell(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, uint32 reqEffMask=0, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
void InterruptSpell(CurrentSpellTypes spellType, bool withDelayed=true, bool withInstant=true)
void JustEngagedWith(Unit *who) override
void UpdateAI(uint32 diff) override
void KilledUnit(Unit *) override
void JustDied(Unit *) override
void SpellHit(WorldObject *, SpellInfo const *spellInfo) override
void JustSummoned(Creature *summon) override
boss_high_botanist_freywinn(Creature *creature)
@ DATA_HIGH_BOTANIST_FREYWINN
#define RegisterBotanicaCreatureAI(ai_name)