diff options
| author | offl <11556157+offl@users.noreply.github.com> | 2022-02-14 18:05:23 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2022-03-26 14:29:47 +0100 |
| commit | 4a3d1b1961e424c0d9441939599a41a0651df05a (patch) | |
| tree | 531ed380831fca6080d0bc69c6c63c4eaab200bf /src | |
| parent | 5e2ba78c33cd4c98248815a2e6ca77d8dd0091d0 (diff) | |
Scripts/Spells: Script one more player talk (#27766)
(cherry picked from commit db1e6f2588cab21f5556a1f8dc0af7d348f1bb95)
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/scripts/Northrend/zone_dragonblight.cpp | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/server/scripts/Northrend/zone_dragonblight.cpp b/src/server/scripts/Northrend/zone_dragonblight.cpp index b790a1d7b10..be29233e746 100644 --- a/src/server/scripts/Northrend/zone_dragonblight.cpp +++ b/src/server/scripts/Northrend/zone_dragonblight.cpp @@ -777,6 +777,40 @@ class spell_moti_hourglass_cast_see_invis_on_master : public SpellScript } }; +/*###### +## Quest 12457: The Chain Gun And You +######*/ + +enum TheChainGunAndYou +{ + TEXT_CALL_OUT_1 = 27083, + TEXT_CALL_OUT_2 = 27084 +}; + +// BasePoints of the dummy effect is ID of npc_text used to group texts, it's not implemented so texts are grouped manually. Same with 49556 but looks like it's not used +// 49550 - Call Out Injured Soldier +class spell_call_out_injured_soldier : public SpellScript +{ + PrepareSpellScript(spell_call_out_injured_soldier); + + bool Validate(SpellInfo const* /*spellInfo*/) override + { + return sBroadcastTextStore.HasRecord(TEXT_CALL_OUT_1) && sBroadcastTextStore.HasRecord(TEXT_CALL_OUT_2); + } + + void HandleScript(SpellEffIndex /*effIndex*/) + { + if (Vehicle* vehicle = GetCaster()->GetVehicleKit()) + if (Unit* passenger = vehicle->GetPassenger(0)) + passenger->Unit::Say(RAND(TEXT_CALL_OUT_1, TEXT_CALL_OUT_2), passenger); + } + + void Register() override + { + OnEffectHit += SpellEffectFn(spell_call_out_injured_soldier::HandleScript, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT); + } +}; + void AddSC_dragonblight() { new npc_commander_eligor_dawnbringer(); @@ -787,4 +821,5 @@ void AddSC_dragonblight() RegisterSpellScript(spell_warsong_battle_standard); RegisterSpellScript(spell_moti_mirror_image_script_effect); RegisterSpellScript(spell_moti_hourglass_cast_see_invis_on_master); + RegisterSpellScript(spell_call_out_injured_soldier); } |
