From f7ffd77123b5f6c943f7d280fbea5742e2c5d9b9 Mon Sep 17 00:00:00 2001 From: Machiavelli Date: Sat, 20 Mar 2010 21:26:29 +0100 Subject: Do not use hard coded index in SMSG_QUEST_POI_QUERY_RESPONSE. May be the resolution for some client crashes. --HG-- branch : trunk --- src/game/QueryHandler.cpp | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'src/game/QueryHandler.cpp') diff --git a/src/game/QueryHandler.cpp b/src/game/QueryHandler.cpp index 5d7de476d4b..e6647fce9ac 100644 --- a/src/game/QueryHandler.cpp +++ b/src/game/QueryHandler.cpp @@ -503,25 +503,23 @@ void WorldSession::HandleQuestPOIQuery(WorldPacket& recv_data) { data << uint32(questId); // quest ID data << uint32(POI->size()); // POI count - - int index = 0; + for(QuestPOIVector::const_iterator itr = POI->begin(); itr != POI->end(); ++itr) { - data << uint32(index); // POI index - data << int32(itr->ObjectiveIndex); // objective index - data << uint32(itr->MapId); // mapid - data << uint32(itr->Unk1); // unknown + data << uint32(itr->Id); // POI index + data << int32(itr->ObjectiveIndex); // objective index + data << uint32(itr->MapId); // mapid + data << uint32(itr->AreaId); // areaid data << uint32(itr->Unk2); // unknown data << uint32(itr->Unk3); // unknown data << uint32(itr->Unk4); // unknown - data << uint32(itr->points.size()); // POI points count + data << uint32(itr->points.size()); // POI points count for(std::vector::const_iterator itr2 = itr->points.begin(); itr2 != itr->points.end(); ++itr2) { data << int32(itr2->x); // POI point x data << int32(itr2->y); // POI point y } - ++index; } } else -- cgit v1.2.3