Core/PacketIO: Updated packet structures to 8.0.1

This commit is contained in:
Shauren
2018-10-04 18:50:21 +02:00
parent 7512ffb058
commit 0a779bd791
127 changed files with 1809 additions and 1045 deletions

View File

@@ -95,10 +95,22 @@ void WorldSession::HandleCreatureQuery(WorldPackets::Query::QueryCreature& packe
for (uint32 i = 0; i < MAX_KILL_CREDIT; ++i)
stats.ProxyCreatureID[i] = creatureInfo->KillCredit[i];
stats.CreatureDisplayID[0] = creatureInfo->Modelid1;
stats.CreatureDisplayID[1] = creatureInfo->Modelid2;
stats.CreatureDisplayID[2] = creatureInfo->Modelid3;
stats.CreatureDisplayID[3] = creatureInfo->Modelid4;
// TEMPORARY, PR #22567
auto addModel = [&](uint32 modelId)
{
if (modelId)
{
stats.Display.TotalProbability += 1.0f;
stats.Display.CreatureDisplay.emplace_back();
WorldPackets::Query::CreatureXDisplay& display = stats.Display.CreatureDisplay.back();
display.CreatureDisplayID = modelId;
}
};
addModel(creatureInfo->Modelid1);
addModel(creatureInfo->Modelid2);
addModel(creatureInfo->Modelid3);
addModel(creatureInfo->Modelid4);
stats.HpMulti = creatureInfo->ModHealth;
stats.EnergyMulti = creatureInfo->ModMana;
@@ -107,14 +119,14 @@ void WorldSession::HandleCreatureQuery(WorldPackets::Query::QueryCreature& packe
stats.RequiredExpansion = creatureInfo->RequiredExpansion;
stats.HealthScalingExpansion = creatureInfo->HealthScalingExpansion;
stats.VignetteID = creatureInfo->VignetteID;
stats.Class = creatureInfo->unit_class;
stats.Title = creatureInfo->SubName;
stats.TitleAlt = creatureInfo->TitleAlt;
stats.CursorName = creatureInfo->IconName;
if (std::vector<uint32> const* items = sObjectMgr->GetCreatureQuestItemList(packet.CreatureID))
for (uint32 item : *items)
stats.QuestItems.push_back(item);
stats.QuestItems.insert(stats.QuestItems.begin(), items->begin(), items->end());
LocaleConstant localeConstant = GetSessionDbLocaleIndex();
if (localeConstant != LOCALE_enUS)
@@ -368,13 +380,12 @@ void WorldSession::HandleQuestPOIQuery(WorldPackets::Query::QuestPOIQuery& quest
questPOIBlobData.QuestObjectiveID = data->QuestObjectiveID;
questPOIBlobData.QuestObjectID = data->QuestObjectID;
questPOIBlobData.MapID = data->MapID;
questPOIBlobData.WorldMapAreaID = data->WorldMapAreaID;
questPOIBlobData.Floor = data->Floor;
questPOIBlobData.UiMapID = data->UiMapID;
questPOIBlobData.Priority = data->Priority;
questPOIBlobData.Flags = data->Flags;
questPOIBlobData.WorldEffectID = data->WorldEffectID;
questPOIBlobData.PlayerConditionID = data->PlayerConditionID;
questPOIBlobData.UnkWoD1 = data->UnkWoD1;
questPOIBlobData.SpawnTrackingID = data->SpawnTrackingID;
questPOIBlobData.AlwaysAllowMergingBlobs = data->AlwaysAllowMergingBlobs;
for (QuestPOIPoint const& point : data->points)