190 if (
UnitAI* ai = creatureTarget->GetAI())
214 transportGuid = transport->GetTransportGUID();
232 if (target->m_movementInfo.GetFallTime() > 2000 && !target->GetTransport())
277 GetSpell()->m_targets.GetSpeedXY(),
GetSpell()->m_targets.GetSpeedZ()), 2500ms);
330 caster->
CastSpell(caster, _creditSpell,
true);
348 battleground->TeleportPlayerToExploitLocation(player);
std::optional< T > Optional
Optional helper class to wrap optional values within.
#define RegisterCreatureAI(ai_name)
#define RegisterGameObjectAI(ai_name)
#define RegisterSpellScript(spell_script)
@ SPELL_EFFECT_SCRIPT_EFFECT
@ SPELL_EFFECT_GAMEOBJECT_DAMAGE
@ AURA_EFFECT_HANDLE_REAL
@ SPELL_AURA_PERIODIC_TRIGGER_SPELL
#define SpellEffectFn(F, I, N)
#define AuraEffectPeriodicFn(F, I, N)
#define AuraEffectRemoveFn(F, I, N, M)
void PreventDefaultAction()
HookList< EffectPeriodicHandler > OnEffectPeriodic
HookList< EffectApplyHandler > OnEffectRemove
void DespawnOrUnsummon(Milliseconds timeToDespawn=0s, Seconds forceRespawnTime=0s)
void ScheduleEvent(uint32 eventId, Milliseconds time, uint32 group=0, uint8 phase=0)
void AddEventAtOffset(BasicEvent *event, Milliseconds offset)
GOState GetGoState() const
bool HasFlag(GameObjectFlags flags) const
bool TeleportTo(uint32 mapid, float x, float y, float z, float orientation, TeleportToOptions options=TELE_TO_NONE, Optional< uint32 > instanceId={}, uint32 teleportSpellId=0)
Battleground * GetBattleground() const
static bool ValidateSpellInfo(std::initializer_list< uint32 > spellIds)
Creature * GetHitCreature() const
HookList< HitHandler > AfterHit
Unit * GetHitUnit() const
HookList< EffectHandler > OnEffectHitTarget
WorldLocation const * GetExplTargetDest() const
SpellInfo const * GetSpellInfo() const
Unit * GetOriginalCaster() const
GameObject * GetHitGObj() const
StartLaunchEvent(Unit *target, Position const &pos, float speedXY, float speedZ)
bool Execute(uint64, uint32) override
TaskScheduler & Schedule(duration_t time, task_handler_t task)
TaskScheduler & Update()
Update the scheduler to the current time.
SpellCastResult DoCastSelf(uint32 spellId, CastSpellExtraArgs const &args={})
SpellCastResult DoCast(uint32 spellId)
bool CreateVehicleKit(uint32 id, uint32 creatureEntry, bool loading=false)
void KnockbackFrom(Position const &origin, float speedXY, float speedZ, float angle=M_PI, Movement::SpellEffectExtraData const *spellEffectExtraData=nullptr)
void RemoveVehicleKit(bool onRemoveFromWorld=false)
Vehicle * GetVehicleKit() const
virtual void ExitVehicle(Position const *exitPosition=nullptr)
void InstallAllAccessories(bool evading)
SpellCastResult CastSpell(CastSpellTargetArg const &targets, uint32 spellId, CastSpellExtraArgs const &args={ })
ZoneScript * GetZoneScript() const
static constexpr uint32 AT_ALLIANCE_KEEP
bool OnTrigger(Player *player, AreaTriggerEntry const *trigger) override
static constexpr uint32 AT_HORDE_KEEP
bool OnExit(Player *player, AreaTriggerEntry const *) override
void HandleRemove(AuraEffect const *, AuraEffectHandleModes) const
void HandleScript(SpellEffIndex)
void HandleTriggerSpell(AuraEffect const *)
void HandleAchievementCredit(SpellEffIndex)
bool Validate(SpellInfo const *) override
void AddSC_isle_of_conquest()
@ SPELL_HUGE_SEAFORIUM_BLAST
@ SPELL_A_BOMB_INATION_CREDIT
@ SPELL_A_BOMB_INABLE_CREDIT
@ ACTION_IOC_INTERACT_CAPTURABLE_OBJECT
@ ACTION_IOC_CAPTURE_CAPTURABLE_OBJECT
@ SPELL_LAUNCH_NO_FALLING_DAMAGE
@ SPELL_DRIVING_CREDIT_GLAIVE
@ SPELL_DRIVING_CREDIT_SIEGE
@ SPELL_DRIVING_CREDIT_DEMOLISHER
@ SPELL_BACK_DOOR_JOB_ACHIEVEMENT
@ SPELL_DRIVING_CREDIT_CATAPULT
@ SPELL_TELEPORT_VISUAL_ONLY
@ BG_IC_GATE_FRONT_A_WS_CLOSED
@ BG_IC_GATE_FRONT_H_WS_CLOSED
@ BG_IC_GATE_EAST_H_WS_CLOSED
@ BG_IC_GATE_WEST_H_WS_CLOSED
@ BG_IC_GATE_WEST_A_WS_CLOSED
@ BG_IC_GATE_EAST_A_WS_CLOSED
TC_GAME_API int32 GetValue(int32 worldStateId, Map const *map)
go_ioc_capturable_object(GameObject *go)
bool OnGossipHello(Player *player) override
go_ioc_contested_object(GameObject *go)
void UpdateAI(uint32 diff) override
void PassengerBoarded(Unit *who, int8, bool apply) override
== Fields =======================================
npc_four_car_garage(Creature *creature)
void UpdateAI(uint32 diff) override
npc_ioc_gunship_captain(Creature *creature)
void JustAppeared() override
static constexpr int32 ACTION_REPAIRED
void DoAction(int32 actionId) override
static constexpr uint32 SPELL_DAMAGED
npc_ioc_siege_engine(Creature *creature)
void JustAppeared() override
static constexpr uint32 VEHICLE_REC_ID