51 if (!thornguardIronclaw)
68 if (!thornguardIronclaw)
85 hitUnit->DespawnOrUnsummon(2s);
143 familiar->GetMotionMaster()->MovePath(data.
PathID,
false);
148 for (
uint8 i = 0; i < 2; i++)
#define RegisterCreatureAI(ai_name)
#define RegisterAreaTriggerAI(ai_name)
#define RegisterSpellScript(spell_script)
#define RegisterConversationAI(ai_name)
@ SPELL_EFFECT_SCRIPT_EFFECT
@ TRIGGERED_IGNORE_CAST_IN_PROGRESS
Will not check if a current cast is in progress.
@ TRIGGERED_IGNORE_CAST_TIME
Will always be instantly cast.
#define SpellEffectFn(F, I, N)
ObjectGuid const & GetGUID() const
Conversation *const conversation
void AddActor(int32 actorId, uint32 actorIdx, ObjectGuid const &actorGuid)
LocaleConstant GetPrivateObjectOwnerLocale() const
Milliseconds GetLastLineEndTime(LocaleConstant locale) const
Creature * GetActorCreature(uint32 actorIdx) const
void SetReactState(ReactStates st)
void DespawnOrUnsummon(Milliseconds timeToDespawn=0s, Seconds forceRespawnTime=0s)
void SetImmuneToAll(bool apply) override
void AddEvent(BasicEvent *event, Milliseconds e_time, bool set_addtime=true)
Creature * GetHitCreature() const
HookList< EffectHandler > OnEffectHitTarget
SpellCastResult DoCastSelf(uint32 spellId, CastSpellExtraArgs const &args={})
MotionMaster * GetMotionMaster()
void KillSelf(bool durabilityLoss=true, bool skipSettingDeathState=false)
Creature * FindNearestCreatureWithOptions(float range, FindCreatureOptions const &options) 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)
Position GetFirstCollisionPosition(float dist, float angle)
conversation_drustvar_really_big_problem_complete(Conversation *conversation)
void OnCreate(Unit *creator) override
void HandleHitTarget(SpellEffIndex) const
auto SelectRandomContainerElement(C const &container) -> std::add_const_t< decltype(*std::ranges::begin(container))> &
at_drustvar_timbered_strand_shoot_wickerman(AreaTrigger *areatrigger)
void OnUnitEnter(Unit *unit) override
void SpellHit(WorldObject *, SpellInfo const *spellInfo) override
void JustDied(Unit *) override
void JustAppeared() override
npc_drustvar_charging_familiar(Creature *creature)
npc_drustvar_shoot_wickerman_controller(Creature *creature)
void SpawnChargingFamiliar()
void JustAppeared() override
void DoAction(int32 param) override
@ ACTION_SPAWN_CHARGING_FAMILIAR
@ SPELL_DRUSTVAR_SHADOW_DISSOLVE_IN
@ NPC_DRUSTVAR_CHARGING_FAMILIAR
@ SPELL_DRUSTVAR_SHOOT_WICKERMAN
@ PATH_CHARGING_FAMILIAR_PATH
@ NPC_FLETCHERS_HOLLOW_CONSCRIPT
ChargingFamiliarData ChargingFamiliarDatas[]
@ NPC_SUMMONED_THORNGUARD_IRONCLAW
@ SPELL_DISMISS_TRADEWIND
@ CONVO_ACTOR_THORNGUARD_IRONCLAW
void AddSC_zone_drustvar()