68 for (
GroupReference* itr = group->GetFirstMember(); itr !=
nullptr; itr = itr->next())
70 Player* pGroupie = itr->GetSource();
71 if (!pGroupie || !pGroupie->
IsInMap(player))
92 return GetStratholmeAI<go_gauntlet_gateAI>(go);
121 return GetStratholmeAI<npc_restless_soulAI>(creature);
215 return GetStratholmeAI<npc_spectral_ghostly_citizenAI>(creature);
255 for (
uint32 i = 1; i <= 4; ++i)
258 if (
urand(1, i) == 1)
@ TEMPSUMMON_TIMED_DESPAWN
@ QUEST_STATUS_INCOMPLETE
int32 irand(int32 min, int32 max)
uint32 urand(uint32 min, uint32 max)
bool roll_chance_i(int chance)
#define RegisterSpellScript(spell_script)
@ SPELL_EFFECT_SCRIPT_EFFECT
@ TARGET_UNIT_SRC_AREA_ENTRY
#define SpellEffectFn(F, I, N)
#define SpellObjectAreaTargetSelectFn(F, I, N)
#define AuraEffectPeriodicFn(F, I, N)
#define AuraEffectUpdatePeriodicFn(F, I, N)
#define AuraEffectCalcPeriodicFn(F, I, N)
void CalculatePeriodic(Unit *caster, bool resetPeriodicTimer=true, bool load=false)
HookList< EffectCalcPeriodicHandler > DoEffectCalcPeriodic
HookList< EffectPeriodicHandler > OnEffectPeriodic
HookList< EffectUpdatePeriodicHandler > OnEffectUpdatePeriodic
Creature * DoSummon(uint32 entry, Position const &pos, Milliseconds despawnTime=30s, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN)
virtual void EnterEvadeMode(EvadeReason why=EVADE_REASON_OTHER)
void MoveFollow(Unit *target, float dist, ChaseAngle angle, MovementSlot slot=MOTION_SLOT_ACTIVE)
static ObjectGuid GetGUID(Object const *o)
static Player * ToPlayer(Object *o)
QuestStatus GetQuestStatus(uint32 quest_id) const
Unit * GetHitUnit() const
HookList< EffectHandler > OnEffectHitTarget
HookList< ObjectAreaTargetSelectHandler > OnObjectAreaTargetSelect
void DoMeleeAttackIfReady()
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 KillSelf(bool durabilityLoss=true)
MotionMaster * GetMotionMaster()
bool HasAura(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, ObjectGuid itemCasterGUID=ObjectGuid::Empty, uint8 reqEffMask=0) const
void HandleEmoteCommand(Emote emoteId)
SpellCastResult CastSpell(CastSpellTargetArg const &targets, uint32 spellId, CastSpellExtraArgs const &args={ })
TempSummon * SummonCreature(uint32 entry, Position const &pos, TempSummonType despawnType=TEMPSUMMON_MANUAL_DESPAWN, Milliseconds despawnTime=0s, uint32 vehId=0, uint32 spellId=0, ObjectGuid privateObjectOwner=ObjectGuid::Empty)
bool IsWithinDistInMap(WorldObject const *obj, float dist2compare, bool is3D=true, bool incOwnRadius=true, bool incTargetRadius=true) const
bool IsInMap(WorldObject const *obj) const
virtual uint32 GetData(uint32) const
virtual void SetData(uint32, uint32)
static bool ValidateSpellInfo(std::initializer_list< uint32 > spellIds)
GameObjectAI * GetAI(GameObject *go) const override
CreatureAI * GetAI(Creature *creature) const override
CreatureAI * GetAI(Creature *creature) const override
npc_spectral_ghostly_citizen()
void CalcPeriodic(AuraEffect const *, bool &isPeriodic, int32 &litude)
void HandleUpdatePeriodic(AuraEffect *aurEff)
PrepareAuraScript(spell_stratholme_haunting_phantoms)
void HandleDummyTick(AuraEffect const *)
bool Validate(SpellInfo const *) override
void HandleScript(SpellEffIndex)
void FilterTargets(std::list< WorldObject * > &targets)
PrepareSpellScript(spell_ysida_saved_credit)
TC_GAME_API Unit * GetUnit(WorldObject const &, ObjectGuid const &guid)
TC_GAME_API Player * GetPlayer(Map const *, ObjectGuid const &guid)
@ SPELL_SUMMON_WRATH_PHANTOM
@ SPELL_SUMMON_SPITEFUL_PHANTOM
@ SPELL_DEBILITATING_TOUCH
float GetPositionZ() const
float GetOrientation() const
float GetPositionX() const
float GetPositionY() const
InstanceScript * instance
go_gauntlet_gateAI(GameObject *go)
bool OnGossipHello(Player *player) override
void JustEngagedWith(Unit *) override
npc_restless_soulAI(Creature *creature)
void SpellHit(WorldObject *caster, SpellInfo const *spellInfo) override
void UpdateAI(uint32 diff) override
void JustDied(Unit *) override
void JustSummoned(Creature *summoned) override
void UpdateAI(uint32 diff) override
void SpellHit(WorldObject *, SpellInfo const *spellInfo) override
void ReceiveEmote(Player *player, uint32 emote) override
void JustDied(Unit *) override
void JustEngagedWith(Unit *) override
npc_spectral_ghostly_citizenAI(Creature *creature)