diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp b/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp index 98f94d82c55..5b3c94ea729 100644 --- a/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp +++ b/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp @@ -1104,7 +1104,8 @@ class spell_gift_of_the_harvester : public SpellScript enum Runeforging { - SPELL_RUNEFORGING_CREDIT = 54586 + SPELL_RUNEFORGING_CREDIT = 54586, + QUEST_RUNEFORGING = 12842 }; /* 53323 - Rune of Swordshattering @@ -1123,12 +1124,15 @@ class spell_chapter1_runeforging_credit : public SpellScript bool Validate(SpellInfo const* /*spellInfo*/) override { - return ValidateSpellInfo({ SPELL_RUNEFORGING_CREDIT }); + return ValidateSpellInfo({ SPELL_RUNEFORGING_CREDIT }) && + sObjectMgr->GetQuestTemplate(QUEST_RUNEFORGING); } void HandleDummy(SpellEffIndex /*effIndex*/) { - GetCaster()->CastSpell(GetCaster(), SPELL_RUNEFORGING_CREDIT); + if (Player* caster = GetCaster()->ToPlayer()) + if (caster->GetQuestStatus(QUEST_RUNEFORGING) == QUEST_STATUS_INCOMPLETE) + caster->CastSpell(caster, SPELL_RUNEFORGING_CREDIT); } void Register() override |