mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-20 17:27:36 +01:00
Script/Trainer: move alchemy specialization-related script to DB and fix some wrong texts
This commit is contained in:
@@ -1,2 +0,0 @@
|
||||
--
|
||||
UPDATE `creature_template` SET `type_flags`=`type_flags`&~134217728 WHERE `npcflag`>16 AND `gossip_menu_id`!= 0 AND `type_flags`&134217728;
|
||||
@@ -1,3 +1,4 @@
|
||||
/*
|
||||
-- Add waypoints to Hezrul Bloodmark
|
||||
SET @GUID := 13990;
|
||||
SET @PATHID := @GUID * 10;
|
||||
@@ -116,3 +117,4 @@ INSERT INTO `waypoint_data` (`id`, `point`, `position_x`, `position_y`, `positio
|
||||
(@PATHID, 99, -1197.42, -2061.97, 93.0869, 0.66061),
|
||||
(@PATHID, 100, -1191.3, -2057.78, 93.244, 0.558508),
|
||||
(@PATHID, 101, -1179.36, -2050.48, 93.4187, 0.566362);
|
||||
*/
|
||||
@@ -1,3 +1,4 @@
|
||||
/*
|
||||
DELETE FROM `quest_greeting` WHERE `ID` IN (234, 235, 237, 238, 241, 253, 261, 342, 714, 786, 823, 1343, 1374, 1495, 1499, 1500, 1515, 1518, 2519, 2546, 2930, 3139, 3188, 3338, 3391, 3419, 3446, 3453, 3567, 3616, 3649, 4077, 4453, 5887, 6171, 7407, 7876, 27337);
|
||||
INSERT INTO `quest_greeting` (`ID`, `Type`, `GreetEmoteType`, `GreetEmoteDelay`, `Greeting`, `VerifiedBuild`) VALUES
|
||||
(234, 0, 1, 0, "A foul corruption has crept into Westfall. While I was upholding my duty on the battlefields of Lordaeron these honest farms were overrun and made into hide-outs for thugs and murderers. The People's Militia needs your help.", 0),
|
||||
@@ -42,3 +43,4 @@ INSERT INTO `quest_greeting` (`ID`, `Type`, `GreetEmoteType`, `GreetEmoteDelay`,
|
||||
UPDATE `creature_template` SET `gossip_menu_id`=0, `npcflag`=2 WHERE `entry` IN (786, 1343);
|
||||
DELETE FROM `gossip_menu` WHERE `MenuID` IN (694, 10893);
|
||||
DELETE FROM `npc_text` WHERE `ID`=1244;
|
||||
*/
|
||||
@@ -1,6 +1,8 @@
|
||||
/*
|
||||
|
||||
DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=14 AND `SourceGroup`=21;
|
||||
DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=15 AND `SourceGroup`=21 AND `SourceEntry`=0;
|
||||
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
|
||||
(14,21,519,0,0,8,0,894,0,0,1,0,0,"","Show gossip text if Samophlange not rewarded"),
|
||||
(15,21,0,0,0,8,0,894,0,0,1,0,0,"","Show gossip option if Samophlange not rewarded");
|
||||
*/
|
||||
@@ -1,4 +1,6 @@
|
||||
/*
|
||||
--
|
||||
UPDATE `gossip_menu_option` SET `OptionBroadcastTextID`=2466 WHERE `MenuID`=21 AND `OptionID`=0;
|
||||
UPDATE `conditions` SET ConditionValue1=858 WHERE `SourceTypeOrReferenceId`=14 AND `SourceGroup`=21;
|
||||
UPDATE `conditions` SET ConditionValue1=858 WHERE `SourceTypeOrReferenceId`=15 AND `SourceGroup`=21 AND `SourceEntry`=0;
|
||||
*/
|
||||
@@ -1,5 +1,7 @@
|
||||
/*
|
||||
--
|
||||
DELETE FROM `creature` WHERE `id`=12580;
|
||||
DELETE FROM `creature_addon` WHERE `guid`=86900;
|
||||
DELETE FROM `waypoint_data` WHERE `id`=869000;
|
||||
DELETE FROM `spawn_group` WHERE `spawnId`=86900;
|
||||
*/
|
||||
@@ -1,3 +1,4 @@
|
||||
/*
|
||||
--
|
||||
SET @GUID := 81116; -- Need 6
|
||||
SET @EVENT_ID := 74;
|
||||
@@ -120,3 +121,4 @@ INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Lan
|
||||
(35589, 1, 0, "The champions of the world's great nations have gathered at the Argent Tournament Grounds in northeastern Icecrown to face all challengers.", 12, 0, 100, 0, 0, 0, 35871, 0, "Jaeren Sunsworn"),
|
||||
(35604, 0, 0, "The Argent Crusade invites you to test your skills in honorable combat against other heroes of Azeroth at the Argent Tournament.", 12, 0, 100, 0, 0, 0, 35896, 0, "Arelas Brightstar"),
|
||||
(35604, 1, 0, "The champions of the world's great nations have gathered at the Argent Tournament Grounds in northeastern Icecrown to face all challengers.", 12, 0, 100, 0, 0, 0, 35871, 0, "Arelas Brightstar");
|
||||
*/
|
||||
@@ -1,3 +1,4 @@
|
||||
/*
|
||||
--
|
||||
UPDATE `creature_template` SET `npcflag`=2, `gossip_menu_id`=0 WHERE `entry`=240;
|
||||
DELETE FROM `gossip_menu` WHERE `MenuID`=11611;
|
||||
@@ -6,3 +7,4 @@ DELETE FROM `npc_text` WHERE `ID`=16211;
|
||||
DELETE FROM `quest_greeting` WHERE `ID`=240;
|
||||
INSERT INTO `quest_greeting` (`ID`, `Type`, `GreetEmoteType`, `GreetEmoteDelay`, `Greeting`, `VerifiedBuild`) VALUES
|
||||
(240, 0, 0, 0, "Ach, it's hard enough keeping order around here without all these new troubles popping up! I hope you have good news, $n...", 0);
|
||||
*/
|
||||
@@ -0,0 +1,2 @@
|
||||
--
|
||||
-- UPDATE `creature_template` SET `type_flags`=`type_flags`&~134217728 WHERE `npcflag`>16 AND `gossip_menu_id`!= 0 AND `type_flags`&134217728;
|
||||
@@ -1,3 +1,4 @@
|
||||
/*
|
||||
-- The Missing Diplomat, id 1265
|
||||
|
||||
DELETE FROM `areatrigger_involvedrelation` WHERE `id` in (302,1667);
|
||||
@@ -14,3 +15,4 @@ DELETE FROM `smart_scripts` WHERE entryorguid = 4967 AND id in (2,3);
|
||||
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
|
||||
(4967, 0, 2, 3, 20, 0, 100, 0, 1265, 0, 0, 0, 11, 7120, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, "Archmage Tervosh - On Quest 'The Missing Diplomat' Finished - Cast Proudmoore's Defense"),
|
||||
(4967, 0, 3, 0, 61, 0, 100, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, "Archmage Tervosh - On Quest 'The Missing Diplomat' Finished - Say Line 0");
|
||||
*/
|
||||
@@ -0,0 +1,112 @@
|
||||
--
|
||||
SET @TEXTID := 11074;
|
||||
DELETE FROM `npc_text` WHERE `ID`=@TEXTID;
|
||||
INSERT INTO `npc_text` (`ID`, `text0_1`, `BroadcastTextID0`) VALUES
|
||||
(@TEXTID, "Forgetting your skill in Potion Mastery is not something to do lightly.$B$BAre you absolutely sure?", 21870);
|
||||
|
||||
SET @MENUID := 21402; -- Need 3
|
||||
DELETE FROM `gossip_menu` WHERE `MenuID` BETWEEN @MENUID AND @MENUID+2;
|
||||
INSERT INTO `gossip_menu` (`MenuID`, `TextID`, `VerifiedBuild`) VALUES
|
||||
(@MENUID, 11076, 0), -- Transmutation
|
||||
(@MENUID+1, 11075, 0), -- Elixir
|
||||
(@MENUID+2, @TEXTID, 0); -- Potion
|
||||
|
||||
DELETE FROM `gossip_menu_option` WHERE `MenuID` IN (8542, @MENUID, 8540, @MENUID+1, 7571, @MENUID+2);
|
||||
INSERT INTO `gossip_menu_option` (`MenuID`, `OptionID`, `OptionIcon`, `OptionText`, `OptionBroadcastTextID`, `OptionType`, `OptionNpcFlag`, `ActionMenuID`, `ActionPoiID`, `BoxCoded`, `BoxMoney`, `BoxText`, `BoxBroadcastTextID`, `VerifiedBuild`) VALUES
|
||||
(8542, 0, 0, "I wish to unlearn Transmutation Mastery.", 21876, 1, 1, @MENUID, 0, 0, 0, "", 0, 0),
|
||||
(8542, 1, 0, "I've trained as an alchemist once again. I wish to specialize in transmutations.", 20292, 1, 1, 0, 0, 0, 0, "", 0, 0),
|
||||
(@MENUID, 0, 0, "I've made up my mind. Make me forget my alchemy mastery!", 21873, 1, 1, 0, 0, 0, 1500000, "Forgetting your knowledge is an expensive endeavor. Are you willing to pay the cost?", 21569, 0),
|
||||
(8540, 0, 0, "I wish to unlearn Elixir Mastery.", 21875, 1, 1, @MENUID+1, 0, 0, 0, "", 0, 0),
|
||||
(8540, 1, 0, "I've trained as an alchemist once again. I wish to specialize in elixirs.", 20289, 1, 1, 0, 0, 0, 0, "", 0, 0),
|
||||
(@MENUID+1, 0, 0, "I've made up my mind. Make me forget my alchemy mastery!", 21873, 1, 1, 0, 0, 0, 1500000, "Forgetting your knowledge is an expensive endeavor. Are you willing to pay the cost?", 21569, 0),
|
||||
(7571, 0, 0, "I wish to unlearn Potion Mastery.", 21874, 1, 1, @MENUID+2, 0, 0, 0, "", 0, 0),
|
||||
(7571, 1, 0, "I've trained as an alchemist once again. I wish to specialize in potions.", 20287, 1, 1, 0, 0, 0, 0, "", 0, 0),
|
||||
(@MENUID+2, 0, 0, "I've made up my mind. Make me forget my alchemy mastery!", 21873, 1, 1, 0, 0, 0, 1500000, "Forgetting your knowledge is an expensive endeavor. Are you willing to pay the cost?", 21569, 0);
|
||||
|
||||
DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=15 AND `SourceGroup` IN (8542, 8540, 7571);
|
||||
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ErrorTextId`, `ScriptName`, `Comment`) VALUES
|
||||
-- Unlearn Transmutation
|
||||
(15, 8542, 0, 0, 0, 27, 0, 68, 3, 0, 0, 0, 0, "", "Gossip option requires level 68 or higher"),
|
||||
(15, 8542, 0, 0, 0, 7, 0, 171, 350, 0, 0, 0, 0, "", "Gossip option requires an Alchemy skill of 350 or higher"),
|
||||
(15, 8542, 0, 0, 0, 25, 0, 28672, 0, 0, 0, 0, 0, "", "Gossip option requires player to have the spell 'Transmutation Master' learned"),
|
||||
-- Learn Transmutation
|
||||
(15, 8542, 1, 0, 0, 27, 0, 68, 3, 0, 0, 0, 0, "", "Gossip option requires level 68 or higher"),
|
||||
(15, 8542, 1, 0, 0, 7, 0, 171, 350, 0, 0, 0, 0, "", "Gossip option requires an Alchemy skill of 350 or higher"),
|
||||
(15, 8542, 1, 0, 0, 25, 0, 28672, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Transmutation Master' NOT learned"),
|
||||
(15, 8542, 1, 0, 0, 25, 0, 28677, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Elixir Master' NOT learned"),
|
||||
(15, 8542, 1, 0, 0, 25, 0, 28675, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Potion Master' NOT learned"),
|
||||
(15, 8542, 1, 0, 0, 8, 0, 10899, 0, 0, 0, 0, 0, "", "Gossip option requires player to have the quest 'Master of Transmutation' rewarded OR"),
|
||||
(15, 8542, 1, 0, 1, 27, 0, 68, 3, 0, 0, 0, 0, "", "Gossip option requires level 68 or higher"),
|
||||
(15, 8542, 1, 0, 1, 7, 0, 171, 350, 0, 0, 0, 0, "", "Gossip option requires an Alchemy skill of 350 or higher"),
|
||||
(15, 8542, 1, 0, 1, 25, 0, 28672, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Transmutation Master' NOT learned"),
|
||||
(15, 8542, 1, 0, 1, 25, 0, 28677, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Elixir Master' NOT learned"),
|
||||
(15, 8542, 1, 0, 1, 25, 0, 28675, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Potion Master' NOT learned"),
|
||||
(15, 8542, 1, 0, 1, 8, 0, 10902, 0, 0, 0, 0, 0, "", "Gossip option requires player to have the quest 'Master of Elixirs' rewarded OR"),
|
||||
(15, 8542, 1, 0, 2, 27, 0, 68, 3, 0, 0, 0, 0, "", "Gossip option requires level 68 or higher"),
|
||||
(15, 8542, 1, 0, 2, 7, 0, 171, 350, 0, 0, 0, 0, "", "Gossip option requires an Alchemy skill of 350 or higher"),
|
||||
(15, 8542, 1, 0, 2, 25, 0, 28672, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Transmutation Master' NOT learned"),
|
||||
(15, 8542, 1, 0, 2, 25, 0, 28677, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Elixir Master' NOT learned"),
|
||||
(15, 8542, 1, 0, 2, 25, 0, 28675, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Potion Master' NOT learned"),
|
||||
(15, 8542, 1, 0, 2, 8, 0, 10897, 0, 0, 0, 0, 0, "", "Gossip option requires player to have the quest 'Master of Potions' rewarded"),
|
||||
-- Unlearn Elixir
|
||||
(15, 8540, 0, 0, 0, 27, 0, 68, 3, 0, 0, 0, 0, "", "Gossip option requires level 68 or higher"),
|
||||
(15, 8540, 0, 0, 0, 7, 0, 171, 350, 0, 0, 0, 0, "", "Gossip option requires an Alchemy skill of 350 or higher"),
|
||||
(15, 8540, 0, 0, 0, 25, 0, 28677, 0, 0, 0, 0, 0, "", "Gossip option requires player to have the spell 'Elixir Master' learned"),
|
||||
-- Learn Elixir
|
||||
(15, 8540, 1, 0, 0, 27, 0, 68, 3, 0, 0, 0, 0, "", "Gossip option requires level 68 or higher"),
|
||||
(15, 8540, 1, 0, 0, 7, 0, 171, 350, 0, 0, 0, 0, "", "Gossip option requires an Alchemy skill of 350 or higher"),
|
||||
(15, 8540, 1, 0, 0, 25, 0, 28672, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Transmutation Master' NOT learned"),
|
||||
(15, 8540, 1, 0, 0, 25, 0, 28677, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Elixir Master' NOT learned"),
|
||||
(15, 8540, 1, 0, 0, 25, 0, 28675, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Potion Master' NOT learned"),
|
||||
(15, 8540, 1, 0, 0, 8, 0, 10899, 0, 0, 0, 0, 0, "", "Gossip option requires player to have the quest 'Master of Transmutation' rewarded OR"),
|
||||
(15, 8540, 1, 0, 1, 27, 0, 68, 3, 0, 0, 0, 0, "", "Gossip option requires level 68 or higher"),
|
||||
(15, 8540, 1, 0, 1, 7, 0, 171, 350, 0, 0, 0, 0, "", "Gossip option requires an Alchemy skill of 350 or higher"),
|
||||
(15, 8540, 1, 0, 1, 25, 0, 28672, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Transmutation Master' NOT learned"),
|
||||
(15, 8540, 1, 0, 1, 25, 0, 28677, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Elixir Master' NOT learned"),
|
||||
(15, 8540, 1, 0, 1, 25, 0, 28675, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Potion Master' NOT learned"),
|
||||
(15, 8540, 1, 0, 1, 8, 0, 10902, 0, 0, 0, 0, 0, "", "Gossip option requires player to have the quest 'Master of Elixirs' rewarded OR"),
|
||||
(15, 8540, 1, 0, 2, 27, 0, 68, 3, 0, 0, 0, 0, "", "Gossip option requires level 68 or higher"),
|
||||
(15, 8540, 1, 0, 2, 7, 0, 171, 350, 0, 0, 0, 0, "", "Gossip option requires an Alchemy skill of 350 or higher"),
|
||||
(15, 8540, 1, 0, 2, 25, 0, 28672, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Transmutation Master' NOT learned"),
|
||||
(15, 8540, 1, 0, 2, 25, 0, 28677, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Elixir Master' NOT learned"),
|
||||
(15, 8540, 1, 0, 2, 25, 0, 28675, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Potion Master' NOT learned"),
|
||||
(15, 8540, 1, 0, 2, 8, 0, 10897, 0, 0, 0, 0, 0, "", "Gossip option requires player to have the quest 'Master of Potions' rewarded"),
|
||||
-- Unlearn Potion
|
||||
(15, 7571, 0, 0, 0, 27, 0, 68, 3, 0, 0, 0, 0, "", "Gossip option requires level 68 or higher"),
|
||||
(15, 7571, 0, 0, 0, 7, 0, 171, 350, 0, 0, 0, 0, "", "Gossip option requires an Alchemy skill of 350 or higher"),
|
||||
(15, 7571, 0, 0, 0, 25, 0, 28675, 0, 0, 0, 0, 0, "", "Gossip option requires player to have the spell 'Potion Master' learned"),
|
||||
-- Learn Potion
|
||||
(15, 7571, 1, 0, 0, 27, 0, 68, 3, 0, 0, 0, 0, "", "Gossip option requires level 68 or higher"),
|
||||
(15, 7571, 1, 0, 0, 7, 0, 171, 350, 0, 0, 0, 0, "", "Gossip option requires an Alchemy skill of 350 or higher"),
|
||||
(15, 7571, 1, 0, 0, 25, 0, 28672, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Transmutation Master' NOT learned"),
|
||||
(15, 7571, 1, 0, 0, 25, 0, 28677, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Elixir Master' NOT learned"),
|
||||
(15, 7571, 1, 0, 0, 25, 0, 28675, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Potion Master' NOT learned"),
|
||||
(15, 7571, 1, 0, 0, 8, 0, 10899, 0, 0, 0, 0, 0, "", "Gossip option requires player to have the quest 'Master of Transmutation' rewarded OR"),
|
||||
(15, 7571, 1, 0, 1, 27, 0, 68, 3, 0, 0, 0, 0, "", "Gossip option requires level 68 or higher"),
|
||||
(15, 7571, 1, 0, 1, 7, 0, 171, 350, 0, 0, 0, 0, "", "Gossip option requires an Alchemy skill of 350 or higher"),
|
||||
(15, 7571, 1, 0, 1, 25, 0, 28672, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Transmutation Master' NOT learned"),
|
||||
(15, 7571, 1, 0, 1, 25, 0, 28677, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Elixir Master' NOT learned"),
|
||||
(15, 7571, 1, 0, 1, 25, 0, 28675, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Potion Master' NOT learned"),
|
||||
(15, 7571, 1, 0, 1, 8, 0, 10902, 0, 0, 0, 0, 0, "", "Gossip option requires player to have the quest 'Master of Elixirs' rewarded OR"),
|
||||
(15, 7571, 1, 0, 2, 27, 0, 68, 3, 0, 0, 0, 0, "", "Gossip option requires level 68 or higher"),
|
||||
(15, 7571, 1, 0, 2, 7, 0, 171, 350, 0, 0, 0, 0, "", "Gossip option requires an Alchemy skill of 350 or higher"),
|
||||
(15, 7571, 1, 0, 2, 25, 0, 28672, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Transmutation Master' NOT learned"),
|
||||
(15, 7571, 1, 0, 2, 25, 0, 28677, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Elixir Master' NOT learned"),
|
||||
(15, 7571, 1, 0, 2, 25, 0, 28675, 0, 0, 1, 0, 0, "", "Gossip option requires player to have the spell 'Potion Master' NOT learned"),
|
||||
(15, 7571, 1, 0, 2, 8, 0, 10897, 0, 0, 0, 0, 0, "", "Gossip option requires player to have the quest 'Master of Potions' rewarded");
|
||||
|
||||
UPDATE `creature_template` SET `AIName`="SmartAI", `ScriptName`="" WHERE `entry` IN (22427, 19052, 17909);
|
||||
DELETE FROM `smart_scripts` WHERE `entryorguid` IN (22427, 19052, 17909) 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
|
||||
(22427, 0, 0, 1, 62, 0, 100, 0, @MENUID, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, "Zarevhi - On Gossip Option 0 Selected - Close Gossip"),
|
||||
(22427, 0, 1, 0, 61, 0, 100, 0, 0, 0, 0, 0, 11, 41565, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, "Zarevhi - On Gossip Option 0 Selected - Cast 'Unlearn Transmutation Mastery'"),
|
||||
(22427, 0, 2, 3, 62, 0, 100, 0, 8542, 1, 0, 0, 72, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, "Zarevhi - On Gossip Option 1 Selected - Close Gossip"),
|
||||
(22427, 0, 3, 0, 61, 0, 100, 0, 0, 0, 0, 0, 85, 28674, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, "Zarevhi - On Gossip Option 1 Selected - Invoker Cast 'Transmutation Master'"),
|
||||
(19052, 0, 0, 1, 62, 0, 100, 0, @MENUID+1, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, "Lorokeem - On Gossip Option 0 Selected - Close Gossip"),
|
||||
(19052, 0, 1, 0, 61, 0, 100, 0, 0, 0, 0, 0, 11, 41564, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, "Lorokeem - On Gossip Option 0 Selected - Cast 'Unlearn Elixir Mastery'"),
|
||||
(19052, 0, 2, 3, 62, 0, 100, 0, 8540, 1, 0, 0, 72, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, "Lorokeem - On Gossip Option 1 Selected - Close Gossip"),
|
||||
(19052, 0, 3, 0, 61, 0, 100, 0, 0, 0, 0, 0, 85, 28678, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, "Lorokeem - On Gossip Option 1 Selected - Invoker Cast 'Elixir Master'"),
|
||||
(17909, 0, 0, 1, 62, 0, 100, 0, @MENUID+2, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, "Lauranna Thar'well - On Gossip Option 0 Selected - Close Gossip"),
|
||||
(17909, 0, 1, 0, 61, 0, 100, 0, 0, 0, 0, 0, 11, 41563, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, "Lauranna Thar'well - On Gossip Option 0 Selected - Cast 'Unlearn Potion Mastery'"),
|
||||
(17909, 0, 2, 3, 62, 0, 100, 0, 7571, 1, 0, 0, 72, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, "Lauranna Thar'well - On Gossip Option 1 Selected - Close Gossip"),
|
||||
(17909, 0, 3, 0, 61, 0, 100, 0, 0, 0, 0, 0, 85, 28676, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, "Lauranna Thar'well - On Gossip Option 1 Selected - Invoker Cast 'Potion Master'");
|
||||
@@ -60,15 +60,6 @@ A few notes for future developement:
|
||||
# gossip item and box texts
|
||||
###*/
|
||||
|
||||
#define GOSSIP_LEARN_POTION "Please teach me how to become a Master of Potions, Lauranna"
|
||||
#define GOSSIP_UNLEARN_POTION "I wish to unlearn Potion Mastery"
|
||||
#define GOSSIP_LEARN_TRANSMUTE "Please teach me how to become a Master of Transmutations, Zarevhi"
|
||||
#define GOSSIP_UNLEARN_TRANSMUTE "I wish to unlearn Transmutation Mastery"
|
||||
#define GOSSIP_LEARN_ELIXIR "Please teach me how to become a Master of Elixirs, Lorokeem"
|
||||
#define GOSSIP_UNLEARN_ELIXIR "I wish to unlearn Elixir Mastery"
|
||||
|
||||
#define BOX_UNLEARN_ALCHEMY_SPEC "Do you really want to unlearn your alchemy specialty and lose all associated recipes? \n Cost: "
|
||||
|
||||
#define GOSSIP_WEAPON_LEARN "Please teach me how to become a Weaponsmith"
|
||||
#define GOSSIP_WEAPON_UNLEARN "I wish to unlearn the art of Weaponsmithing"
|
||||
#define GOSSIP_ARMOR_LEARN "Please teach me how to become a Armorsmith"
|
||||
@@ -158,19 +149,7 @@ enum ProfessionSpells
|
||||
|
||||
S_UNLEARN_SPELLFIRE = 41299,
|
||||
S_UNLEARN_MOONCLOTH = 41558,
|
||||
S_UNLEARN_SHADOWEAVE = 41559,
|
||||
|
||||
S_TRANSMUTE = 28672,
|
||||
S_ELIXIR = 28677,
|
||||
S_POTION = 28675,
|
||||
|
||||
S_LEARN_TRANSMUTE = 28674,
|
||||
S_LEARN_ELIXIR = 28678,
|
||||
S_LEARN_POTION = 28676,
|
||||
|
||||
S_UNLEARN_TRANSMUTE = 41565,
|
||||
S_UNLEARN_ELIXIR = 41564,
|
||||
S_UNLEARN_POTION = 41563,
|
||||
S_UNLEARN_SHADOWEAVE = 41559
|
||||
};
|
||||
|
||||
/*###
|
||||
@@ -178,11 +157,6 @@ enum ProfessionSpells
|
||||
###*/
|
||||
enum SpecializationTrainers
|
||||
{
|
||||
/* Alchemy */
|
||||
N_TRAINER_TRANSMUTE = 22427, // Zarevhi
|
||||
N_TRAINER_ELIXIR = 19052, // Lorokeem
|
||||
N_TRAINER_POTION = 17909, // Lauranna Thar'well
|
||||
|
||||
/* Blacksmithing */
|
||||
N_TRAINER_SMITHOMNI1 = 11145, // Myolor Sunderfury
|
||||
N_TRAINER_SMITHOMNI2 = 11176, // Krathok Moltenfist
|
||||
@@ -208,27 +182,16 @@ enum SpecializationTrainers
|
||||
N_TRAINER_SHADOWEAVE = 22212, // Andrion Darkspinner
|
||||
};
|
||||
|
||||
/*###
|
||||
# specialization quests
|
||||
###*/
|
||||
enum SpecializationQuests
|
||||
{
|
||||
/* Alchemy */
|
||||
Q_MASTER_TRANSMUTE = 10899,
|
||||
Q_MASTER_ELIXIR = 10902,
|
||||
Q_MASTER_POTION = 10897,
|
||||
};
|
||||
|
||||
/*###
|
||||
# formulas to calculate unlearning cost
|
||||
###*/
|
||||
|
||||
int32 DoLearnCost(Player* /*player*/) //tailor, alchemy
|
||||
int32 DoLearnCost(Player* /*player*/) //tailor
|
||||
{
|
||||
return 200000;
|
||||
}
|
||||
|
||||
int32 DoHighUnlearnCost(Player* /*player*/) //tailor, alchemy
|
||||
int32 DoHighUnlearnCost(Player* /*player*/) //tailor
|
||||
{
|
||||
return 1500000;
|
||||
}
|
||||
@@ -409,171 +372,6 @@ void ProcessUnlearnAction(Player* player, Creature* creature, uint32 spellId, ui
|
||||
CloseGossipMenuFor(player);
|
||||
}
|
||||
|
||||
/*###
|
||||
# start menues alchemy
|
||||
###*/
|
||||
|
||||
class npc_prof_alchemy : public CreatureScript
|
||||
{
|
||||
public:
|
||||
npc_prof_alchemy() : CreatureScript("npc_prof_alchemy") { }
|
||||
|
||||
inline bool HasAlchemySpell(Player* player)
|
||||
{
|
||||
return (player->HasSpell(S_TRANSMUTE) || player->HasSpell(S_ELIXIR) || player->HasSpell(S_POTION));
|
||||
}
|
||||
|
||||
bool OnGossipHello(Player* player, Creature* creature) override
|
||||
{
|
||||
if (creature->IsQuestGiver())
|
||||
player->PrepareQuestMenu(creature->GetGUID());
|
||||
|
||||
if (creature->IsVendor())
|
||||
AddGossipItemFor(player, GOSSIP_ICON_VENDOR, GOSSIP_TEXT_BROWSE_GOODS, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_TRADE);
|
||||
|
||||
if (creature->IsTrainer())
|
||||
AddGossipItemFor(player, GOSSIP_ICON_TRAINER, GOSSIP_TEXT_TRAIN, GOSSIP_SENDER_MAIN, GOSSIP_ACTION_TRAIN);
|
||||
|
||||
if (player->HasSkill(SKILL_ALCHEMY) && player->GetBaseSkillValue(SKILL_ALCHEMY) >= 350 && player->getLevel() > 67)
|
||||
{
|
||||
if (player->GetQuestRewardStatus(Q_MASTER_TRANSMUTE) || player->GetQuestRewardStatus(Q_MASTER_ELIXIR) || player->GetQuestRewardStatus(Q_MASTER_POTION))
|
||||
{
|
||||
switch (creature->GetEntry())
|
||||
{
|
||||
case N_TRAINER_TRANSMUTE: //Zarevhi
|
||||
if (!HasAlchemySpell(player))
|
||||
AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_LEARN_TRANSMUTE, GOSSIP_SENDER_LEARN, GOSSIP_ACTION_INFO_DEF + 1);
|
||||
if (player->HasSpell(S_TRANSMUTE))
|
||||
AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_UNLEARN_TRANSMUTE, GOSSIP_SENDER_UNLEARN, GOSSIP_ACTION_INFO_DEF + 4);
|
||||
break;
|
||||
case N_TRAINER_ELIXIR: //Lorokeem
|
||||
if (!HasAlchemySpell(player))
|
||||
AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_LEARN_ELIXIR, GOSSIP_SENDER_LEARN, GOSSIP_ACTION_INFO_DEF + 2);
|
||||
if (player->HasSpell(S_ELIXIR))
|
||||
AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_UNLEARN_ELIXIR, GOSSIP_SENDER_UNLEARN, GOSSIP_ACTION_INFO_DEF + 5);
|
||||
break;
|
||||
case N_TRAINER_POTION: //Lauranna Thar'well
|
||||
if (!HasAlchemySpell(player))
|
||||
AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_LEARN_POTION, GOSSIP_SENDER_LEARN, GOSSIP_ACTION_INFO_DEF + 3);
|
||||
if (player->HasSpell(S_POTION))
|
||||
AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_UNLEARN_POTION, GOSSIP_SENDER_UNLEARN, GOSSIP_ACTION_INFO_DEF + 6);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
SendGossipMenuFor(player, player->GetGossipTextId(creature), creature->GetGUID());
|
||||
return true;
|
||||
}
|
||||
|
||||
void SendActionMenu(Player* player, Creature* creature, uint32 action)
|
||||
{
|
||||
switch (action)
|
||||
{
|
||||
case GOSSIP_ACTION_TRADE:
|
||||
player->GetSession()->SendListInventory(creature->GetGUID());
|
||||
break;
|
||||
case GOSSIP_ACTION_TRAIN:
|
||||
player->GetSession()->SendTrainerList(creature->GetGUID());
|
||||
break;
|
||||
//Learn Alchemy
|
||||
case GOSSIP_ACTION_INFO_DEF + 1:
|
||||
ProcessCastaction(player, creature, S_TRANSMUTE, S_LEARN_TRANSMUTE, DoLearnCost(player));
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF + 2:
|
||||
ProcessCastaction(player, creature, S_ELIXIR, S_LEARN_ELIXIR, DoLearnCost(player));
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF + 3:
|
||||
ProcessCastaction(player, creature, S_POTION, S_LEARN_POTION, DoLearnCost(player));
|
||||
break;
|
||||
//Unlearn Alchemy
|
||||
case GOSSIP_ACTION_INFO_DEF + 4:
|
||||
ProcessCastaction(player, creature, 0, S_UNLEARN_TRANSMUTE, DoHighUnlearnCost(player));
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF + 5:
|
||||
ProcessCastaction(player, creature, 0, S_UNLEARN_ELIXIR, DoHighUnlearnCost(player));
|
||||
break;
|
||||
case GOSSIP_ACTION_INFO_DEF + 6:
|
||||
ProcessCastaction(player, creature, 0, S_UNLEARN_POTION, DoHighUnlearnCost(player));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void SendConfirmLearn(Player* player, Creature* creature, uint32 action)
|
||||
{
|
||||
if (action)
|
||||
{
|
||||
switch (creature->GetEntry())
|
||||
{
|
||||
case N_TRAINER_TRANSMUTE:
|
||||
AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_LEARN_TRANSMUTE, GOSSIP_SENDER_CHECK, action);
|
||||
//unknown textID ()
|
||||
SendGossipMenuFor(player, player->GetGossipTextId(creature), creature->GetGUID());
|
||||
break;
|
||||
case N_TRAINER_ELIXIR:
|
||||
AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_LEARN_ELIXIR, GOSSIP_SENDER_CHECK, action);
|
||||
//unknown textID ()
|
||||
SendGossipMenuFor(player, player->GetGossipTextId(creature), creature->GetGUID());
|
||||
break;
|
||||
case N_TRAINER_POTION:
|
||||
AddGossipItemFor(player, GOSSIP_ICON_CHAT, GOSSIP_LEARN_POTION, GOSSIP_SENDER_CHECK, action);
|
||||
//unknown textID ()
|
||||
SendGossipMenuFor(player, player->GetGossipTextId(creature), creature->GetGUID());
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void SendConfirmUnlearn(Player* player, Creature* creature, uint32 action)
|
||||
{
|
||||
if (action)
|
||||
{
|
||||
switch (creature->GetEntry())
|
||||
{
|
||||
case N_TRAINER_TRANSMUTE:
|
||||
AddGossipItemFor(player, 0, GOSSIP_UNLEARN_TRANSMUTE, GOSSIP_SENDER_CHECK, action, BOX_UNLEARN_ALCHEMY_SPEC, DoHighUnlearnCost(player), false);
|
||||
//unknown textID ()
|
||||
SendGossipMenuFor(player, player->GetGossipTextId(creature), creature->GetGUID());
|
||||
break;
|
||||
case N_TRAINER_ELIXIR:
|
||||
AddGossipItemFor(player, 0, GOSSIP_UNLEARN_ELIXIR, GOSSIP_SENDER_CHECK, action, BOX_UNLEARN_ALCHEMY_SPEC, DoHighUnlearnCost(player), false);
|
||||
//unknown textID ()
|
||||
SendGossipMenuFor(player, player->GetGossipTextId(creature), creature->GetGUID());
|
||||
break;
|
||||
case N_TRAINER_POTION:
|
||||
AddGossipItemFor(player, 0, GOSSIP_UNLEARN_POTION, GOSSIP_SENDER_CHECK, action, BOX_UNLEARN_ALCHEMY_SPEC, DoHighUnlearnCost(player), false);
|
||||
//unknown textID ()
|
||||
SendGossipMenuFor(player, player->GetGossipTextId(creature), creature->GetGUID());
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool OnGossipSelect(Player* player, Creature* creature, uint32 sender, uint32 action) override
|
||||
{
|
||||
ClearGossipMenuFor(player);
|
||||
switch (sender)
|
||||
{
|
||||
case GOSSIP_SENDER_MAIN:
|
||||
SendActionMenu(player, creature, action);
|
||||
break;
|
||||
|
||||
case GOSSIP_SENDER_LEARN:
|
||||
SendConfirmLearn(player, creature, action);
|
||||
break;
|
||||
|
||||
case GOSSIP_SENDER_UNLEARN:
|
||||
SendConfirmUnlearn(player, creature, action);
|
||||
break;
|
||||
|
||||
case GOSSIP_SENDER_CHECK:
|
||||
SendActionMenu(player, creature, action);
|
||||
break;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
/*###
|
||||
# start menues blacksmith
|
||||
###*/
|
||||
@@ -1320,7 +1118,6 @@ public:
|
||||
|
||||
void AddSC_npc_professions()
|
||||
{
|
||||
new npc_prof_alchemy();
|
||||
new npc_prof_blacksmith();
|
||||
new npc_engineering_tele_trinket();
|
||||
new npc_prof_leather();
|
||||
|
||||
Reference in New Issue
Block a user