diff options
author | offl <offl@users.noreply.github.com> | 2020-09-12 22:18:32 +0300 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2022-02-05 23:45:58 +0100 |
commit | bb468708e693bc53c4db667b7920a90e186f07d7 (patch) | |
tree | d9f788a2ed4de9e8773a3a7aca086a9484b429b6 /src | |
parent | 378691aaa286822ee20e0428d278f2bca6e7438e (diff) |
DB/Quest: Convert & update Homing Robot chickens to SAI
Closes #25239
(cherry picked from commit 8c303e4f979cff5c34f228054cea4e81bb70c11c)
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/EasternKingdoms/zone_hinterlands.cpp | 103 | ||||
-rw-r--r-- | src/server/scripts/Kalimdor/zone_tanaris.cpp | 92 |
2 files changed, 2 insertions, 193 deletions
diff --git a/src/server/scripts/EasternKingdoms/zone_hinterlands.cpp b/src/server/scripts/EasternKingdoms/zone_hinterlands.cpp index 1005b361b95..153daabd615 100644 --- a/src/server/scripts/EasternKingdoms/zone_hinterlands.cpp +++ b/src/server/scripts/EasternKingdoms/zone_hinterlands.cpp @@ -18,12 +18,11 @@ /* ScriptData SDName: Hinterlands SD%Complete: 100 -SDComment: Quest support: 836 +SDComment: Quest support: SDCategory: The Hinterlands EndScriptData */ /* ContentData -npc_oox09hl EndContentData */ #include "ScriptMgr.h" @@ -32,105 +31,6 @@ EndContentData */ #include "ScriptedEscortAI.h" /*###### -## npc_oox09hl -######*/ - -enum eOOX -{ - SAY_OOX_START = 0, - SAY_OOX_AGGRO = 1, - SAY_OOX_AMBUSH = 2, - SAY_OOX_AMBUSH_REPLY = 3, - SAY_OOX_END = 4, - QUEST_RESQUE_OOX_09 = 836, - NPC_MARAUDING_OWL = 7808, - NPC_VILE_AMBUSHER = 7809 -}; - -class npc_oox09hl : public CreatureScript -{ -public: - npc_oox09hl() : CreatureScript("npc_oox09hl") { } - - struct npc_oox09hlAI : public EscortAI - { - npc_oox09hlAI(Creature* creature) : EscortAI(creature) { } - - void Reset() override { } - - void JustEngagedWith(Unit* who) override - { - if (who->GetEntry() == NPC_MARAUDING_OWL || who->GetEntry() == NPC_VILE_AMBUSHER) - return; - - Talk(SAY_OOX_AGGRO); - } - - void JustSummoned(Creature* summoned) override - { - summoned->GetMotionMaster()->MovePoint(0, me->GetPositionX(), me->GetPositionY(), me->GetPositionZ()); - } - - void OnQuestAccept(Player* player, Quest const* quest) override - { - if (quest->GetQuestId() == QUEST_RESQUE_OOX_09) - { - me->SetStandState(UNIT_STAND_STATE_STAND); - me->SetFaction(player->GetTeam() == ALLIANCE ? FACTION_ESCORTEE_A_PASSIVE : FACTION_ESCORTEE_H_PASSIVE); - Talk(SAY_OOX_START, player); - EscortAI::Start(false, false, player->GetGUID(), quest); - } - } - - void WaypointReached(uint32 waypointId, uint32 /*pathId*/) override - { - switch (waypointId) - { - case 26: - Talk(SAY_OOX_AMBUSH); - break; - case 43: - Talk(SAY_OOX_AMBUSH); - break; - case 64: - Talk(SAY_OOX_END); - if (Player* player = GetPlayerForEscort()) - player->GroupEventHappens(QUEST_RESQUE_OOX_09, me); - break; - } - } - - void WaypointStarted(uint32 pointId, uint32 /*pathId*/) override - { - switch (pointId) - { - case 27: - for (uint8 i = 0; i < 3; ++i) - { - const Position src = {147.927444f, -3851.513428f, 130.893f, 0}; - Position dst = me->GetRandomPoint(src, 7.0f); - DoSummon(NPC_MARAUDING_OWL, dst, 25s, TEMPSUMMON_CORPSE_TIMED_DESPAWN); - } - break; - case 44: - for (uint8 i = 0; i < 3; ++i) - { - const Position src = {-141.151581f, -4291.213867f, 120.130f, 0}; - Position dst = me->GetRandomPoint(src, 7.0f); - me->SummonCreature(NPC_VILE_AMBUSHER, dst, TEMPSUMMON_CORPSE_TIMED_DESPAWN, 25s); - } - break; - } - } - }; - - CreatureAI* GetAI(Creature* creature) const override - { - return new npc_oox09hlAI(creature); - } -}; - -/*###### ## npc_sharpbeak used by Entrys 43161 & 51125 ######*/ @@ -238,6 +138,5 @@ public: void AddSC_hinterlands() { - new npc_oox09hl(); new npc_sharpbeak(); } diff --git a/src/server/scripts/Kalimdor/zone_tanaris.cpp b/src/server/scripts/Kalimdor/zone_tanaris.cpp index c362ac850f9..42c38b0d9db 100644 --- a/src/server/scripts/Kalimdor/zone_tanaris.cpp +++ b/src/server/scripts/Kalimdor/zone_tanaris.cpp @@ -18,13 +18,12 @@ /* ScriptData SDName: Tanaris SD%Complete: 80 -SDComment: Quest support: 648, 10277 +SDComment: Quest support: 10277 SDCategory: Tanaris EndScriptData */ /* ContentData npc_custodian_of_time -npc_OOX17 EndContentData */ #include "ScriptMgr.h" @@ -170,94 +169,6 @@ public: }; -/*###### -## npc_OOX17 -######*/ - -enum Npc00X17 -{ - SAY_OOX_START = 0, - SAY_OOX_AGGRO = 1, - SAY_OOX_AMBUSH = 2, - SAY_OOX17_AMBUSH_REPLY = 0, - SAY_OOX_END = 3, - - Q_OOX17 = 648, - SPAWN_FIRST = 7803, - SPAWN_SECOND_1 = 5617, - SPAWN_SECOND_2 = 7805 -}; - -class npc_OOX17 : public CreatureScript -{ -public: - npc_OOX17() : CreatureScript("npc_OOX17") { } - - struct npc_OOX17AI : public EscortAI - { - npc_OOX17AI(Creature* creature) : EscortAI(creature) { } - - void WaypointReached(uint32 waypointId, uint32 /*pathId*/) override - { - if (Player* player = GetPlayerForEscort()) - { - switch (waypointId) - { - case 23: - me->SummonCreature(SPAWN_FIRST, -8350.96f, -4445.79f, 10.10f, 6.20f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25s); - me->SummonCreature(SPAWN_FIRST, -8355.96f, -4447.79f, 10.10f, 6.27f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25s); - me->SummonCreature(SPAWN_FIRST, -8353.96f, -4442.79f, 10.10f, 6.08f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25s); - Talk(SAY_OOX_AMBUSH); - break; - case 56: - me->SummonCreature(SPAWN_SECOND_1, -7510.07f, -4795.50f, 9.35f, 6.06f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25s); - me->SummonCreature(SPAWN_SECOND_2, -7515.07f, -4797.50f, 9.35f, 6.22f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25s); - me->SummonCreature(SPAWN_SECOND_2, -7518.07f, -4792.50f, 9.35f, 6.22f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25s); - Talk(SAY_OOX_AMBUSH); - if (Creature* scoff = me->FindNearestCreature(SPAWN_SECOND_2, 30)) - scoff->AI()->Talk(SAY_OOX17_AMBUSH_REPLY); - break; - case 86: - Talk(SAY_OOX_END); - player->GroupEventHappens(Q_OOX17, me); - break; - } - } - } - - void Reset() override { } - - void JustEngagedWith(Unit* /*who*/) override - { - Talk(SAY_OOX_AGGRO); - } - - void JustSummoned(Creature* summoned) override - { - summoned->AI()->AttackStart(me); - } - - void OnQuestAccept(Player* player, Quest const* quest) override - { - if (quest->GetQuestId() == Q_OOX17) - { - me->SetFaction(FACTION_ESCORTEE_N_NEUTRAL_PASSIVE); - me->SetFullHealth(); - me->SetStandState(UNIT_STAND_STATE_STAND); - me->SetImmuneToPC(false); - Talk(SAY_OOX_START); - - Start(true, false, player->GetGUID()); - } - } - }; - - CreatureAI* GetAI(Creature* creature) const override - { - return new npc_OOX17AI(creature); - } -}; - /*#### # npc_tooga ####*/ @@ -421,5 +332,4 @@ public: void AddSC_tanaris() { new npc_custodian_of_time(); - new npc_OOX17(); } |