106 return !
object->isInFront(
caster, 2.5f) || !
object->IsWithinDist(
caster, 40.0f);
173 if (damage >=
me->GetHealth())
190 me->DisappearAndDie();
197 me->GetMotionMaster()->MovePoint(0, 746.87f, 665.87f, 411.75f);
206 me->InterruptNonMeleeSpells(
true);
210 if (target && target->IsAlive())
273 me->RemoveAllAuras();
285 if (pMemory->IsAlive())
286 pMemory->RemoveFromWorld();
297 if (damage >=
me->GetHealth())
314 me->DisappearAndDie();
321 me->GetMotionMaster()->MovePoint(0, 746.87f, 665.87f, 411.75f);
332 if (target && target->IsAlive())
345 if (target && target->IsAlive())
358 me->InterruptNonMeleeSpells(
true);
359 uint8 uiTarget = std::rand() % 1;
367 if (pMemory->IsAlive())
377 me->InterruptNonMeleeSpells(
true);
430 if (target && target->IsAlive())
446 if (target && target->IsAlive())
458 if (
Unit* summoner = summ->GetSummoner())
459 if (summoner->IsAlive())
460 summoner->GetAI()->SetData(1, 0);
497 me->SetFacingTo(5.81f);
500 me->SetFacingTo(4.60f);
503 me->SetFacingTo(2.79f);
511 switch (
me->GetEntry())
557 Start(
false,
true, 0);
625 for (
uint8 i = 0; i < 25; ++i)
638 targets.push_back(target);
@ SPELL_EFFECT_SCRIPT_EFFECT
@ TARGET_UNIT_SRC_AREA_ENEMY
#define SpellEffectFn(F, I, N)
#define SpellObjectAreaTargetSelectFn(F, I, N)
#define SF_UNARY_FUNCTION
@ UNIT_FLAG_NON_ATTACKABLE
@ SPELL_WAKING_NIGHTMARE_H
@ SPELL_EADRIC_ACHIEVEMENT
@ SPELL_MEMORY_KALITHRESH
@ SPELL_MEMORY_THUNDERAAN
@ SPELL_MEMORY_ARCHIMONDE
@ SPELL_MEMORY_MALCHEZAAR
@ SPELL_MEMORY_CHROMAGGUS
void AddSC_boss_argent_challenge()
uint32 const memorySpellId[25]
virtual void EnterEvadeMode()
void SetReactState(ReactStates st)
CreatureScript(const char *name)
void SetFlag(uint16 index, uint32 newFlag)
bool operator()(WorldObject *object)
OrientationCheck(Unit *_caster)
HookList< EffectHandler > OnEffectHitTarget
HookList< ObjectAreaTargetSelectHandler > OnObjectAreaTargetSelect
SpellScriptLoader(const char *name)
void DoMeleeAttackIfReady()
void DoCast(uint32 spellId)
Unit * SelectTarget(SelectAggroTarget targetType, uint32 position=0, float dist=0.0f, bool playerOnly=false, int32 aura=0)
void DoCastAOE(uint32 spellId, bool triggered=false)
void CastSpell(SpellCastTargets const &targets, SpellInfo const *spellInfo, CustomSpellValues const *value, TriggerCastFlags triggerFlags=TRIGGERED_NONE, Item *castItem=NULL, AuraEffect const *triggeredByAura=NULL, uint64 originalCaster=0)
static Creature * GetCreature(WorldObject &object, uint64 guid)
InstanceScript * GetInstanceScript()
CreatureAI * GetAI(Creature *creature) const OVERRIDE
CreatureAI * GetAI(Creature *creature) const OVERRIDE
CreatureAI * GetAI(Creature *creature) const OVERRIDE
CreatureAI * GetAI(Creature *creature) const OVERRIDE
void FilterTargets(std::list< WorldObject * > &unitList)
PrepareSpellScript(spell_eadric_radiance_SpellScript)
SpellScript * GetSpellScript() const OVERRIDE
PrepareSpellScript(spell_paletress_summon_memory_SpellScript)
bool Validate(SpellInfo const *) OVERRIDE
void FilterTargets(std::list< WorldObject * > &targets)
void HandleScript(SpellEffIndex)
spell_paletress_summon_memory()
SpellScript * GetSpellScript() const OVERRIDE
C::value_type const & SelectRandomContainerElement(C const &container)
bool HealthAbovePct(uint32 pct) const
ScriptedAI(Creature *creature)
void MovementInform(uint32 MovementType, uint32) OVERRIDE
InstanceScript * instance
void DamageTaken(Unit *, uint32 &damage) OVERRIDE
void UpdateAI(uint32 uiDiff) OVERRIDE
== Triggered Actions Requested ==================
boss_eadricAI(Creature *creature)
uint32 uiHammerJusticeTimer
boss_paletressAI(Creature *creature)
InstanceScript * instance
void SetData(uint32 uiId, uint32) OVERRIDE
void JustSummoned(Creature *summon) OVERRIDE
void MovementInform(uint32 MovementType, uint32 Point) OVERRIDE
void UpdateAI(uint32 uiDiff) OVERRIDE
== Triggered Actions Requested ==================
void DamageTaken(Unit *, uint32 &damage) OVERRIDE
void UpdateAI(uint32 uiDiff) OVERRIDE
== Triggered Actions Requested ==================
void WaypointReached(uint32 waypointId) OVERRIDE
npc_argent_soldierAI(Creature *creature)
void JustDied(Unit *) OVERRIDE
void SetData(uint32 uiType, uint32) OVERRIDE
InstanceScript * instance
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
npc_escortAI(Creature *creature)
void SetDespawnAtEnd(bool despawn)
void Start(bool isActiveAttacker=true, bool run=false, uint64 playerGUID=0, Quest const *quest=NULL, bool instantRespawn=false, bool canLoopPath=false, bool resetWaypoints=true)
void AddWaypoint(uint32 id, float x, float y, float z, uint32 waitTime=0)
void JustDied(Unit *) OVERRIDE
void UpdateAI(uint32 uiDiff) OVERRIDE
== Triggered Actions Requested ==================
npc_memoryAI(Creature *creature)
@ DATA_ARGENT_SOLDIER_DEFEATED
@ BOSS_ARGENT_CHALLENGE_P
@ BOSS_ARGENT_CHALLENGE_E