From 4e95c9e006ddd0d483a52f907e9c683729a56604 Mon Sep 17 00:00:00 2001 From: chaosua <544218+chaosua@users.noreply.github.com> Date: Sun, 24 Mar 2024 17:47:34 +0200 Subject: [PATCH] (Instance/Culling of Stratholme/Trial of Crusader) removed duplicated gossip_menus, fixed hardcoded texts (#18516) * (Instance/Culling of Stratholme) removed duplicated gossip_menus, fixed hardcoded texts * Update culling_of_stratholme.sql * Update culling_of_stratholme.sql * (Instance/TrialOfTheCrusader) fixed hardcoded text from Jaraxxus text line boss_twin_valkyr: removed unnececarry random txt line select (already exist groupid 6 id 0 and 1 in creature_text) added ruRU locale for Acidmaw and Dreadscale GroupID 2 * move sqls * Update culling_of_stratholme.sql * Update data/sql/updates/pending_db_world/culling_of_stratholme.sql Co-authored-by: Benjamin Jackson <38561765+heyitsbench@users.noreply.github.com> * Update culling_of_stratholme.sql * update naming of variables to better understand the sequence of events * Change locale attribute to Locale I'm not 100% sure, but since in Linux, uppercase and lowercase letters represent different values, I think that's why it doesn't pass the tests. In Windows nothing happens, but in Linux there are 2 different attributes. * strange MySQL in Linux * Update trial_of_crusader.sql * updated sequence of txt lines with cityman before Malganis appear according to @Trinitycore enum RPEventLines2 combine all SQL in 1 file --------- Co-authored-by: Benjamin Jackson <38561765+heyitsbench@users.noreply.github.com> Co-authored-by: Walter Pagani --- .../stratholme_toc_txt_fix.sql | 24 +++++++++++++++++++ .../CullingOfStratholme/boss_infinite.cpp | 5 ++-- .../culling_of_stratholme.cpp | 8 ++++--- .../TrialOfTheCrusader/boss_twin_valkyr.cpp | 8 +++---- .../instance_trial_of_the_crusader.cpp | 3 +-- .../trial_of_the_crusader.h | 1 + 6 files changed, 37 insertions(+), 12 deletions(-) create mode 100644 data/sql/updates/pending_db_world/stratholme_toc_txt_fix.sql diff --git a/data/sql/updates/pending_db_world/stratholme_toc_txt_fix.sql b/data/sql/updates/pending_db_world/stratholme_toc_txt_fix.sql new file mode 100644 index 000000000..2c1c96f8a --- /dev/null +++ b/data/sql/updates/pending_db_world/stratholme_toc_txt_fix.sql @@ -0,0 +1,24 @@ +DELETE FROM `gossip_menu_option` WHERE `MenuID` IN (9610, 9611, 9612, 11277) AND `OptionID`=1; + +DELETE FROM `creature_text` WHERE `CreatureID`=26499 AND `GroupID`=39 AND `ID`=0; +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(26499, 39, 0, 'I can\'t afford to spare you.', 12, 0, 100, 0, 0, 0, 31355, 0, 'culling SAY_PHASE305_1'); + +DELETE FROM `creature_text` WHERE `CreatureID`=28169 AND `GroupID`=1 AND `ID`=0 ; +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(28169, 1, 0, 'Oh, no...', 12, 0, 100, 0, 0, 0, 27552, 0, 'culling SAY_PHASE204_1'); + +DELETE FROM `creature_text` WHERE `CreatureID`=32281 AND `GroupID`=0 AND `ID`=0; +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(32281, 0, 0, 'You have my thanks for saving my existence in this timeline. Now I must report back to my superiors. They must know immediately of what I just experienced.', 12, 0, 100, 0, 0, 0, 32645, 0, 'culling SAY_THANKS'); + +DELETE FROM `creature_text` WHERE `CreatureID` IN (28167, 28169); +INSERT INTO `creature_text` (`CreatureID`, `GroupID`, `ID`, `Text`, `Type`, `Language`, `Probability`, `Emote`, `Duration`, `Sound`, `BroadcastTextId`, `TextRange`, `comment`) VALUES +(28167, 0, 0, 'Prince Arthas, may the light be praised! Many people in the town have begun to fall seriously ill, can you help us?', 12, 0, 100, 0, 0, 0, 27547, 0, 'culling SAY_PHASE202'), +(28167, 1, 0, 'What? This can\'t be!', 12, 0, 100, 274, 0, 0, 27549, 0, 'culling SAY_PHASE204'), +(28169, 0, 0, 'Oh, no...', 12, 0, 100, 0, 0, 0, 27552, 0, 'culling SAY_PHASE204_1'); + +DELETE FROM `creature_text_locale` WHERE `CreatureID` IN (34799, 35144) AND `GroupID`=2 AND `ID`=0 AND `Locale`='ruRU'; +INSERT INTO `creature_text_locale` (`CreatureID`, `GroupID`, `ID`, `Locale`, `Text`) VALUES +(34799, 2, 0, 'ruRU', '%s вылезает из-под земли!'), +(35144, 2, 0, 'ruRU', '%s вылезает из-под земли!'); diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/boss_infinite.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/boss_infinite.cpp index c815ce3fd..7ec0d095c 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/boss_infinite.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/boss_infinite.cpp @@ -37,7 +37,8 @@ enum Yells { SAY_AGGRO = 0, SAY_DEATH = 1, - SAY_FAIL = 2 + SAY_FAIL = 2, + SAY_THANKS = 0 }; class boss_infinite_corruptor : public CreatureScript @@ -98,7 +99,7 @@ public: { cr->DespawnOrUnsummon(5000); cr->RemoveAllAuras(); - cr->Say("You have my thanks for saving my existence in this timeline. Now i must report back to my superiors. They must know immediately of what i just experienced.", LANG_UNIVERSAL); + cr->AI()->Talk(SAY_THANKS); } } } diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/culling_of_stratholme.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/culling_of_stratholme.cpp index cc94d7dc0..2c5516ddd 100644 --- a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/culling_of_stratholme.cpp +++ b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/culling_of_stratholme.cpp @@ -97,13 +97,15 @@ enum Says //Cityman SAY_PHASE202 = 0, + SAY_PHASE204_1 = 0, //Crazyman - SAY_PHASE204 = 0, + SAY_PHASE204 = 1, //Drakonian SAY_PHASE302 = 0, SAY_PHASE305 = 1, + SAY_PHASE305_1 = 39, }; enum NPCs @@ -559,7 +561,7 @@ public: case 11: if (Creature* cityman = GetEventNpc(NPC_CITY_MAN2)) { - cityman->Say("Oh no...", LANG_UNIVERSAL); // missing script_text + cityman->AI()->Talk(SAY_PHASE204_1); me->CastSpell(cityman, SPELL_ARTHAS_CRUSADER_STRIKE, true); } me->SetReactState(REACT_DEFENSIVE); @@ -1019,7 +1021,7 @@ public: } summons.DespawnAll(); - me->Say("I can't afford to spare you.", LANG_UNIVERSAL); + Talk(SAY_PHASE305_1); me->SetFacingTo(0.0f); ScheduleNextEvent(currentEvent, 5000); break; diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_twin_valkyr.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_twin_valkyr.cpp index d15aa40b2..661cab6df 100644 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_twin_valkyr.cpp +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_twin_valkyr.cpp @@ -36,10 +36,9 @@ enum Yells EMOTE_VORTEX = 3, EMOTE_TWINK_PACT = 4, SAY_TWINK_PACT = 5, - SAY_KILL_PLAYER_1 = 6, + SAY_KILL_PLAYER = 6, SAY_BERSERK = 7, SAY_DEATH = 8, - SAY_KILL_PLAYER_2 = 9, }; enum Equipment @@ -502,10 +501,9 @@ struct boss_twin_valkyrAI : public ScriptedAI { if( who->GetTypeId() == TYPEID_PLAYER ) { - int32 id = urand(0, 1) ? SAY_KILL_PLAYER_1 : SAY_KILL_PLAYER_2; - Talk(id); + Talk(SAY_KILL_PLAYER); if( Creature* twin = GetSister() ) - twin->AI()->Talk(id); + twin->AI()->Talk(SAY_KILL_PLAYER); } } diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp index db34dcd54..591991e78 100644 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/instance_trial_of_the_crusader.cpp @@ -884,8 +884,7 @@ public: { if( Creature* c = instance->GetCreature(NPC_JaraxxusGUID) ) { - c->Yell("Banished to the Nether!", LANG_UNIVERSAL); - c->PlayDirectSound(16146, 0); + c->AI()->Talk(SAY_STAGE_1_06_1); if( Creature* f = instance->GetCreature(NPC_FizzlebangGUID) ) { c->CastSpell(f, 67888, true); diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/trial_of_the_crusader.h b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/trial_of_the_crusader.h index 320f316e2..cc1ac3599 100644 --- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/trial_of_the_crusader.h +++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/trial_of_the_crusader.h @@ -260,6 +260,7 @@ enum eTexts // Lord Jaraxxus SAY_STAGE_1_05 = 0, + SAY_STAGE_1_06_1 = 9, // The Lich King SAY_STAGE_4_02 = 0,