109 checkDistanceContext.
Repeat(1s);
110 }).Schedule(20s, [
this](
TaskContext granadeContext)
117 granadeContext.
Repeat(20s, 30s);
@ QUEST_STATUS_INCOMPLETE
#define RegisterCreatureAI(ai_name)
void SendGossipMenuFor(Player *player, uint32 npcTextID, ObjectGuid const &guid)
void AddGossipItemFor(Player *player, GossipOptionIcon icon, std::string const &text, uint32 sender, uint32 action)
void InitGossipMenuFor(Player *player, uint32 menuId)
void CloseGossipMenuFor(Player *player)
@ UNIT_FLAG_UNINTERACTIBLE
void DespawnOrUnsummon(Milliseconds timeToDespawn=0s, Seconds forceRespawnTime=0s)
void MovePath(uint32 pathId, bool repeatable)
static ObjectGuid GetGUID(Object const *o)
static Player * ToPlayer(Object *o)
QuestStatus GetQuestStatus(uint32 quest_id) const
uint32 GetGossipTextId(uint32 menuId, WorldObject *source)
TaskContext & Repeat(std::chrono::duration< _Rep, _Period > const &duration)
TaskContext & CancelAll()
Cancels all tasks from within the context.
TaskContext & Schedule(std::chrono::duration< _Rep, _Period > const &time, TaskScheduler::task_handler_t const &task)
TaskScheduler & Schedule(std::chrono::duration< _Rep, _Period > const &time, task_handler_t const &task)
TaskScheduler & Update(success_t const &callback=EmptyCallback)
SpellCastResult DoCastSelf(uint32 spellId, CastSpellExtraArgs const &args={})
SpellCastResult DoCast(uint32 spellId)
MotionMaster * GetMotionMaster()
void RemoveNpcFlag(NPCFlags flags)
void SetNpcFlag(NPCFlags flags)
void RemoveAurasDueToSpell(uint32 spellId, ObjectGuid casterGUID=ObjectGuid::Empty, uint8 reqEffMask=0, AuraRemoveMode removeMode=AURA_REMOVE_BY_DEFAULT)
void SetSpeedRate(UnitMoveType mtype, float rate)
void SetFacingTo(float ori, bool force=true, uint32 movementId=EVENT_FACE)
void SetUnitFlag(UnitFlags flags)
bool IsWithinDistInMap(WorldObject const *obj, float dist2compare, bool is3D=true, bool incOwnRadius=true, bool incTargetRadius=true) const
bool IsWithinDist(WorldObject const *obj, float dist2compare, bool is3D=true) const
TC_GAME_API Player * GetPlayer(Map const *, ObjectGuid const &guid)
float GetOrientation() const
void MoveInLineOfSight(Unit *who) override
npc_depth_charge(Creature *creature)
void IsSummonedBy(WorldObject *summoner) override
bool OnGossipSelect(Player *player, uint32, uint32) override
npc_rizzle_sprysprocket(Creature *creature)
void UpdateAI(uint32 diff) override
void WaypointPathEnded(uint32, uint32 pathId) override
bool OnGossipHello(Player *player) override
void WaypointStarted(uint32 waypointId, uint32 pathId) override
== Waypoints system =============================
@ SPELL_GIVE_SOUTHFURY_MOONSTONE
@ SPELL_RIZZLE_FROST_GRENADE
@ SPELL_PERIODIC_DEPTH_CHARGE
@ QUEST_CHASING_THE_MOONSTONE
@ GOSSIP_MENU_GET_MOONSTONE
@ SPELL_DEPTH_CHARGE_TRAP
@ GOSSIP_OPTION_GET_MOONSTONE