mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2025-11-29 17:38:24 +08:00
Updated with master branch
This commit is contained in:
@@ -828,38 +828,26 @@ void Player::RewardQuest(Quest const* quest, uint32 reward, Object* questGiver,
|
|||||||
// cast spells after mark quest complete (some spells have quest completed state requirements in spell_area data)
|
// cast spells after mark quest complete (some spells have quest completed state requirements in spell_area data)
|
||||||
if (quest->GetRewSpellCast() > 0)
|
if (quest->GetRewSpellCast() > 0)
|
||||||
{
|
{
|
||||||
if (SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(quest->GetRewSpellCast()))
|
SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(quest->GetRewSpellCast());
|
||||||
{
|
|
||||||
if (questGiver->IsUnit() && !spellInfo->HasEffect(SPELL_EFFECT_LEARN_SPELL) && !spellInfo->HasEffect(SPELL_EFFECT_CREATE_ITEM) && !spellInfo->IsSelfCast())
|
if (questGiver->IsUnit() && !spellInfo->HasEffect(SPELL_EFFECT_LEARN_SPELL) && !spellInfo->HasEffect(SPELL_EFFECT_CREATE_ITEM) && !spellInfo->IsSelfCast())
|
||||||
{
|
{
|
||||||
if (Creature* creature = GetMap()->GetCreature(questGiver->GetGUID()))
|
if (Creature* creature = GetMap()->GetCreature(questGiver->GetGUID()))
|
||||||
{
|
|
||||||
creature->CastSpell(this, quest->GetRewSpellCast(), true);
|
creature->CastSpell(this, quest->GetRewSpellCast(), true);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
|
||||||
CastSpell(this, quest->GetRewSpellCast(), true);
|
CastSpell(this, quest->GetRewSpellCast(), true);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (quest->GetRewSpell() > 0)
|
else if (quest->GetRewSpell() > 0)
|
||||||
{
|
{
|
||||||
if (SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(quest->GetRewSpell()))
|
SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(quest->GetRewSpell());
|
||||||
{
|
|
||||||
if (questGiver->IsUnit() && !spellInfo->HasEffect(SPELL_EFFECT_LEARN_SPELL) && !spellInfo->HasEffect(SPELL_EFFECT_CREATE_ITEM) && !spellInfo->IsSelfCast())
|
if (questGiver->IsUnit() && !spellInfo->HasEffect(SPELL_EFFECT_LEARN_SPELL) && !spellInfo->HasEffect(SPELL_EFFECT_CREATE_ITEM) && !spellInfo->IsSelfCast())
|
||||||
{
|
{
|
||||||
if (Creature* creature = GetMap()->GetCreature(questGiver->GetGUID()))
|
if (Creature* creature = GetMap()->GetCreature(questGiver->GetGUID()))
|
||||||
{
|
|
||||||
creature->CastSpell(this, quest->GetRewSpell(), true);
|
creature->CastSpell(this, quest->GetRewSpell(), true);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
|
||||||
CastSpell(this, quest->GetRewSpell(), true);
|
CastSpell(this, quest->GetRewSpell(), true);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (quest->GetZoneOrSort() > 0)
|
if (quest->GetZoneOrSort() > 0)
|
||||||
UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_QUESTS_IN_ZONE, quest->GetZoneOrSort());
|
UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_COMPLETE_QUESTS_IN_ZONE, quest->GetZoneOrSort());
|
||||||
|
|||||||
Reference in New Issue
Block a user