Core/Gossip: Revert a change to SendPreparedQuest to allow multiple

quests again.
Thanks Manuel for pointing it out and Nay for testing
This commit is contained in:
runningnak3d
2011-02-13 21:23:01 -07:00
parent 30e45b9356
commit a8a5734bea
@@ -14196,6 +14196,52 @@ void Player::SendPreparedQuest(uint64 guid)
} }
} }
} }
// multiple entries
else
{
QEmote qe;
qe._Delay = 0;
qe._Emote = 0;
std::string title = "";
// need pet case for some quests
Creature *pCreature = ObjectAccessor::GetCreatureOrPetOrVehicle(*this,guid);
if (pCreature)
{
uint32 textid = GetGossipTextId(pCreature);
GossipText const* gossiptext = sObjectMgr->GetGossipText(textid);
if (!gossiptext)
{
qe._Delay = 0; //TEXTEMOTE_MESSAGE; //zyg: player emote
qe._Emote = 0; //TEXTEMOTE_HELLO; //zyg: NPC emote
title = "";
}
else
{
qe = gossiptext->Options[0].Emotes[0];
if (!gossiptext->Options[0].Text_0.empty())
{
title = gossiptext->Options[0].Text_0;
int loc_idx = GetSession()->GetSessionDbLocaleIndex();
if (loc_idx >= 0)
if (NpcTextLocale const *nl = sObjectMgr->GetNpcTextLocale(textid))
sObjectMgr->GetLocaleString(nl->Text_0[0], loc_idx, title);
}
else
{
title = gossiptext->Options[0].Text_1;
int loc_idx = GetSession()->GetSessionDbLocaleIndex();
if (loc_idx >= 0)
if (NpcTextLocale const *nl = sObjectMgr->GetNpcTextLocale(textid))
sObjectMgr->GetLocaleString(nl->Text_1[0], loc_idx, title);
}
}
}
PlayerTalkClass->SendQuestGiverQuestList(qe, title, guid);
}
} }
bool Player::IsActiveQuest(uint32 quest_id) const bool Player::IsActiveQuest(uint32 quest_id) const