diff options
author | Andrew Letson <velinath@users.noreply.github.com> | 2017-11-07 18:06:53 -0500 |
---|---|---|
committer | funjoker <funjoker109@gmail.com> | 2021-01-29 19:23:53 +0100 |
commit | 0ec169958596a4fd2f7c17a5f67e7123f27820e9 (patch) | |
tree | 0d01b329fed4e5a3eb5ae23251b24d613d084ad7 | |
parent | 3e5a955fc8980df1332a3faa741731fbddc31b24 (diff) |
Scripts/Northrend: Move Sholazar Basin NPCs to SmartAI
(cherry picked from commit c99b89934e872343bece31f4bd744ebaec80364f)
-rw-r--r-- | sql/updates/world/master/2021_01_25_08_world_2017_11_08_00_world.sql | 62 | ||||
-rw-r--r-- | src/server/scripts/Northrend/zone_sholazar_basin.cpp | 289 |
2 files changed, 69 insertions, 282 deletions
diff --git a/sql/updates/world/master/2021_01_25_08_world_2017_11_08_00_world.sql b/sql/updates/world/master/2021_01_25_08_world_2017_11_08_00_world.sql new file mode 100644 index 00000000000..2298430b29c --- /dev/null +++ b/sql/updates/world/master/2021_01_25_08_world_2017_11_08_00_world.sql @@ -0,0 +1,62 @@ +-- Vekjik, Avatar of Freya, Adventurous Dwarf, Bushwhacker +UPDATE `creature_template` SET `AIName` = 'SmartAI', `ScriptName` = '' WHERE `entry` IN (27801, 28315, 28604, 28317); + +-- Add immune to PC/NPC flag for Bushwhacker +UPDATE `creature_template` SET `unit_flags` = `unit_flags` | 768 WHERE `entry` = 28317; + +DELETE FROM `event_scripts` WHERE `id` = 18503; +INSERT INTO `event_scripts` (`id`,`delay`,`command`,`datalong`,`datalong2`,`dataint`,`x`,`y`,`z`,`o`) VALUES +(18503,0,10,28317,360000,0,5439.275, 4853.403, -202.332, 1.4199417); + +DELETE FROM `creature_text` WHERE `CreatureID` = 28317; +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextID`, `TextRange`, `Comment`) VALUES +(28317, 0, 0, '%s sniffs the air, catching the scent of something unusual.', 16, 0, 100, 0, 0, 0, 27731, 0, 'Bushwhacker'); + +DELETE FROM `gossip_menu_option` WHERE `MenuID` = 9724 AND `OptionIndex` IN (0, 2); -- 1 is already present in DB +INSERT INTO `gossip_menu_option` (`MenuID`, `OptionIndex`, `OptionIcon`, `OptionText`, `OptionBroadcastTextID`, `OptionType`, `OptionNpcFlag`, `VerifiedBuild`) VALUES +(9724, 0, 0, 'Can you spare an orange?', 28594, 1, 1, 0), +(9724, 2, 0, 'I could really use a papaya.', 28596, 1, 1, 0); + +UPDATE `creature_text` SET `emote`=5 WHERE `CreatureID`=28604 AND `GroupID`=0 AND `ID`=0; +UPDATE `creature_text` SET `emote`=3 WHERE `CreatureID`=28604 AND `GroupID`=1 AND `ID`=0; + +DELETE FROM `smart_scripts` WHERE `source_type` = 0 AND `entryorguid` IN (27801, 28315, 28604, 28317); +DELETE FROM `smart_scripts` WHERE `source_type` = 9 AND `entryorguid` IN (2860400, 2831700); +INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES +(28315, 0, 0, 1, 62, 0, 100, 0, 9686, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 'Shaman Vekjik - On Gossip Option 0 Selected - Close Gossip'), +(28315, 0, 1, 2, 61, 0, 100, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Shaman Vekjik - On Gossip Option 0 Selected - Say Line 0'), +(28315, 0, 2, 3, 61, 0, 100, 0, 0, 0, 0, 0, 15, 12573, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 'Shaman Vekjik - On Gossip Option 0 Selected - Quest Credit \'Making Peace\''), +(28315, 0, 3, 0, 61, 0, 100, 0, 0, 0, 0, 0, 11, 51469, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 'Shaman Vekjik - On Gossip Option 0 Selected - Cast \'Frenzyheart\'s Fury\''), +(27801, 0, 0, 1, 62, 0, 100, 0, 9722, 0, 0, 0, 85, 52045, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 'Avatar of Freya - On Gossip Option 0 Selected - Invoker Cast \'Freya Conversation Credit\''), +(27801, 0, 1, 0, 61, 0, 100, 0, 0, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 'Avatar of Freya - On Gossip Option 0 Selected - Close Gossip'), +(28604, 0, 0, 3, 62, 0, 100, 0, 9724, 0, 0, 0, 85, 52073, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 'Adventurous Dwarf - On Gossip Option 0 Selected - Cast \'Dwarf Gives Orange\''), +(28604, 0, 1, 3, 62, 0, 100, 0, 9724, 1, 0, 0, 85, 52074, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 'Adventurous Dwarf - On Gossip Option 1 Selected - Cast \'Dwarf Gives Banana\''), +(28604, 0, 2, 3, 62, 0, 100, 0, 9724, 2, 0, 0, 85, 52076, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 'Adventurous Dwarf - On Gossip Option 2 Selected - Cast \'Dwarf Gives Papaya\''), +(28604, 0, 3, 0, 61, 0, 100, 0, 0, 0, 0, 0, 80, 2860400, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Adventurous Dwarf - On Gossip Option Selected - Action list'), +(2860400, 9, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 'Adventurous Dwarf - On Action list - Close Gossip'), +(2860400, 9, 1, 0, 0, 0, 100, 0, 0, 0, 0, 0, 83, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Adventurous Dwarf - On Action list - Remove Gossip Flag'), +(2860400, 9, 2, 0, 0, 0, 100, 0, 0, 0, 0, 0, 66, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 'Adventurous Dwarf - On Action list - Set Orientation'), +(2860400, 9, 3, 0, 0, 0, 100, 0, 2000, 2000, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Adventurous Dwarf - On Action list - Say Line 1'), +(2860400, 9, 4, 0, 0, 0, 100, 0, 2000, 2000, 0, 0, 114, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 25, 0, 0, 'Adventurous Dwarf - On Action list - Move offset 25 Yards'), +(2860400, 9, 5, 0, 0, 0, 100, 0, 3000, 3000, 0, 0, 41, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Adventurous Dwarf - On Action list - Despawn In 3000 ms'), +(28604, 0, 4, 0, 1, 0, 100, 1, 1000, 1000, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Adventurous Dwarf - OOC No Repeat - Say Line 0'), +(28317, 0, 0, 1, 54, 0, 100, 0, 0, 0, 0, 0, 69, 1, 0, 0, 2, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 'Bushwhacker - On Summon - Move To Summoner'), +(28317, 0, 1, 0, 61, 0, 100, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Bushwhacker - On summon - Play Emote 0'), +(28317, 0, 2, 0, 34, 0, 100, 1, 0, 1, 0, 0, 80, 2831700, 2, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Bushwhacker - On Movement Inform - Run Timed Actionlist 2831700'), +(2831700, 9, 0, 0, 0, 0, 100, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Bushwhacker - Timed Actionlist - Say Line 0'), +(2831700, 9, 1, 0, 0, 0, 100, 0, 1500, 1500, 0, 0, 19, 768, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Bushwhacker - Timed Actionlist - Remove Flags Immune to PC/NPC'), +(2831700, 9, 2, 0, 0, 0, 100, 0, 0, 0, 0, 0, 49, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 'Bushwhacker - Timed Actionlist - Start Attacking Summoner'), +(28317, 0, 3, 0, 7, 0, 100, 0, 0, 0, 0, 0, 41, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 'Bushwhacker - On evade - Despawn'); + +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId` IN (14, 15) AND `SourceGroup` IN (9678, 9720, 9724); +INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES +(14, 9678, 13136, 0, 0, 9, 0, 12573, 0, 0, 1, 0, 0, '', 'Show gossip menu 9678 text id 13136 if quest Making Peace has not been taken.'), +(14, 9678, 13137, 0, 0, 9, 0, 12573, 0, 0, 0, 0, 0, '', 'Show gossip menu 9678 text id 13137 if quest Making Peace has been taken.'), +(15, 9678, 0, 0, 0, 9, 0, 12573, 0, 0, 0, 0, 0, '', 'Show gossip menu 9678 option id 0 if quest Making Peace has been taken.'), +(15, 9720, 0, 0, 0, 9, 0, 12621, 0, 0, 0, 0, 0, '', 'Show gossip menu 9720 option id 0 if quest Freya\'s Pact has been taken.'), +(15, 9724, 0, 0, 0, 9, 0, 12634, 0, 0, 0, 0, 0, '', 'Show gossip menu 9724 option id 0 if quest Some Make Lemonade, Some Make Liquor has been taken.'), +(15, 9724, 0, 0, 0, 2, 0, 38656, 1, 0, 1, 0, 0, '', 'Show gossip menu 9724 option id 0 if player does not have 1 of Orange.'), +(15, 9724, 1, 0, 0, 9, 0, 12634, 0, 0, 0, 0, 0, '', 'Show gossip menu 9724 option id 1 if quest Some Make Lemonade, Some Make Liquor has been taken.'), +(15, 9724, 1, 0, 0, 2, 0, 38653, 2, 0, 1, 0, 0, '', 'Show gossip menu 9724 option id 1 if player does not have 2 of Banana Bunch.'), +(15, 9724, 2, 0, 0, 9, 0, 12634, 0, 0, 0, 0, 0, '', 'Show gossip menu 9724 option id 2 if quest Some Make Lemonade, Some Make Liquor has been taken.'), +(15, 9724, 2, 0, 0, 2, 0, 38655, 1, 0, 1, 0, 0, '', 'Show gossip menu 9724 option id 2 if player does not have 1 of Papaya.'); diff --git a/src/server/scripts/Northrend/zone_sholazar_basin.cpp b/src/server/scripts/Northrend/zone_sholazar_basin.cpp index 025bfe214c2..efe6943e3c3 100644 --- a/src/server/scripts/Northrend/zone_sholazar_basin.cpp +++ b/src/server/scripts/Northrend/zone_sholazar_basin.cpp @@ -18,14 +18,18 @@ /* ScriptData SDName: Sholazar_Basin SD%Complete: 100 -SDComment: Quest support: 12573, 12621, 12726 +SDComment: Quest support: 12550, 12645, 12688, 12726, 13957 SDCategory: Sholazar_Basin EndScriptData */ /* ContentData -npc_vekjik -avatar_of_freya +npc_engineer_helice +npc_jungle_punch_target +spell_q12620_the_lifewarden_wrath +spell_q12589_shoot_rjr npc_haiphoon (Quest: "Song of Wind and Water") +npc_vics_flying_machine +spell_shango_tracks EndContentData */ #include "ScriptMgr.h" @@ -36,196 +40,11 @@ EndContentData */ #include "ObjectMgr.h" #include "Player.h" #include "ScriptedEscortAI.h" -#include "ScriptedGossip.h" #include "SpellAuras.h" #include "SpellScript.h" -#include "TemporarySummon.h" #include "Vehicle.h" /*###### -## npc_vekjik -######*/ - -#define GOSSIP_VEKJIK_ITEM1 "Shaman Vekjik, I have spoken with the big-tongues and they desire peace. I have brought this offering on their behalf." -#define GOSSIP_VEKJIK_ITEM2 "No no... I had no intentions of betraying your people. I was only defending myself. it was all a misunderstanding." - -enum Vekjik -{ - GOSSIP_TEXTID_VEKJIK1 = 13137, - GOSSIP_TEXTID_VEKJIK2 = 13138, - - SAY_TEXTID_VEKJIK1 = 0, - - SPELL_FREANZYHEARTS_FURY = 51469, - - QUEST_MAKING_PEACE = 12573 -}; - -class npc_vekjik : public CreatureScript -{ -public: - npc_vekjik() : CreatureScript("npc_vekjik") { } - - struct npc_vekjikAI : public ScriptedAI - { - npc_vekjikAI(Creature* creature) : ScriptedAI(creature) { } - - bool GossipHello(Player* player) override - { - if (me->IsQuestGiver()) - player->PrepareQuestMenu(me->GetGUID()); - - if (player->GetQuestStatus(QUEST_MAKING_PEACE) == QUEST_STATUS_INCOMPLETE) - { - AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_VEKJIK_ITEM1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1); - SendGossipMenuFor(player, GOSSIP_TEXTID_VEKJIK1, me->GetGUID()); - return true; - } - - SendGossipMenuFor(player, player->GetGossipTextId(me), me->GetGUID()); - return true; - } - - bool GossipSelect(Player* player, uint32 /*menuId*/, uint32 gossipListId) override - { - uint32 const action = player->PlayerTalkClass->GetGossipOptionAction(gossipListId); - ClearGossipMenuFor(player); - switch (action) - { - case GOSSIP_ACTION_INFO_DEF + 1: - AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_VEKJIK_ITEM2, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2); - SendGossipMenuFor(player, GOSSIP_TEXTID_VEKJIK2, me->GetGUID()); - break; - case GOSSIP_ACTION_INFO_DEF + 2: - CloseGossipMenuFor(player); - Talk(SAY_TEXTID_VEKJIK1, player); - player->AreaExploredOrEventHappens(QUEST_MAKING_PEACE); - DoCast(player, SPELL_FREANZYHEARTS_FURY, false); - break; - } - - return true; - } - }; - - CreatureAI* GetAI(Creature* creature) const override - { - return new npc_vekjikAI(creature); - } -}; - -/*###### -## avatar_of_freya -######*/ - -#define GOSSIP_ITEM_AOF1 "I want to stop the Scourge as much as you do. How can I help?" -#define GOSSIP_ITEM_AOF2 "You can trust me. I am no friend of the Lich King." -#define GOSSIP_ITEM_AOF3 "I will not fail." - -enum Freya -{ - QUEST_FREYA_PACT = 12621, - - SPELL_FREYA_CONVERSATION = 52045, - - GOSSIP_TEXTID_AVATAR1 = 13303, - GOSSIP_TEXTID_AVATAR2 = 13304, - GOSSIP_TEXTID_AVATAR3 = 13305 -}; - -class npc_avatar_of_freya : public CreatureScript -{ -public: - npc_avatar_of_freya() : CreatureScript("npc_avatar_of_freya") { } - - struct npc_avatar_of_freyaAI : public ScriptedAI - { - npc_avatar_of_freyaAI(Creature* creature) : ScriptedAI(creature) { } - - bool GossipHello(Player* player) override - { - if (me->IsQuestGiver()) - player->PrepareQuestMenu(me->GetGUID()); - - if (player->GetQuestStatus(QUEST_FREYA_PACT) == QUEST_STATUS_INCOMPLETE) - AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_ITEM_AOF1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1); - - player->PlayerTalkClass->SendGossipMenu(GOSSIP_TEXTID_AVATAR1, me->GetGUID()); - return true; - } - - bool GossipSelect(Player* player, uint32 /*menuId*/, uint32 gossipListId) override - { - uint32 const action = player->PlayerTalkClass->GetGossipOptionAction(gossipListId); - ClearGossipMenuFor(player); - switch (action) - { - case GOSSIP_ACTION_INFO_DEF + 1: - AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_ITEM_AOF2, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2); - player->PlayerTalkClass->SendGossipMenu(GOSSIP_TEXTID_AVATAR2, me->GetGUID()); - break; - case GOSSIP_ACTION_INFO_DEF + 2: - AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_ITEM_AOF3, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3); - player->PlayerTalkClass->SendGossipMenu(GOSSIP_TEXTID_AVATAR3, me->GetGUID()); - break; - case GOSSIP_ACTION_INFO_DEF + 3: - player->CastSpell(player, SPELL_FREYA_CONVERSATION, true); - CloseGossipMenuFor(player); - break; - } - return true; - } - }; - - CreatureAI* GetAI(Creature* creature) const override - { - return new npc_avatar_of_freyaAI(creature); - } -}; - -/*###### -## npc_bushwhacker -######*/ - -class npc_bushwhacker : public CreatureScript -{ -public: - npc_bushwhacker() : CreatureScript("npc_bushwhacker") { } - - struct npc_bushwhackerAI : public ScriptedAI - { - npc_bushwhackerAI(Creature* creature) : ScriptedAI(creature) - { - } - - void InitializeAI() override - { - if (me->isDead()) - return; - - if (TempSummon* summ = me->ToTempSummon()) - if (Unit* summoner = summ->GetSummoner()) - me->GetMotionMaster()->MovePoint(0, summoner->GetPositionX(), summoner->GetPositionY(), summoner->GetPositionZ()); - - Reset(); - } - - void UpdateAI(uint32 /*uiDiff*/) override - { - if (!UpdateVictim()) - return; - - DoMeleeAttackIfReady(); - } - }; - - CreatureAI* GetAI(Creature* creature) const override - { - return new npc_bushwhackerAI(creature); - } -}; - -/*###### ## npc_engineer_helice ######*/ @@ -549,96 +368,6 @@ public: }; /*###### -## npc_adventurous_dwarf -######*/ - -#define GOSSIP_OPTION_ORANGE "Can you spare an orange?" -#define GOSSIP_OPTION_BANANAS "Have a spare bunch of bananas?" -#define GOSSIP_OPTION_PAPAYA "I could really use a papaya." - -enum AdventurousDwarf -{ - QUEST_12634 = 12634, - - ITEM_BANANAS = 38653, - ITEM_PAPAYA = 38655, - ITEM_ORANGE = 38656, - - SPELL_ADD_ORANGE = 52073, - SPELL_ADD_BANANAS = 52074, - SPELL_ADD_PAPAYA = 52076, - - GOSSIP_MENU_DWARF = 13307, - - SAY_DWARF_OUCH = 0, - SAY_DWARF_HELP = 1 -}; - -class npc_adventurous_dwarf : public CreatureScript -{ -public: - npc_adventurous_dwarf() : CreatureScript("npc_adventurous_dwarf") { } - - struct npc_adventurous_dwarfAI : public ScriptedAI - { - npc_adventurous_dwarfAI(Creature* creature) : ScriptedAI(creature) - { - Talk(SAY_DWARF_OUCH); - } - - bool GossipHello(Player* player) override - { - if (player->GetQuestStatus(QUEST_12634) != QUEST_STATUS_INCOMPLETE) - return false; - - if (player->GetItemCount(ITEM_ORANGE) < 1) - AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_OPTION_ORANGE, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1); - - if (player->GetItemCount(ITEM_BANANAS) < 2) - AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_OPTION_BANANAS, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 2); - - if (player->GetItemCount(ITEM_PAPAYA) < 1) - AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_OPTION_PAPAYA, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 3); - - player->PlayerTalkClass->SendGossipMenu(GOSSIP_MENU_DWARF, me->GetGUID()); - return true; - } - - bool GossipSelect(Player* player, uint32 /*menuId*/, uint32 gossipListId) override - { - uint32 const action = player->PlayerTalkClass->GetGossipOptionAction(gossipListId); - ClearGossipMenuFor(player); - uint32 spellId = 0; - - switch (action) - { - case GOSSIP_ACTION_INFO_DEF + 1: - spellId = SPELL_ADD_ORANGE; - break; - case GOSSIP_ACTION_INFO_DEF + 2: - spellId = SPELL_ADD_BANANAS; - break; - case GOSSIP_ACTION_INFO_DEF + 3: - spellId = SPELL_ADD_PAPAYA; - break; - } - - if (spellId) - player->CastSpell(player, spellId, true); - - Talk(SAY_DWARF_HELP); - me->DespawnOrUnsummon(); - return true; - } - }; - - CreatureAI* GetAI(Creature* creature) const override - { - return new npc_adventurous_dwarfAI(creature); - } -}; - -/*###### ## Quest The Lifewarden's Wrath ######*/ @@ -1041,11 +770,7 @@ public: void AddSC_sholazar_basin() { - new npc_vekjik(); - new npc_avatar_of_freya(); - new npc_bushwhacker(); new npc_engineer_helice(); - new npc_adventurous_dwarf(); new npc_jungle_punch_target(); new spell_q12620_the_lifewarden_wrath(); new spell_q12589_shoot_rjr(); |