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)
@ TARGET_UNIT_SRC_AREA_ENTRY
@ SPELL_EFFECT_SCRIPT_EFFECT
#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
virtual void EnterEvadeMode(EvadeReason why=EvadeReason::Other)
Creature * DoSummon(uint32 entry, Position const &pos, Milliseconds despawnTime=30s, TempSummonType summonType=TEMPSUMMON_CORPSE_TIMED_DESPAWN)
void MoveFollow(Unit *target, float dist, ChaseAngle angle, Optional< Milliseconds > duration={}, MovementSlot slot=MOTION_SLOT_ACTIVE)
static ObjectGuid GetGUID(Object const *o)
static Player * ToPlayer(Object *o)
QuestStatus GetQuestStatus(uint32 quest_id) const
Group * GetGroup(Optional< uint8 > partyIndex)
static bool ValidateSpellInfo(std::initializer_list< uint32 > spellIds)
Unit * GetHitUnit() const
HookList< EffectHandler > OnEffectHitTarget
HookList< ObjectAreaTargetSelectHandler > OnObjectAreaTargetSelect
Unit * SelectTarget(SelectTargetMethod targetType, uint32 offset=0, float dist=0.0f, bool playerOnly=false, bool withTank=true, int32 aura=0)
SpellCastResult DoCast(uint32 spellId)
MotionMaster * GetMotionMaster()
bool HasAura(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, ObjectGuid itemCasterGUID=ObjectGuid::Empty, uint32 reqEffMask=0) const
void HandleEmoteCommand(Emote emoteId, Player *target=nullptr, Trinity::IteratorPair< int32 const * > spellVisualKitIds={}, int32 sequenceVariation=0)
void KillSelf(bool durabilityLoss=true, bool skipSettingDeathState=false)
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)
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)
void HandleDummyTick(AuraEffect const *)
bool Validate(SpellInfo const *) override
void HandleScript(SpellEffIndex)
void FilterTargets(std::list< WorldObject * > &targets)
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
constexpr float GetPositionX() const
constexpr float GetPositionY() const
constexpr float GetOrientation() const
constexpr float GetPositionZ() 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)