From 0eb26feaf2e1ccc9ae9fc60c864d8f6b197aa8d9 Mon Sep 17 00:00:00 2001 From: Gacko Date: Mon, 31 Dec 2012 01:17:42 +0100 Subject: DB/SAI: Reforging the sword --- sql/updates/world/2012_12_31_00_world_sai.sql | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 sql/updates/world/2012_12_31_00_world_sai.sql (limited to 'sql') diff --git a/sql/updates/world/2012_12_31_00_world_sai.sql b/sql/updates/world/2012_12_31_00_world_sai.sql new file mode 100644 index 00000000000..9e30c29f784 --- /dev/null +++ b/sql/updates/world/2012_12_31_00_world_sai.sql @@ -0,0 +1,23 @@ +-- Myralion Sunblaze +DELETE FROM `smart_scripts` WHERE `entryorguid`=36642 AND `source_type`=0; +INSERT INTO `smart_scripts`(`entryorguid`,`id`,`link`,`event_type`,`event_param1`,`action_type`,`action_param1`,`action_param2`,`target_type`,`comment`) VALUES +(36642,0,1,20,24558,83,2,0,1,'Myralion Sunblaze - Remove gossip and quest giver flag on quest complete'), +(36642,1,0,61,0,53,0,36642,1,'Myralion Sunblaze - Start WP on quest complete'), +(36642,2,3,40,1,54,10000,0,1,'Myralion Sunblaze - Stop WP on point reached'), -- SMART_ACTION_WP_STOP would break the following SMART_EVENT_WAYPOINT_REACHED. +(36642,3,0,61,0,80,3664200,0,1,'Myralion Sunblaze - Start timed event on point reached'), +(36642,4,0,38,50,43,0,28889,1,'Myralion Sunblaze - Mount on data set'), +(36642,5,6,40,2,1,3,0,1,'Myralion Sunblaze - Say 3 event on home reached'), +(36642,6,7,61,0,66,0,0,1,'Myralion Sunblaze - restore orientation event on home reached'), +(36642,7,0,61,0,81,2,0,1,'Myralion Sunblaze - restore npc flags event on home reached'); + +-- Caladis Brightspear +DELETE FROM `smart_scripts` WHERE `entryorguid`=36624 AND `source_type`=0; +INSERT INTO `smart_scripts`(`entryorguid`,`id`,`link`,`event_type`,`event_param1`,`action_type`,`action_param1`,`action_param2`,`target_type`,`comment`) VALUES +(36624,0,1,20,24454,83,2,0,1,'Caladis Brightspear - Remove gossip and quest giver flag on quest complete'), +(36624,1,0,61,0,53,0,36624,1,'Caladis Brightspear - Start WP on quest complete'), +(36624,2,3,40,1,54,10000,0,1,'Caladis Brightspear - Stop WP on point reached'), -- SMART_ACTION_WP_STOP would break the following SMART_EVENT_WAYPOINT_REACHED. +(36624,3,0,61,0,80,3662400,0,1,'Caladis Brightspear - Start timed event on point reached'), +(36624,4,0,38,50,43,0,28888,1,'Caladis Brightspear - Mount on data set'), +(36624,5,6,40,2,1,3,0,1,'Caladis Brightspear - Say 3 event on home reached'), +(36624,6,7,61,0,66,0,0,1,'Caladis Brightspear - restore orientation event on home reached'), +(36624,7,0,61,0,81,2,0,1,'Caladis Brightspear - restore npc flags event on home reached'); -- cgit v1.2.3 From edb90f957baa9d9bb83f4477954593117e9fa858 Mon Sep 17 00:00:00 2001 From: Gacko Date: Mon, 31 Dec 2012 15:03:19 +0100 Subject: Core/DB: Haaleshi Altar - Prevent crash due to spamming GossipHello - Convert core script to SAI - Solves #8220 --- sql/updates/world/2012_12_31_01_world_sai.sql | 13 +++++++++++++ src/server/scripts/Outland/hellfire_peninsula.cpp | 21 +-------------------- 2 files changed, 14 insertions(+), 20 deletions(-) create mode 100644 sql/updates/world/2012_12_31_01_world_sai.sql (limited to 'sql') diff --git a/sql/updates/world/2012_12_31_01_world_sai.sql b/sql/updates/world/2012_12_31_01_world_sai.sql new file mode 100644 index 00000000000..96cf4d1e724 --- /dev/null +++ b/sql/updates/world/2012_12_31_01_world_sai.sql @@ -0,0 +1,13 @@ +-- Assign SmartGameObjectAI +UPDATE `gameobject_template` SET `AIName`='SmartGameObjectAI',`ScriptName`='' WHERE `entry`=181606; + +-- SmartGameObjectAI for summoning Aeranas at Haaleshi Altar +DELETE FROM `smart_scripts` WHERE `entryorguid`=181606 AND `source_type`=1; +INSERT INTO `smart_scripts`(`entryorguid`,`source_type`,`id`,`event_type`,`action_type`,`action_param1`,`action_param2`,`action_param3`,`target_type`,`target_x`,`target_y`,`target_z`,`target_o`,`comment`) VALUES +(181606,1,0,64,12,17085,4,60000,8,-1321.79,4043.8,116.24,1.25,'Haaleshi Altar - On gossip hello - Summon Aeranas'); + +-- Aeranas should only be summonened if there is not already one in range +DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=22 AND `SourceEntry`=181606 AND `SourceId`=1; +INSERT INTO `conditions`(`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`NegativeCondition`,`Comment`) VALUES +(22,1,181606,1,29,1,17085,50,1,'Haaleshi Altar - Only summon Aeranas if there is not already one in range'), +(22,1,181606,1,28,0,9418,0,0,'Haaleshi Altar - Only summon Aeranas if invoker has completed quest Avruus Orb (Is auto-completed)'); diff --git a/src/server/scripts/Outland/hellfire_peninsula.cpp b/src/server/scripts/Outland/hellfire_peninsula.cpp index 7ac90320347..24d00235ab8 100644 --- a/src/server/scripts/Outland/hellfire_peninsula.cpp +++ b/src/server/scripts/Outland/hellfire_peninsula.cpp @@ -53,9 +53,7 @@ enum eAeranas FACTION_FRIENDLY = 35, SPELL_ENVELOPING_WINDS = 15535, - SPELL_SHOCK = 12553, - - C_AERANAS = 17085 + SPELL_SHOCK = 12553 }; class npc_aeranas : public CreatureScript @@ -204,22 +202,6 @@ public: }; }; -/*###### -## go_haaleshi_altar -######*/ - -class go_haaleshi_altar : public GameObjectScript -{ -public: - go_haaleshi_altar() : GameObjectScript("go_haaleshi_altar") { } - - bool OnGossipHello(Player* /*player*/, GameObject* go) - { - go->SummonCreature(C_AERANAS, -1321.79f, 4043.80f, 116.24f, 1.25f, TEMPSUMMON_TIMED_DESPAWN, 180000); - return false; - } -}; - /*###### ## npc_naladu ######*/ @@ -532,7 +514,6 @@ void AddSC_hellfire_peninsula() { new npc_aeranas(); new npc_ancestral_wolf(); - new go_haaleshi_altar(); new npc_naladu(); new npc_tracy_proudwell(); new npc_trollbane(); -- cgit v1.2.3