From 1dbbed0c50f40a2d361cada07fca43f3ab7bae36 Mon Sep 17 00:00:00 2001 From: Nefertumm Date: Fri, 4 Feb 2022 13:53:18 -0300 Subject: [PATCH] fix(DB/Quest): move Lost In Battle to DB (#10378) --- .../rev_1643223104276234400.sql | 16 ++++++++ .../scripts/Kalimdor/zone_the_barrens.cpp | 38 ------------------- 2 files changed, 16 insertions(+), 38 deletions(-) create mode 100644 data/sql/updates/pending_db_world/rev_1643223104276234400.sql diff --git a/data/sql/updates/pending_db_world/rev_1643223104276234400.sql b/data/sql/updates/pending_db_world/rev_1643223104276234400.sql new file mode 100644 index 000000000..1a87d985c --- /dev/null +++ b/data/sql/updates/pending_db_world/rev_1643223104276234400.sql @@ -0,0 +1,16 @@ +INSERT INTO `version_db_world` (`sql_rev`) VALUES ('1643223104276234400'); + +UPDATE `creature_template` SET `npcflag` = `npcflag`|1, `gossip_menu_id`= 2871, `AIName` = 'SmartAI', `ScriptName` = '' WHERE `entry`= 10668; + +DELETE FROM `gossip_menu` WHERE `MenuID` IN (2871,2872); +INSERT INTO `gossip_menu` (`MenuID`,`TextID`) VALUES +(2871, 3557), +(2872, 3558); + +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId` = 15 AND `SourceGroup` = 2871; +INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES +(15, 2871, 0, 0, 0, 9, 0, 4921, 0, 0, 0, 0, 0, '', 'Show gossip option 2871 if quest 4921 is taken.'); + +DELETE FROM `smart_scripts` WHERE (`entryorguid` = 10668) AND (`source_type` = 0) AND (`id` IN (0)); +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`, `event_param5`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES +(10668, 0, 0, 0, 62, 0, 100, 0, 2871, 0, 0, 0, 0, 33, 10668, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, 'Beaten Corpse - On Gossip Option 0 Selected - Quest Credit \'Lost In Battle\''); diff --git a/src/server/scripts/Kalimdor/zone_the_barrens.cpp b/src/server/scripts/Kalimdor/zone_the_barrens.cpp index 9184f35cd..52e669ea4 100644 --- a/src/server/scripts/Kalimdor/zone_the_barrens.cpp +++ b/src/server/scripts/Kalimdor/zone_the_barrens.cpp @@ -38,43 +38,6 @@ EndContentData */ #include "ScriptedGossip.h" #include "SpellInfo.h" -/*###### -## npc_beaten_corpse -######*/ - -#define GOSSIP_CORPSE "Examine corpse in detail..." - -enum BeatenCorpse -{ - QUEST_LOST_IN_BATTLE = 4921 -}; - -class npc_beaten_corpse : public CreatureScript -{ -public: - npc_beaten_corpse() : CreatureScript("npc_beaten_corpse") { } - - bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action) override - { - ClearGossipMenuFor(player); - if (action == GOSSIP_ACTION_INFO_DEF + 1) - { - SendGossipMenuFor(player, 3558, creature->GetGUID()); - player->TalkedToCreature(creature->GetEntry(), creature->GetGUID()); - } - return true; - } - - bool OnGossipHello(Player* player, Creature* creature) override - { - if (player->GetQuestStatus(QUEST_LOST_IN_BATTLE) == QUEST_STATUS_INCOMPLETE || player->GetQuestStatus(QUEST_LOST_IN_BATTLE) == QUEST_STATUS_COMPLETE) - AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_CORPSE, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF + 1); - - SendGossipMenuFor(player, 3557, creature->GetGUID()); - return true; - } -}; - /*###### # npc_gilthares ######*/ @@ -661,7 +624,6 @@ public: void AddSC_the_barrens() { - new npc_beaten_corpse(); new npc_gilthares(); new npc_taskmaster_fizzule(); new npc_twiggy_flathead();