From 3bf6dcc6756161adee8b2a37df26620d2290e447 Mon Sep 17 00:00:00 2001 From: offl Date: Tue, 22 Mar 2022 15:52:56 +0200 Subject: [PATCH] DB/Creature: Roxi Ramrocket (cherry picked from commit 2400ae729100fac913ba8458bb6a02281e7ae16c) --- ...022_03_26_33_world_2022_03_22_05_world.sql | 11 ++++ .../scripts/Northrend/zone_storm_peaks.cpp | 63 ------------------- 2 files changed, 11 insertions(+), 63 deletions(-) create mode 100644 sql/updates/world/master/2022_03_26_33_world_2022_03_22_05_world.sql diff --git a/sql/updates/world/master/2022_03_26_33_world_2022_03_22_05_world.sql b/sql/updates/world/master/2022_03_26_33_world_2022_03_22_05_world.sql new file mode 100644 index 00000000000..26a3f19ea63 --- /dev/null +++ b/sql/updates/world/master/2022_03_26_33_world_2022_03_22_05_world.sql @@ -0,0 +1,11 @@ +-- +UPDATE `creature_template` SET `ScriptName` = '' WHERE `entry` = 31247; + +DELETE FROM `gossip_menu_option` WHERE `MenuID` = 10210 AND `OptionID` = 1; +INSERT INTO `gossip_menu_option` (`MenuID`, `OptionID`, `OptionIcon`, `OptionText`, `OptionBroadcastTextID`, `OptionType`, `OptionNpcFlag`, `ActionMenuID`, `ActionPoiID`, `BoxCoded`, `BoxMoney`, `BoxText`, `BoxBroadcastTextID`, `VerifiedBuild`) VALUES +(10210,1,1,"I hear you sell motorcycle parts.",33010,3,128,0,0,0,0,'',0,0); + +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId` = 15 AND `SourceGroup` = 10210; +INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES +(15,10210,1,0,0,25,0,60866,0,0,0,0,0,"","Group 0: Show Gossip Option 1 if spell 'Mechano-hog' is learned"), +(15,10210,1,0,1,25,0,60867,0,0,0,0,0,"","Group 1: Show Gossip Option 1 if spell 'Mekgineer's Chopper' is learned"); diff --git a/src/server/scripts/Northrend/zone_storm_peaks.cpp b/src/server/scripts/Northrend/zone_storm_peaks.cpp index e20cd91fc74..db8e35eecdb 100644 --- a/src/server/scripts/Northrend/zone_storm_peaks.cpp +++ b/src/server/scripts/Northrend/zone_storm_peaks.cpp @@ -31,68 +31,6 @@ #include "Vehicle.h" #include "WorldSession.h" -/*###### -## npc_roxi_ramrocket -######*/ - -enum RoxiRamrocket -{ - SPELL_MECHANO_HOG = 60866, - SPELL_MEKGINEERS_CHOPPER = 60867, - TRAINER_ID_ROXI_RAMROCKET = 102, -}; - -class npc_roxi_ramrocket : public CreatureScript -{ -public: - npc_roxi_ramrocket() : CreatureScript("npc_roxi_ramrocket") { } - - struct npc_roxi_ramrocketAI : public ScriptedAI - { - npc_roxi_ramrocketAI(Creature* creature) : ScriptedAI(creature) { } - - bool OnGossipHello(Player* player) override - { - //Quest Menu - if (me->IsQuestGiver()) - player->PrepareQuestMenu(me->GetGUID()); - - //Trainer Menu - if (me->IsTrainer()) - AddGossipItemFor(player, GossipOptionIcon::Trainer, GOSSIP_TEXT_TRAIN, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_TRAIN); - - //Vendor Menu - if (me->IsVendor()) - if (player->HasSpell(SPELL_MECHANO_HOG) || player->HasSpell(SPELL_MEKGINEERS_CHOPPER)) - AddGossipItemFor(player, GossipOptionIcon::Vendor, GOSSIP_TEXT_BROWSE_GOODS, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_TRADE); - - SendGossipMenuFor(player, player->GetGossipTextId(me), me->GetGUID()); - return true; - } - - bool OnGossipSelect(Player* player, uint32 /*menuId*/, uint32 gossipListId) override - { - uint32 const action = player->PlayerTalkClass->GetGossipOptionAction(gossipListId); - ClearGossipMenuFor(player); - switch (action) - { - case GOSSIP_ACTION_TRAIN: - player->GetSession()->SendTrainerList(me, TRAINER_ID_ROXI_RAMROCKET); - break; - case GOSSIP_ACTION_TRADE: - player->GetSession()->SendListInventory(me->GetGUID()); - break; - } - return true; - } - }; - - CreatureAI* GetAI(Creature* creature) const override - { - return new npc_roxi_ramrocketAI(creature); - } -}; - /*###### ## npc_brunnhildar_prisoner ######*/ @@ -1506,7 +1444,6 @@ class spell_bear_flank_fail : public AuraScript void AddSC_storm_peaks() { - new npc_roxi_ramrocket(); new npc_brunnhildar_prisoner(); new npc_freed_protodrake(); new npc_icefang();