From 57332e1d3e20aec3ea88986287bc439cefa1427f Mon Sep 17 00:00:00 2001 From: Malcrom Date: Thu, 19 Dec 2013 16:28:08 -0330 Subject: DB/SAI: Scripted all ogres in Blades Edge Mountains. Sorry I had to remove the awesome cpp script. --- .../scripts/Outland/zone_blades_edge_mountains.cpp | 32 ---------------------- 1 file changed, 32 deletions(-) (limited to 'src/server/scripts') diff --git a/src/server/scripts/Outland/zone_blades_edge_mountains.cpp b/src/server/scripts/Outland/zone_blades_edge_mountains.cpp index 167fd7f2074..acc3317d7bd 100644 --- a/src/server/scripts/Outland/zone_blades_edge_mountains.cpp +++ b/src/server/scripts/Outland/zone_blades_edge_mountains.cpp @@ -54,37 +54,6 @@ bool obelisk_one, obelisk_two, obelisk_three, obelisk_four, obelisk_five; #define LEGION_OBELISK_FOUR 185197 #define LEGION_OBELISK_FIVE 185198 -/*###### -## npc_bladespire_ogre -######*/ - -/// @todo add support for quest 10512 + Creature abilities -class npc_bladespire_ogre : public CreatureScript -{ -public: - npc_bladespire_ogre() : CreatureScript("npc_bladespire_ogre") { } - - CreatureAI* GetAI(Creature* creature) const OVERRIDE - { - return new npc_bladespire_ogreAI(creature); - } - - struct npc_bladespire_ogreAI : public ScriptedAI - { - npc_bladespire_ogreAI(Creature* creature) : ScriptedAI(creature) { } - - void Reset() OVERRIDE { } - - void UpdateAI(uint32 /*uiDiff*/) OVERRIDE - { - if (!UpdateVictim()) - return; - - DoMeleeAttackIfReady(); - } - }; -}; - /*###### ## npc_nether_drake ######*/ @@ -1242,7 +1211,6 @@ class spell_oscillating_field : public SpellScriptLoader void AddSC_blades_edge_mountains() { - new npc_bladespire_ogre(); new npc_nether_drake(); new npc_daranelle(); new npc_overseer_nuaar(); -- cgit v1.2.3 From d89a3b2fb26eda73839ccd28842226ffcd3f26b6 Mon Sep 17 00:00:00 2001 From: Malcrom Date: Thu, 19 Dec 2013 21:23:51 -0330 Subject: DB/Gossip: Moved Highlord Demitrian gossip to db. npc had SmartAI and cpp script. --- sql/updates/world/2013_12_19_03_world_misc.sql | 30 ++++++++++ src/server/scripts/Kalimdor/zone_silithus.cpp | 77 +------------------------- 2 files changed, 31 insertions(+), 76 deletions(-) create mode 100644 sql/updates/world/2013_12_19_03_world_misc.sql (limited to 'src/server/scripts') diff --git a/sql/updates/world/2013_12_19_03_world_misc.sql b/sql/updates/world/2013_12_19_03_world_misc.sql new file mode 100644 index 00000000000..ae6b7bb07e2 --- /dev/null +++ b/sql/updates/world/2013_12_19_03_world_misc.sql @@ -0,0 +1,30 @@ +-- Highlord Demitrian SAI +SET @ENTRY := 14347; +UPDATE `creature_template` SET `gossip_menu_id`=5689, `AIName`='SmartAI',`ScriptName`= '' WHERE `entry`=@ENTRY; +DELETE FROM `smart_scripts` WHERE `entryorguid`=@ENTRY AND `source_type`=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`,`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 +(@ENTRY,0,0,0,62,0,100,0,5704,0,0,0,56,19016,1,0,0,0,0,7,0,0,0,0,0,0,0,"Highlord Demitrian - On Gossip Select - Add item Vessel of Rebirth to player"), +(@ENTRY,0,1,0,20,0,100,0,7786,0,0,0,12,14435,2,0,0,0,0,7,0,0,0,0,0,0,0,"Highlord Demitrian - On Quest Thunderaan the Windseeker rewarded - Summon creature"); +-- Add Gossip +DELETE FROM `gossip_menu` WHERE `entry` IN (5675,5687,5688,5689,5701,5702,5703,5704); +INSERT INTO `gossip_menu` (`entry`,`text_id`) VALUES +(5675,6812),(5687,6844),(5688,6843),(5689,6842),(5701,6868),(5702,6867),(5703,6870),(5704,6869); +-- Add Gossip Options +DELETE FROM `gossip_menu_option` WHERE `menu_id` IN (5675,5687,5688,5689,5701,5702,5704); +INSERT INTO `gossip_menu_option` (`menu_id`,`id`,`option_icon`,`option_text`,`option_id`,`npc_option_npcflag`,`action_menu_id`) VALUES +(5675,0,0, 'What do you know of it?',1,1,5689), +(5689,0,0, 'I am listening, Demitrian.',1,1,5688), +(5688,0,0, 'Continue, please.',1,1,5687), +(5687,0,0, 'A battle?',1,1,5702), +(5702,0,0, '',1,1,5701), +(5701,0,0, 'Caught unaware? How?',1,1,5704), +(5704,0,0, 'So what did Ragnaros do next?',1,1,5703); +-- Add Conditions +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=15 AND `SourceGroup`=5675; +INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES +-- Both of these must be true +(15,5675,0,0,0,14,0,7785,0,0,0,0,0, '', 'Gossip Option - Show Option if Quest 7785 is not taken'), +(15,5675,0,1,0,2,0,19016,1,0,1,0,0, '', 'Gossip Option - Show Option if player does not have Vessel of Rebirth'), +-- One of these must be true +(15,5675,0,2,0,2,0,18563,0,0,1,0,0, '', 'Gossip Option - Show Option if player has Bindings of the Windseeker'), +(15,5675,0,2,0,2,0,18564,0,0,1,0,0, '', 'Gossip Option - Show Option if player has Bindings of the Windseeker'); diff --git a/src/server/scripts/Kalimdor/zone_silithus.cpp b/src/server/scripts/Kalimdor/zone_silithus.cpp index 7e580a29d3b..ef1f6466d3b 100644 --- a/src/server/scripts/Kalimdor/zone_silithus.cpp +++ b/src/server/scripts/Kalimdor/zone_silithus.cpp @@ -19,12 +19,11 @@ /* ScriptData SDName: Silithus SD%Complete: 100 -SDComment: Quest support: 7785, 8304, 8507. +SDComment: Quest support: 8304, 8507. SDCategory: Silithus EndScriptData */ /* ContentData -npc_highlord_demitrian npcs_rutgar_and_frankal quest_a_pawn_on_the_eternal_pawn EndContentData */ @@ -35,79 +34,6 @@ EndContentData */ #include "Group.h" #include "Player.h" -/*### -## npc_highlord_demitrian -###*/ - -#define GOSSIP_DEMITRIAN1 "What do you know of it?" -#define GOSSIP_DEMITRIAN2 "I am listening, Demitrian." -#define GOSSIP_DEMITRIAN3 "Continue, please." -#define GOSSIP_DEMITRIAN4 "A battle?" -#define GOSSIP_DEMITRIAN5 "" -#define GOSSIP_DEMITRIAN6 "Caught unaware? How?" -#define GOSSIP_DEMITRIAN7 "So what did Ragnaros do next?" - -class npc_highlord_demitrian : public CreatureScript -{ -public: - npc_highlord_demitrian() : CreatureScript("npc_highlord_demitrian") { } - - bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action) OVERRIDE - { - player->PlayerTalkClass->ClearMenus(); - switch (action) - { - case GOSSIP_ACTION_INFO_DEF: - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_DEMITRIAN2, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); - player->SEND_GOSSIP_MENU(6842, creature->GetGUID()); - break; - case GOSSIP_ACTION_INFO_DEF+1: - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_DEMITRIAN3, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+2); - player->SEND_GOSSIP_MENU(6843, creature->GetGUID()); - break; - case GOSSIP_ACTION_INFO_DEF+2: - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_DEMITRIAN4, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+3); - player->SEND_GOSSIP_MENU(6844, creature->GetGUID()); - break; - case GOSSIP_ACTION_INFO_DEF+3: - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_DEMITRIAN5, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+4); - player->SEND_GOSSIP_MENU(6867, creature->GetGUID()); - break; - case GOSSIP_ACTION_INFO_DEF+4: - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_DEMITRIAN6, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+5); - player->SEND_GOSSIP_MENU(6868, creature->GetGUID()); - break; - case GOSSIP_ACTION_INFO_DEF+5: - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_DEMITRIAN7, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+6); - player->SEND_GOSSIP_MENU(6869, creature->GetGUID()); - break; - case GOSSIP_ACTION_INFO_DEF+6: - player->SEND_GOSSIP_MENU(6870, creature->GetGUID()); - - ItemPosCountVec dest; - uint8 msg = player->CanStoreNewItem(NULL_BAG, NULL_SLOT, dest, 19016, 1); - if (msg == EQUIP_ERR_OK) - player->StoreNewItem(dest, 19016, true); - break; - } - return true; - } - - bool OnGossipHello(Player* player, Creature* creature) OVERRIDE - { - if (creature->IsQuestGiver()) - player->PrepareQuestMenu(creature->GetGUID()); - - if (player->GetQuestStatus(7785) == QUEST_STATUS_NONE && - (player->HasItemCount(18563, 1, false) || player->HasItemCount(18564, 1, false))) - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_DEMITRIAN1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF); - - player->SEND_GOSSIP_MENU(6812, creature->GetGUID()); - return true; - } - -}; - /*### ## npcs_rutgar_and_frankal ###*/ @@ -1508,7 +1434,6 @@ void AddSC_silithus() new npc_anachronos_quest_trigger(); new npc_anachronos_the_ancient(); new npc_qiraj_war_spawn(); - new npc_highlord_demitrian(); new npcs_rutgar_and_frankal(); new go_wind_stone(); } -- cgit v1.2.3 From 0b7a9a45594ba620ecc38756f5bffc9e7d2b2d5f Mon Sep 17 00:00:00 2001 From: Malcrom Date: Thu, 19 Dec 2013 22:14:24 -0330 Subject: DB/Misc: Three more creature moved to SAI only. --- sql/updates/world/2013_12_19_04_world_misc.sql | 28 +++++++++ .../scripts/Outland/zone_shadowmoon_valley.cpp | 72 +--------------------- 2 files changed, 29 insertions(+), 71 deletions(-) create mode 100644 sql/updates/world/2013_12_19_04_world_misc.sql (limited to 'src/server/scripts') diff --git a/sql/updates/world/2013_12_19_04_world_misc.sql b/sql/updates/world/2013_12_19_04_world_misc.sql new file mode 100644 index 00000000000..4c395accd53 --- /dev/null +++ b/sql/updates/world/2013_12_19_04_world_misc.sql @@ -0,0 +1,28 @@ +-- Caelyb +UPDATE `creature_template` SET AIName='' WHERE `entry`=4320; +DELETE FROM `smart_scripts` WHERE `entryorguid`=4320 AND `source_type`=0; + +-- Milli Featherwhistle +UPDATE `creature_template` SET ScriptName='' WHERE `entry`=7955; +-- Add Gossip Options +DELETE FROM `gossip_menu_option` WHERE `menu_id` IN (3186); +INSERT INTO `gossip_menu_option` (`menu_id`,`id`,`option_icon`,`option_text`,`option_id`,`npc_option_npcflag`,`action_menu_id`) VALUES +(3186,0,1, 'I would like to buy from you.',3,128,0); +-- Add Conditions +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=15 AND `SourceGroup`=3186; +INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES +-- Both of these must be true +(15,3186,0,0,0,16,0,8,0,0,0,0,0, '', 'Gossip Option - Show Option if Player is Gnome'), +(15,3186,0,0,0,5,0,54,128,0,1,0,0, '', 'Gossip Option - Show Option if player is Exalted with Gnomeregan'); + +-- Murkblood Overseer SAI +SET @ENTRY := 23309; +UPDATE `creature_template` SET `AIName`='SmartAI', `ScriptName`= '' WHERE `entry`=@ENTRY; +DELETE FROM `smart_scripts` WHERE `entryorguid`=@ENTRY AND `source_type`=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`,`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 +(@ENTRY,0,0,1,62,0,100,0,8697,0,0,0,11,41121,0,0,0,0,0,7,0,0,0,0,0,0,0,"Murkblood Overseer - On gossip Option select - cast spell"), +(@ENTRY,0,1,0,61,0,100,0,0,0,0,0,15,11082,0,0,0,0,0,7,0,0,0,0,0,0,0,"Murkblood Overseer - On gossip Option select - Complete quest"); +-- Add Conditions +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=15 AND `SourceGroup`=8697; +INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES +(15,8697,0,0,0,9,0,11082,0,0,0,0,0, '', 'Gossip Option - Show Option if Quest 11082 taken'); diff --git a/src/server/scripts/Outland/zone_shadowmoon_valley.cpp b/src/server/scripts/Outland/zone_shadowmoon_valley.cpp index 41abc490d2b..c8a2dfe03cd 100644 --- a/src/server/scripts/Outland/zone_shadowmoon_valley.cpp +++ b/src/server/scripts/Outland/zone_shadowmoon_valley.cpp @@ -19,7 +19,7 @@ /* ScriptData SDName: Shadowmoon_Valley SD%Complete: 100 -SDComment: Quest support: 10519, 10583, 10601, 10804, 10854, 10458, 10481, 10480, 11082, 10781, 10451. Vendor Drake Dealer Hurlunk. +SDComment: Quest support: 10519, 10583, 10601, 10804, 10854, 10458, 10481, 10480, 10781, 10451. Vendor Drake Dealer Hurlunk. SDCategory: Shadowmoon Valley EndScriptData */ @@ -28,7 +28,6 @@ npc_mature_netherwing_drake npc_enslaved_netherwing_drake npc_drake_dealer_hurlunk npcs_flanis_swiftwing_and_kagrosh -npc_murkblood_overseer npc_karynaku npc_oronok_tornheart npc_overlord_morghor @@ -492,74 +491,6 @@ public: } }; -/*###### -## npc_murkblood_overseer -######*/ - -#define QUEST_11082 11082 - -#define GOSSIP_HMO "I am here for you, overseer." -#define GOSSIP_SMO1 "How dare you question an overseer of the Dragonmaw!" -#define GOSSIP_SMO2 "Who speaks of me? What are you talking about, broken?" -#define GOSSIP_SMO3 "Continue please." -#define GOSSIP_SMO4 "Who are these bidders?" -#define GOSSIP_SMO5 "Well... yes." - -class npc_murkblood_overseer : public CreatureScript -{ -public: - npc_murkblood_overseer() : CreatureScript("npc_murkblood_overseer") { } - - bool OnGossipSelect(Player* player, Creature* creature, uint32 /*sender*/, uint32 action) OVERRIDE - { - player->PlayerTalkClass->ClearMenus(); - switch (action) - { - case GOSSIP_ACTION_INFO_DEF+1: - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_SMO1, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+2); - //correct id not known - player->SEND_GOSSIP_MENU(10940, creature->GetGUID()); - break; - case GOSSIP_ACTION_INFO_DEF+2: - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_SMO2, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+3); - //correct id not known - player->SEND_GOSSIP_MENU(10940, creature->GetGUID()); - break; - case GOSSIP_ACTION_INFO_DEF+3: - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_SMO3, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+4); - //correct id not known - player->SEND_GOSSIP_MENU(10940, creature->GetGUID()); - break; - case GOSSIP_ACTION_INFO_DEF+4: - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_SMO4, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+5); - //correct id not known - player->SEND_GOSSIP_MENU(10940, creature->GetGUID()); - break; - case GOSSIP_ACTION_INFO_DEF+5: - player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, GOSSIP_SMO5, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+6); - //correct id not known - player->SEND_GOSSIP_MENU(10940, creature->GetGUID()); - break; - case GOSSIP_ACTION_INFO_DEF+6: - //correct id not known - player->SEND_GOSSIP_MENU(10940, creature->GetGUID()); - creature->CastSpell(player, 41121, false); - player->AreaExploredOrEventHappens(QUEST_11082); - break; - } - return true; - } - - bool OnGossipHello(Player* player, Creature* creature) OVERRIDE - { - if (player->GetQuestStatus(QUEST_11082) == QUEST_STATUS_INCOMPLETE) - player->ADD_GOSSIP_ITEM(0, GOSSIP_HMO, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1); - - player->SEND_GOSSIP_MENU(10940, creature->GetGUID()); - return true; - } -}; - /*###### ## npc_oronok ######*/ @@ -2011,7 +1942,6 @@ void AddSC_shadowmoon_valley() new npc_dragonmaw_peon(); new npc_drake_dealer_hurlunk(); new npcs_flanis_swiftwing_and_kagrosh(); - new npc_murkblood_overseer(); new npc_karynaku(); new npc_oronok_tornheart(); new npc_overlord_morghor(); -- cgit v1.2.3