void MoveInLineOfSight(Unit* who) { if (!phase && who && who->GetDistance2d(me) < 10.0f) if (Player* player = who->ToPlayer()) if (player->GetQuestStatus(QUEST_THE_BRONZE_DRAGONSHRINE_ORACLE) == QUEST_STATUS_INCOMPLETE) { playerGUID = player->GetGUID(); if ((orphanGUID = getOrphanGUID(player, ORPHAN_ORACLE))) phase = 1; } }
void MoveInLineOfSight(Unit* who) { if (!phase && who && who->GetDistance2d(me) < 10.0f) if (Player* player = who->ToPlayer()) if (player->GetQuestStatus(QUEST_PLAYMATE_WOLVAR) == QUEST_STATUS_INCOMPLETE) { playerGUID = player->GetGUID(); if ((orphanGUID = getOrphanGUID(player, ORPHAN_WOLVAR))) phase = 1; } }
void MoveInLineOfSight(Unit* who) { if (who && who->GetDistance2d(me) < 10.0f) if (Player* player = who->ToPlayer()) if (player->GetQuestStatus(QUEST_HOME_OF_THE_BEAR_MEN) == QUEST_STATUS_INCOMPLETE) if (Creature* orphan = Creature::GetCreature(*me, getOrphanGUID(player, ORPHAN_WOLVAR))) { player->AreaExploredOrEventHappens(QUEST_HOME_OF_THE_BEAR_MEN); orphan->AI()->Talk(TEXT_WOLVAR_ORPHAN_10); } }
void MoveInLineOfSight(Unit* who) { if (!phase && who && who->GetDistance2d(me) < 10.0f) if (Player* player = who->ToPlayer()) { if (player->GetQuestStatus(QUEST_THE_DRAGON_QUEEN_ORACLE) == QUEST_STATUS_INCOMPLETE) { playerGUID = player->GetGUID(); orphanGUID = getOrphanGUID(player, ORPHAN_ORACLE); if (orphanGUID) phase = 1; } else if (player->GetQuestStatus(QUEST_THE_DRAGON_QUEEN_WOLVAR) == QUEST_STATUS_INCOMPLETE) { playerGUID = player->GetGUID(); orphanGUID = getOrphanGUID(player, ORPHAN_WOLVAR); if (orphanGUID) phase = 7; } } }
void MoveInLineOfSight(Unit* who) { if (!phase && who && who->GetDistance2d(me) < 10.0f) if (Player* player = who->ToPlayer()) if (player->GetQuestStatus(QUEST_MEETING_A_GREAT_ONE) == QUEST_STATUS_INCOMPLETE) { playerGUID = player->GetGUID(); orphanGUID = getOrphanGUID(player, ORPHAN_ORACLE); if (orphanGUID) phase = 1; } }
void MoveInLineOfSight(Unit* who) override { if (!phase && who && who->GetDistance2d(me) < 10.0f) if (Player* player = who->ToPlayer()) if (player->GetQuestStatus(QUEST_THE_BIGGEST_TREE_EVER) == QUEST_STATUS_INCOMPLETE) { playerGUID = player->GetGUID(); orphanGUID = getOrphanGUID(player, ORPHAN_ORACLE); if (!orphanGUID.IsEmpty()) phase = 1; } }
bool OnTrigger(Player* player, AreaTriggerEntry const* trigger) { if (player->isDead() || !player->HasAura(SPELL_ORPHAN_OUT)) return false; uint32 questId = 0; uint32 orphanId = 0; switch (trigger->id) { case AT_DOWN_AT_THE_DOCKS: questId = QUEST_DOWN_AT_THE_DOCKS; orphanId = ORPHAN_ORCISH; break; case AT_GATEWAY_TO_THE_FRONTIER: questId = QUEST_GATEWAY_TO_THE_FRONTIER; orphanId = ORPHAN_ORCISH; break; case AT_LORDAERON_THRONE_ROOM: questId = QUEST_LORDAERON_THRONE_ROOM; orphanId = ORPHAN_ORCISH; break; case AT_BOUGHT_OF_ETERNALS: questId = QUEST_BOUGHT_OF_ETERNALS; orphanId = ORPHAN_HUMAN; break; case AT_SPOOKY_LIGHTHOUSE: questId = QUEST_SPOOKY_LIGHTHOUSE; orphanId = ORPHAN_HUMAN; break; case AT_STONEWROUGHT_DAM: questId = QUEST_STONEWROUGHT_DAM; orphanId = ORPHAN_HUMAN; break; case AT_DARK_PORTAL: questId = player->GetTeam() == ALLIANCE ? QUEST_DARK_PORTAL_A : QUEST_DARK_PORTAL_H; orphanId = player->GetTeam() == ALLIANCE ? ORPHAN_DRAENEI : ORPHAN_BLOOD_ELF; break; } if (questId && orphanId && getOrphanGUID(player, orphanId) && player->GetQuestStatus(questId) == QUEST_STATUS_INCOMPLETE) player->AreaExploredOrEventHappens(questId); return true; }
void MoveInLineOfSight(Unit* who) { if (who && me->GetDistance2d(who) < 20.0f) if (Player* player = who->ToPlayer()) if (player->HasAura(SPELL_ORPHAN_OUT)) { uint32 questId = 0; uint32 orphanId = 0; switch (me->GetEntry()) { case NPC_CAVERNS_OF_TIME_CW_TRIGGER: questId = player->GetTeam() == ALLIANCE ? QUEST_TIME_TO_VISIT_THE_CAVERNS_A : QUEST_TIME_TO_VISIT_THE_CAVERNS_H; orphanId = player->GetTeam() == ALLIANCE ? ORPHAN_DRAENEI : ORPHAN_BLOOD_ELF; break; case NPC_EXODAR_01_CW_TRIGGER: questId = QUEST_THE_SEAT_OF_THE_NARUU; orphanId = ORPHAN_DRAENEI; break; case NPC_EXODAR_02_CW_TRIGGER: questId = QUEST_CALL_ON_THE_FARSEER; orphanId = ORPHAN_DRAENEI; break; case NPC_AERIS_LANDING_CW_TRIGGER: questId = QUEST_JHEEL_IS_AT_AERIS_LANDING; orphanId = ORPHAN_DRAENEI; break; case NPC_AUCHINDOUN_CW_TRIGGER: questId = QUEST_AUCHINDOUN_AND_THE_RING; orphanId = ORPHAN_DRAENEI; break; case NPC_SPOREGGAR_CW_TRIGGER: questId = QUEST_HCHUU_AND_THE_MUSHROOM_PEOPLE; orphanId = ORPHAN_BLOOD_ELF; break; case NPC_THRONE_OF_ELEMENTS_CW_TRIGGER: questId = QUEST_VISIT_THE_THRONE_OF_ELEMENTS; orphanId = ORPHAN_BLOOD_ELF; break; case NPC_SILVERMOON_01_CW_TRIGGER: if (player->GetQuestStatus(QUEST_NOW_WHEN_I_GROW_UP) == QUEST_STATUS_INCOMPLETE && getOrphanGUID(player, ORPHAN_BLOOD_ELF)) { player->AreaExploredOrEventHappens(QUEST_NOW_WHEN_I_GROW_UP); if (player->GetQuestStatus(QUEST_NOW_WHEN_I_GROW_UP) == QUEST_STATUS_COMPLETE) if (Creature* samuro = me->FindNearestCreature(25151, 20.0f)) { uint32 emote = 0; switch (urand(1, 5)) { case 1: emote = EMOTE_ONESHOT_WAVE; break; case 2: emote = EMOTE_ONESHOT_ROAR; break; case 3: emote = EMOTE_ONESHOT_FLEX; break; case 4: emote = EMOTE_ONESHOT_SALUTE; break; case 5: emote = EMOTE_ONESHOT_DANCE; break; } samuro->HandleEmoteCommand(emote); } } break; } if (questId && orphanId && getOrphanGUID(player, orphanId) && player->GetQuestStatus(questId) == QUEST_STATUS_INCOMPLETE) player->AreaExploredOrEventHappens(questId); } }