81 if (
urand(0, 99) < 25)
uint32 urand(uint32 min, uint32 max)
void CloseGossipMenuFor(Player *player)
@ SPELL_DAMAGE_REFLECTION
@ SPELL_AEGIS_OF_RAGNAROS
void AddSC_boss_majordomo()
@ MENU_OPTION_YOU_CHALLENGED_US
@ OPTION_ID_YOU_CHALLENGED_US
@ EVENT_DAMAGE_REFLECTION
InstanceScript *const instance
void JustEngagedWith(Unit *who) override
virtual void EnterEvadeMode(EvadeReason why=EvadeReason::Other)
void Talk(uint8 id, WorldObject const *whisperTarget=nullptr)
void ScheduleEvent(uint32 eventId, Milliseconds time, uint32 group=0, uint8 phase=0)
EncounterState GetBossState(uint32 id) const
TempSummon * SummonCreature(uint32 entry, Position const &pos, SummonPropertiesEntry const *properties=nullptr, Milliseconds duration=0ms, WorldObject *summoner=nullptr, uint32 spellId=0, uint32 vehId=0, ObjectGuid privateObjectOwner=ObjectGuid::Empty, SmoothPhasingInfo const *smoothPhasingInfo=nullptr)
SpellCastResult DoCastVictim(uint32 spellId, CastSpellExtraArgs const &args={})
Unit * SelectTarget(SelectTargetMethod targetType, uint32 offset=0, float dist=0.0f, bool playerOnly=false, bool withTank=true, int32 aura=0)
SpellCastResult DoCast(uint32 spellId)
void SetFaction(uint32 faction) override
void RemoveNpcFlag(NPCFlags flags)
void SetNpcFlag(NPCFlags flags)
void NearTeleportTo(Position const &pos, bool casting=false)
bool HasUnitState(const uint32 f) const
Creature * FindNearestCreature(uint32 entry, float range, bool alive=true) const
Position const RagnarosSummonPos
Position const RagnarosTelePos
#define RegisterMoltenCoreCreatureAI(ai_name)
@ ACTION_START_RAGNAROS_ALT
@ BOSS_MAJORDOMO_EXECUTUS
constexpr float GetPositionX() const
constexpr float GetPositionY() const
constexpr float GetOrientation() const
constexpr float GetPositionZ() const
bool HealthBelowPct(uint32 pct) const
void KilledUnit(Unit *) override
bool OnGossipSelect(Player *player, uint32 menuId, uint32 gossipListId) override
void DoAction(int32 action) override
void UpdateAI(uint32 diff) override
void JustEngagedWith(Unit *who) override
boss_majordomo(Creature *creature)