mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-02-05 16:39:08 +01:00
Scripts/Quest: Rework 'Basic Orders' (25199) (#26294)
This commit is contained in:
@@ -3536,6 +3536,25 @@ void SpellMgr::LoadSpellInfoCorrections()
|
||||
spellInfo->Effects[EFFECT_0].RadiusEntry = sSpellRadiusStore.LookupEntry(EFFECT_RADIUS_7_YARDS);
|
||||
});
|
||||
|
||||
// In sniff caster hits multiple targets
|
||||
ApplySpellFix({
|
||||
73725, // [DND] Test Cheer
|
||||
73835, // [DND] Test Salute
|
||||
73836 // [DND] Test Roar
|
||||
}, [](SpellInfo* spellInfo)
|
||||
{
|
||||
spellInfo->Effects[EFFECT_0].RadiusEntry = sSpellRadiusStore.LookupEntry(EFFECT_RADIUS_50_YARDS); // 50yd
|
||||
});
|
||||
|
||||
// In sniff caster hits multiple targets
|
||||
ApplySpellFix({
|
||||
73837, // [DND] Test Dance
|
||||
73886 // [DND] Test Stop Dance
|
||||
}, [](SpellInfo* spellInfo)
|
||||
{
|
||||
spellInfo->Effects[EFFECT_0].RadiusEntry = sSpellRadiusStore.LookupEntry(EFFECT_RADIUS_150_YARDS); // 150yd
|
||||
});
|
||||
|
||||
// Master Shapeshifter: missing stance data for forms other than bear - bear version has correct data
|
||||
// To prevent aura staying on target after talent unlearned
|
||||
ApplySpellFix({ 48420 }, [](SpellInfo* spellInfo)
|
||||
|
||||
@@ -2300,6 +2300,52 @@ class spell_q12308_escape_from_silverbrook_summon_worgen : public SpellScriptLoa
|
||||
}
|
||||
};
|
||||
|
||||
enum BasicOrdersEmote
|
||||
{
|
||||
SPELL_TEST_SALUTE = 73835,
|
||||
SPELL_TEST_ROAR = 73836,
|
||||
SPELL_TEST_CHEER = 73725,
|
||||
SPELL_TEST_DANCE = 73837,
|
||||
SPELL_TEST_STOP_DANCE = 73886
|
||||
};
|
||||
|
||||
class spell_q25199_emote : public AuraScript
|
||||
{
|
||||
PrepareAuraScript(spell_q25199_emote);
|
||||
|
||||
void HandlePeriodic(AuraEffect const* /*aurEff*/)
|
||||
{
|
||||
Unit* target = GetTarget();
|
||||
|
||||
switch (GetSpellInfo()->Id)
|
||||
{
|
||||
case SPELL_TEST_SALUTE:
|
||||
target->HandleEmoteCommand(EMOTE_ONESHOT_SALUTE);
|
||||
break;
|
||||
case SPELL_TEST_ROAR:
|
||||
target->HandleEmoteCommand(EMOTE_ONESHOT_ROAR);
|
||||
break;
|
||||
case SPELL_TEST_CHEER:
|
||||
target->HandleEmoteCommand(EMOTE_ONESHOT_CHEER);
|
||||
break;
|
||||
case SPELL_TEST_DANCE:
|
||||
target->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_DANCE);
|
||||
break;
|
||||
case SPELL_TEST_STOP_DANCE:
|
||||
target->SetUInt32Value(UNIT_NPC_EMOTESTATE, EMOTE_STATE_NONE);
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
Remove();
|
||||
}
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnEffectPeriodic += AuraEffectPeriodicFn(spell_q25199_emote::HandlePeriodic, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY);
|
||||
}
|
||||
};
|
||||
|
||||
enum DeathComesFromOnHigh
|
||||
{
|
||||
SPELL_FORGE_CREDIT = 51974,
|
||||
@@ -2968,6 +3014,7 @@ void AddSC_quest_spell_scripts()
|
||||
RegisterSpellScript(spell_q11896_weakness_to_lightning_46444);
|
||||
new spell_q12308_escape_from_silverbrook_summon_worgen();
|
||||
new spell_q12308_escape_from_silverbrook();
|
||||
RegisterSpellScript(spell_q25199_emote);
|
||||
new spell_q12641_death_comes_from_on_high();
|
||||
new spell_q12641_recall_eye_of_acherus();
|
||||
new spell_q12619_emblazon_runeblade();
|
||||
|
||||
Reference in New Issue
Block a user