diff options
-rw-r--r-- | sql/updates/world/3.3.5/2022_02_27_00_world.sql | 3 | ||||
-rw-r--r-- | src/server/scripts/Northrend/zone_storm_peaks.cpp | 41 | ||||
-rw-r--r-- | src/server/scripts/Spells/spell_quest.cpp | 34 |
3 files changed, 44 insertions, 34 deletions
diff --git a/sql/updates/world/3.3.5/2022_02_27_00_world.sql b/sql/updates/world/3.3.5/2022_02_27_00_world.sql new file mode 100644 index 00000000000..00ed32a167f --- /dev/null +++ b/sql/updates/world/3.3.5/2022_02_27_00_world.sql @@ -0,0 +1,3 @@ +-- +UPDATE `spell_script_names` SET `ScriptName` = 'spell_read_pronouncement' WHERE `ScriptName` = 'spell_q12987_read_pronouncement'; +DELETE FROM `creature_text` WHERE `CreatureID` = 30215; diff --git a/src/server/scripts/Northrend/zone_storm_peaks.cpp b/src/server/scripts/Northrend/zone_storm_peaks.cpp index 0421465002f..b973b685dcb 100644 --- a/src/server/scripts/Northrend/zone_storm_peaks.cpp +++ b/src/server/scripts/Northrend/zone_storm_peaks.cpp @@ -20,6 +20,7 @@ #include "GameObject.h" #include "MotionMaster.h" #include "ObjectAccessor.h" +#include "ObjectMgr.h" #include "Player.h" #include "ScriptedEscortAI.h" #include "ScriptedGossip.h" @@ -1319,6 +1320,45 @@ class spell_q12823_remove_collapsing_cave_aura : public SpellScript } }; +/*###### +## Quest 12987: Mounting Hodir's Helm +######*/ + +enum MountingHodirsHelm +{ + TEXT_PRONOUNCEMENT_1 = 30906, + TEXT_PRONOUNCEMENT_2 = 30907, + NPC_HODIRS_HELM_KC = 30210 +}; + +// 56278 - Read Pronouncement +class spell_read_pronouncement : public AuraScript +{ + PrepareAuraScript(spell_read_pronouncement); + + bool Validate(SpellInfo const* /*spellInfo*/) override + { + return sObjectMgr->GetBroadcastText(TEXT_PRONOUNCEMENT_1) && + sObjectMgr->GetBroadcastText(TEXT_PRONOUNCEMENT_2) && + sObjectMgr->GetCreatureTemplate(NPC_HODIRS_HELM_KC); + } + + void OnApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) + { + if (Player* target = GetTarget()->ToPlayer()) + { + target->Unit::Whisper(TEXT_PRONOUNCEMENT_1, target, true); + target->KilledMonsterCredit(NPC_HODIRS_HELM_KC); + target->Unit::Whisper(TEXT_PRONOUNCEMENT_2, target, true); + } + } + + void Register() override + { + AfterEffectApply += AuraEffectApplyFn(spell_read_pronouncement::OnApply, EFFECT_0, SPELL_AURA_NONE, AURA_EFFECT_HANDLE_REAL); + } +}; + void AddSC_storm_peaks() { new npc_roxi_ramrocket(); @@ -1342,4 +1382,5 @@ void AddSC_storm_peaks() new spell_fatal_strike(); new spell_player_mount_wyrm(); RegisterSpellScript(spell_q12823_remove_collapsing_cave_aura); + RegisterSpellScript(spell_read_pronouncement); } diff --git a/src/server/scripts/Spells/spell_quest.cpp b/src/server/scripts/Spells/spell_quest.cpp index a39e997c541..ba19f1b62a7 100644 --- a/src/server/scripts/Spells/spell_quest.cpp +++ b/src/server/scripts/Spells/spell_quest.cpp @@ -898,39 +898,6 @@ class spell_q14076_14092_pound_drum : public SpellScript } }; -enum HodirsHelm -{ - SAY_1 = 1, - SAY_2 = 2, - NPC_KILLCREDIT = 30210, // Hodir's Helm KC Bunny - NPC_ICE_SPIKE_BUNNY = 30215 -}; - -// 56278 - Read Pronouncement -class spell_q12987_read_pronouncement : public AuraScript -{ - PrepareAuraScript(spell_q12987_read_pronouncement); - - void OnApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) - { - // player must cast kill credit and do emote text, according to sniff - if (Player* target = GetTarget()->ToPlayer()) - { - if (Creature* trigger = target->FindNearestCreature(NPC_ICE_SPIKE_BUNNY, 25.0f)) - { - sCreatureTextMgr->SendChat(trigger, SAY_1, target, CHAT_MSG_ADDON, LANG_ADDON, TEXT_RANGE_NORMAL, 0, TEAM_OTHER, false, target); - target->KilledMonsterCredit(NPC_KILLCREDIT); - sCreatureTextMgr->SendChat(trigger, SAY_2, target, CHAT_MSG_ADDON, LANG_ADDON, TEXT_RANGE_NORMAL, 0, TEAM_OTHER, false, target); - } - } - } - - void Register() override - { - AfterEffectApply += AuraEffectApplyFn(spell_q12987_read_pronouncement::OnApply, EFFECT_0, SPELL_AURA_NONE, AURA_EFFECT_HANDLE_REAL); - } -}; - enum LeaveNothingToChance { NPC_UPPER_MINE_SHAFT = 27436, @@ -2344,7 +2311,6 @@ void AddSC_quest_spell_scripts() RegisterSpellScript(spell_q14112_14145_chum_the_water); RegisterSpellScript(spell_q9452_cast_net); RegisterSpellScript(spell_q14076_14092_pound_drum); - RegisterSpellScript(spell_q12987_read_pronouncement); RegisterSpellScript(spell_q12277_wintergarde_mine_explosion); RegisterSpellScript(spell_q12066_bunny_kill_credit); RegisterSpellScript(spell_q12735_song_of_cleansing); |