132 for (
uint8 i = 0; i < 2; ++i)
133 if (
Unit* arm = vehicle->GetPassenger(i))
168 if (!apply && isEncounterInProgress)
178 if (!apply && isEncounterInProgress)
185 if (!isEncounterInProgress)
238 summon->
Attack(target,
false);
325 return GetUlduarAI<boss_kologarnAI>(creature);
347 for (
uint8 i = 0; i < 5; ++i)
348 caster->
CastSpell(caster, spellId, originalCaster);
411 while (maxTargets < unitList.size())
413 std::list<WorldObject*>::iterator itr = unitList.begin();
414 advance(itr,
urand(0, unitList.size()-1));
570 owner->RemoveAurasDueToSpell(aurEff->
GetAmount());
629 return !creature->IsPet();
@ DUNGEON_DIFFICULTY_NORMAL
@ ACHIEVEMENT_TIMED_TYPE_EVENT
@ TEMPSUMMON_MANUAL_DESPAWN
float frand(float min, float max)
int32 irand(int32 min, int32 max)
uint32 urand(uint32 min, uint32 max)
@ SPELL_EFFECT_SCRIPT_EFFECT
@ SPELL_EFFECT_FORCE_CAST
@ TARGET_UNIT_SRC_AREA_ENEMY
@ AURA_REMOVE_BY_ENEMY_SPELL
@ AURA_EFFECT_HANDLE_REAL
@ SPELL_AURA_CONTROL_VEHICLE
@ SPELL_AURA_SCHOOL_ABSORB
#define SpellEffectFn(F, I, N)
#define SpellObjectAreaTargetSelectFn(F, I, N)
#define AuraEffectRemoveFn(F, I, N, M)
@ UNIT_FLAG_UNINTERACTIBLE
@ SPELL_FOCUSED_EYEBEAM_VISUAL
@ SPELL_SUMMON_FOCUSED_EYEBEAM
@ SPELL_ARM_ENTER_VEHICLE
@ SPELL_STONE_GRIP_CANCEL
@ SPELL_FOCUSED_EYEBEAM_VISUAL_LEFT
@ SPELL_FOCUSED_EYEBEAM_PERIODIC
@ SPELL_KOLOGARN_REDUCE_PARRY
@ SPELL_FOCUSED_EYEBEAM_VISUAL_RIGHT
void AddSC_boss_kologarn()
@ EVENT_RESPAWN_RIGHT_ARM
@ EVENT_INSTALL_ACCESSORIES
void PreventDefaultAction()
AuraApplication const * GetTargetApplication() const
HookList< EffectApplyHandler > AfterEffectRemove
WorldObject * GetOwner() const
HookList< EffectApplyHandler > OnEffectRemove
InstanceScript *const instance
void JustEngagedWith(Unit *who) override
void JustSummoned(Creature *summon) override
void DoZoneInCombat(Creature *creature=nullptr)
void SetReactState(ReactStates st)
void DespawnOrUnsummon(Milliseconds timeToDespawn=0s, Seconds forceRespawnTime=0s)
void SetCorpseDelay(uint32 delay, bool ignoreCorpseDecayRatio=false)
void CancelEvent(EventId eventId)
void ScheduleEvent(EventId eventId, Milliseconds time, GroupIndex group=0u, PhaseIndex phase=0u)
virtual ObjectGuid GetGuidData(uint32 type) const override
EncounterState GetBossState(uint32 id) const
void DoStartTimedAchievement(AchievementCriteriaTimedTypes type, uint32 entry)
Difficulty GetDifficulty() const
void MoveChase(Unit *target, Optional< ChaseRange > dist={}, Optional< ChaseAngle > angle={})
void MoveFall(uint32 id=0)
static ObjectGuid const Empty
static Creature * ToCreature(Object *o)
void UpdateObjectVisibility(bool forced=true) override
Player * GetHitPlayer() const
void PreventHitDefaultEffect(SpellEffIndex effIndex)
Unit * GetHitUnit() const
int32 GetEffectValue() const
SpellEffectInfo const & GetEffectInfo() const
HookList< EffectHandler > OnEffectHitTarget
SpellInfo const * GetSpellInfo() const
HookList< ObjectAreaTargetSelectHandler > OnObjectAreaTargetSelect
StoneGripTargetSelector(Creature *me, Unit const *victim)
bool operator()(WorldObject *target)
void Summon(Creature const *summon)
uint32 GetThreatListPlayerCount(bool includeOffline=false) const
void DoMeleeAttackIfReady()
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)
bool IsWithinMeleeRange(Unit const *obj) const
Vehicle * GetVehicle() const
void RemoveAura(AuraApplicationMap::iterator &i, AuraRemoveMode mode=AURA_REMOVE_BY_DEFAULT)
ThreatManager & GetThreatManager()
void SetControlled(bool apply, UnitState state)
MotionMaster * GetMotionMaster()
void _ExitVehicle(Position const *exitPosition=nullptr)
bool Attack(Unit *victim, bool meleeAttack)
void RemoveAurasDueToSpell(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, uint8 reqEffMask=0, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
bool HasUnitState(const uint32 f) const
void SetUnitFlag(UnitFlags flags)
Vehicle * GetVehicleKit() const
void RemoveUnitFlag(UnitFlags flags)
virtual void ExitVehicle(Position const *exitPosition=nullptr)
void RemovePendingEventsForPassenger(Unit *passenger)
InstanceScript * GetInstanceScript() const
SpellCastResult CastSpell(CastSpellTargetArg const &targets, uint32 spellId, CastSpellExtraArgs const &args={ })
void DestroyForNearbyPlayers()
Creature * FindNearestCreature(uint32 entry, float range, bool alive=true) const
CreatureAI * GetAI(Creature *creature) const override
PrepareSpellScript(spell_kologarn_stone_shout_SpellScript)
void FilterTargets(std::list< WorldObject * > &targets)
spell_kologarn_stone_shout()
SpellScript * GetSpellScript() const override
void HandleForceCast(SpellEffIndex effIndex)
PrepareSpellScript(spell_kologarn_summon_focused_eyebeam_SpellScript)
spell_kologarn_summon_focused_eyebeam()
SpellScript * GetSpellScript() const override
PrepareSpellScript(spell_ulduar_cancel_stone_gripSpellScript)
void HandleScript(SpellEffIndex)
SpellScript * GetSpellScript() const override
spell_ulduar_cancel_stone_grip()
void HandleScript(SpellEffIndex)
PrepareSpellScript(spell_ulduar_rubble_summonSpellScript)
SpellScript * GetSpellScript() const override
spell_ulduar_rubble_summon()
PrepareSpellScript(spell_ulduar_squeezed_lifeless_SpellScript)
void HandleInstaKill(SpellEffIndex)
SpellScript * GetSpellScript() const override
spell_ulduar_squeezed_lifeless()
PrepareAuraScript(spell_ulduar_stone_grip_AuraScript)
void OnRemoveStun(AuraEffect const *aurEff, AuraEffectHandleModes)
void OnRemoveVehicle(AuraEffect const *, AuraEffectHandleModes)
void OnRemove(AuraEffect const *, AuraEffectHandleModes)
PrepareAuraScript(spell_ulduar_stone_grip_absorb_AuraScript)
AuraScript * GetAuraScript() const override
spell_ulduar_stone_grip_absorb()
PrepareSpellScript(spell_ulduar_stone_grip_cast_target_SpellScript)
void FillTargetsSubsequential(std::list< WorldObject * > &unitList)
void FilterTargetsInitial(std::list< WorldObject * > &unitList)
std::list< WorldObject * > _unitList
SpellScript * GetSpellScript() const override
spell_ulduar_stone_grip_cast_target()
AuraScript * GetAuraScript() const override
spell_ulduar_stone_grip()
TC_GAME_API Unit * GetUnit(WorldObject const &, ObjectGuid const &guid)
void SetOrientation(float orientation)
void GetPosition(float &x, float &y) const
void Relocate(float x, float y)
void SetCombatMovement(bool allowMovement)
void JustSummoned(Creature *summon) override
void KilledUnit(Unit *who) override
void PassengerBoarded(Unit *who, int8, bool apply) override
== Fields =======================================
void JustDied(Unit *) override
boss_kologarnAI(Creature *creature)
void UpdateAI(uint32 diff) override
void JustEngagedWith(Unit *who) override
@ NPC_FOCUSED_EYEBEAM_RIGHT