131 { 1704.18f, 927.999f, 57.888f },
132 { 1614.355f, 846.9694f, 119.0971f }
181 std::vector<GameObject*> portals;
219 sathrovar->SetInCombatWith(kalecgosHuman);
220 kalecgosHuman->SetInCombatWith(sathrovar);
469 kalecgos->AI()->EnterEvadeMode(why);
497 if (kalecgosHuman->GetGUID() == target->
GetGUID())
595 return GetSunwellPlateauAI<go_kalecgos_spectral_riftAI>(go);
std::chrono::seconds Seconds
Seconds shorthand typedef.
@ ENCOUNTER_FRAME_DISENGAGE
@ TEMPSUMMON_CORPSE_TIMED_DESPAWN
uint32 urand(uint32 min, uint32 max)
bool roll_chance_i(int chance)
#define RegisterSpellScript(spell_script)
@ TARGET_UNIT_SRC_AREA_ENEMY
@ SPELL_EFFECT_SCRIPT_EFFECT
@ AURA_EFFECT_HANDLE_REAL
@ SPELL_AURA_PERIODIC_DAMAGE
@ SPELL_AURA_MOD_INVISIBILITY_DETECT
@ TRIGGERED_FULL_MASK
Used when doing CastSpell with triggered == true.
#define SpellEffectFn(F, I, N)
#define SpellObjectAreaTargetSelectFn(F, I, N)
#define AuraEffectPeriodicFn(F, I, N)
#define AuraEffectUpdatePeriodicFn(F, I, N)
#define AuraEffectApplyFn(F, I, N, M)
#define AuraEffectRemoveFn(F, I, N, M)
Position const KalecgosSummonPos
void AddSC_boss_kalecgos()
uint32 const WildMagicSpells[6]
@ EVENT_CORRUPTION_STRIKE
@ SPELL_SPECTRAL_EXHAUSTION
@ SPELL_SPECTRAL_REALM_TRIGGER
@ SPELL_AGONY_CURSE_VISUAL_2
@ SPELL_SPECTRAL_BLAST_VISUAL
@ SPELL_CORRUPTION_STRIKE
@ SPELL_SPECTRAL_REALM_REACTION
@ SPELL_SPECTRAL_REALM_AURA
@ SPELL_AGONY_CURSE_VISUAL_1
@ SPELL_AGONY_CURSE_VISUAL_3
@ SPELL_SPECTRAL_REALM_TELEPORT
@ SPELL_SPECTRAL_BLAST_EFFECT
uint32 GetTickNumber() const
void SetAmount(int32 amount)
AuraApplication const * GetTargetApplication() const
HookList< EffectApplyHandler > AfterEffectRemove
HookList< EffectPeriodicHandler > OnEffectPeriodic
HookList< EffectApplyHandler > AfterEffectApply
HookList< EffectUpdatePeriodicHandler > OnEffectUpdatePeriodic
void Remove(AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
InstanceScript *const instance
void JustEngagedWith(Unit *who) override
void _DespawnAtEvade(Seconds delayToRespawn=30s, Creature *who=nullptr)
void Talk(uint8 id, WorldObject const *whisperTarget=nullptr)
bool _EnterEvadeMode(EvadeReason why=EvadeReason::Other)
void SetReactState(ReactStates st)
void SetRegenerateHealth(bool value)
CurseAgonySelector(Unit *source)
bool operator()(WorldObject *target) const
void Repeat(Milliseconds time)
void ScheduleEvent(uint32 eventId, Milliseconds time, uint32 group=0, uint8 phase=0)
bool IsInPhase(uint8 phase) const
void SetPhase(uint8 phase)
void DoRemoveAurasDueToSpellOnPlayers(uint32 spell, bool includePets=false, bool includeControlled=false)
Creature * GetCreature(uint32 type)
void SendEncounterUnit(EncounterFrameType type, Unit const *unit, Optional< int32 > param1={}, Optional< int32 > param2={})
void MovePoint(uint32 id, Position const &pos, bool generatePath=true, Optional< float > finalOrient={}, Optional< float > speed={}, MovementWalkRunSpeedSelectionMode speedSelectionMode=MovementWalkRunSpeedSelectionMode::Default, Optional< float > closeEnoughDistance={})
static Unit * ToUnit(Object *o)
static ObjectGuid GetGUID(Object const *o)
SpectralBlastSelector(Unit *source)
bool operator()(WorldObject *target) const
int32 CalcValue(WorldObject const *caster=nullptr, int32 const *basePoints=nullptr, Unit const *target=nullptr, float *variance=nullptr, uint32 castItemId=0, int32 itemLevel=-1) const
SpellEffectInfo const & GetEffect(SpellEffIndex index) const
static bool ValidateSpellInfo(std::initializer_list< uint32 > spellIds)
static bool ValidateSpellEffect(std::initializer_list< std::pair< uint32, SpellEffIndex > > effects)
Unit * GetHitUnit() const
SpellEffectInfo const & GetEffectInfo() const
HookList< EffectHandler > OnEffectHitTarget
HookList< ObjectAreaTargetSelectHandler > OnObjectAreaTargetSelect
SpellCastResult DoCastSelf(uint32 spellId, CastSpellExtraArgs const &args={})
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 DoCastAOE(uint32 spellId, CastSpellExtraArgs const &args={})
SpellCastResult DoCast(uint32 spellId)
void SetFaction(uint32 faction) override
void InterruptNonMeleeSpells(bool withDelayed, uint32 spellid=0, bool withInstant=true)
MotionMaster * GetMotionMaster()
bool SetDisableGravity(bool disable, bool updateAnimTier=true)
bool HasUnitState(const uint32 f) const
void RemoveAllAttackers()
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)
void RemoveAurasDueToSpell(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, uint32 reqEffMask=0, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
static void Kill(Unit *attacker, Unit *victim, bool durabilityLoss=true, bool skipSettingDeathState=false)
void GetGameObjectListWithEntryInGrid(Container &gameObjectContainer, uint32 entry, float maxSearchRange=250.0f) const
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)
go_kalecgos_spectral_rift()
GameObjectAI * GetAI(GameObject *go) const override
void OnRemove(AuraEffect const *, AuraEffectHandleModes)
void HandleEffectPeriodicUpdate(AuraEffect *aurEff)
void OnApply(AuraEffect const *, AuraEffectHandleModes)
bool Validate(SpellInfo const *) override
void OnPeriodic(AuraEffect const *aurEff)
void FilterTargets(std::list< WorldObject * > &targets)
void HandleDummy(SpellEffIndex)
bool Validate(SpellInfo const *) override
void OnRemove(AuraEffect const *, AuraEffectHandleModes)
bool Validate(SpellInfo const *) override
bool Validate(SpellInfo const *) override
void HandleDummy(SpellEffIndex)
bool Validate(SpellInfo const *spellInfo) override
void HandleDummy(SpellEffIndex)
bool operator()(Unit const *target) const
bool HealthBelowPct(uint32 pct) const
InstanceScript * _instance
void DamageTaken(Unit *who, uint32 &damage, DamageEffectType, SpellInfo const *) override
void UpdateAI(uint32 diff) override
void JustDied(Unit *) override
boss_kalecgos_human(Creature *creature)
void UpdateAI(uint32 diff) override
void KilledUnit(Unit *who) override
void DoAction(int32 action) override
boss_kalecgos(Creature *creature)
void JustEngagedWith(Unit *who) override
void EnterEvadeMode(EvadeReason) override
void DamageTaken(Unit *who, uint32 &damage, DamageEffectType, SpellInfo const *) override
void MovementInform(uint32 type, uint32 id) override
void DamageTaken(Unit *who, uint32 &damage, DamageEffectType, SpellInfo const *) override
void KilledUnit(Unit *target) override
void ExecuteEvent(uint32 eventId) override
void EnterEvadeMode(EvadeReason why) override
boss_sathrovarr(Creature *creature)
void JustEngagedWith(Unit *who) override
void JustDied(Unit *) override
void SpellHit(WorldObject *caster, SpellInfo const *spellInfo) override
bool OnGossipHello(Player *player) override
go_kalecgos_spectral_riftAI(GameObject *go)
#define RegisterSunwellPlateauCreatureAI(ai_name)