aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2021-03-08 00:11:29 +0100
committerShauren <shauren.trinity@gmail.com>2021-03-08 00:11:29 +0100
commitd80593061fb19cf5b131812d9c548d911f4d630f (patch)
tree7ce362f041f2be1eb31dc7c2eee51f462aa455af /src
parentc019d4f10c47612aea49a8b081f367df00ca7c97 (diff)
Core/PacketIO: Fix structure for SelectedAzeriteEssences and name unknown conversation fields
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Object/Updates/UpdateFields.cpp28
-rw-r--r--src/server/game/Entities/Object/Updates/UpdateFields.h8
2 files changed, 18 insertions, 18 deletions
diff --git a/src/server/game/Entities/Object/Updates/UpdateFields.cpp b/src/server/game/Entities/Object/Updates/UpdateFields.cpp
index c9002091c43..e350de8d24e 100644
--- a/src/server/game/Entities/Object/Updates/UpdateFields.cpp
+++ b/src/server/game/Entities/Object/Updates/UpdateFields.cpp
@@ -624,7 +624,7 @@ void SelectedAzeriteEssences::WriteCreate(ByteBuffer& data, AzeriteItem const* o
data << uint32(AzeriteEssenceID[i]);
}
data << uint32(SpecializationID);
- data.WriteBits(Enabled, 1);
+ data.WriteBit(Enabled);
data.FlushBits();
}
@@ -638,16 +638,19 @@ void SelectedAzeriteEssences::WriteUpdate(ByteBuffer& data, bool ignoreChangesMa
if (changesMask.GetBlock(0))
data.WriteBits(changesMask.GetBlock(0), 32);
- data.FlushBits();
if (changesMask[0])
{
if (changesMask[1])
{
- data << uint32(SpecializationID);
+ data.WriteBit(Enabled);
}
+ }
+ data.FlushBits();
+ if (changesMask[0])
+ {
if (changesMask[2])
{
- data.WriteBits(Enabled, 1);
+ data << uint32(SpecializationID);
}
}
if (changesMask[3])
@@ -665,8 +668,8 @@ void SelectedAzeriteEssences::WriteUpdate(ByteBuffer& data, bool ignoreChangesMa
void SelectedAzeriteEssences::ClearChangesMask()
{
- Base::ClearChangesMask(SpecializationID);
Base::ClearChangesMask(Enabled);
+ Base::ClearChangesMask(SpecializationID);
Base::ClearChangesMask(AzeriteEssenceID);
_changesMask.ResetAll();
}
@@ -692,7 +695,6 @@ void AzeriteItemData::WriteCreate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fi
{
data << uint32(UnlockedEssenceMilestones[i]);
}
- data.FlushBits();
if (fieldVisibilityFlags.HasFlag(UpdateFieldFlag::Owner))
{
data.WriteBit(Enabled);
@@ -2140,7 +2142,6 @@ void PlayerData::WriteCreate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fieldVi
{
ArenaCooldowns[i].WriteCreate(data, owner, receiver);
}
- data.FlushBits();
if (fieldVisibilityFlags.HasFlag(UpdateFieldFlag::PartyMember))
{
data.WriteBit(HasQuestSession);
@@ -4619,7 +4620,6 @@ void ScaleCurve::WriteCreate(ByteBuffer& data, AreaTrigger const* owner, Player
data << Points[i];
}
data << uint32(ParameterCurve);
- data.FlushBits();
data.WriteBit(OverrideActive);
data.FlushBits();
}
@@ -4858,7 +4858,7 @@ void ConversationActor::WriteCreate(ByteBuffer& data, Conversation const* owner,
data << uint32(CreatureID);
data << uint32(CreatureDisplayInfoID);
data << ActorGUID;
- data << int32(Field_18);
+ data << int32(Id);
data.WriteBits(Type, 1);
data.WriteBits(NoActorObject, 1);
data.FlushBits();
@@ -4869,7 +4869,7 @@ void ConversationActor::WriteUpdate(ByteBuffer& data, bool ignoreChangesMask, Co
data << uint32(CreatureID);
data << uint32(CreatureDisplayInfoID);
data << ActorGUID;
- data << int32(Field_18);
+ data << int32(Id);
data.WriteBits(Type, 1);
data.WriteBits(NoActorObject, 1);
data.FlushBits();
@@ -4880,7 +4880,7 @@ bool ConversationActor::operator==(ConversationActor const& right) const
return CreatureID == right.CreatureID
&& CreatureDisplayInfoID == right.CreatureDisplayInfoID
&& ActorGUID == right.ActorGUID
- && Field_18 == right.Field_18
+ && Id == right.Id
&& Type == right.Type
&& NoActorObject == right.NoActorObject;
}
@@ -4889,7 +4889,7 @@ void ConversationData::WriteCreate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> f
{
data << uint32(Lines->size());
data << int32(LastLineEndTime);
- data << uint32(Field_1C);
+ data << uint32(Progress);
for (std::size_t i = 0; i < Lines->size(); ++i)
{
(*Lines)[i].WriteCreate(data, owner, receiver);
@@ -4951,7 +4951,7 @@ void ConversationData::WriteUpdate(ByteBuffer& data, Mask const& changesMask, bo
}
if (changesMask[4])
{
- data << uint32(Field_1C);
+ data << uint32(Progress);
}
}
}
@@ -4961,7 +4961,7 @@ void ConversationData::ClearChangesMask()
Base::ClearChangesMask(Lines);
Base::ClearChangesMask(Actors);
Base::ClearChangesMask(LastLineEndTime);
- Base::ClearChangesMask(Field_1C);
+ Base::ClearChangesMask(Progress);
_changesMask.ResetAll();
}
diff --git a/src/server/game/Entities/Object/Updates/UpdateFields.h b/src/server/game/Entities/Object/Updates/UpdateFields.h
index 67f9dd28f61..78bdccfa0e6 100644
--- a/src/server/game/Entities/Object/Updates/UpdateFields.h
+++ b/src/server/game/Entities/Object/Updates/UpdateFields.h
@@ -177,8 +177,8 @@ struct UnlockedAzeriteEssence : public IsUpdateFieldStructureTag
struct SelectedAzeriteEssences : public IsUpdateFieldStructureTag, public HasChangesMask<8>
{
- UpdateField<uint32, 0, 1> SpecializationID;
- UpdateField<uint32, 0, 2> Enabled;
+ UpdateField<bool, 0, 1> Enabled;
+ UpdateField<uint32, 0, 2> SpecializationID;
UpdateFieldArray<uint32, 4, 3, 4> AzeriteEssenceID;
void WriteCreate(ByteBuffer& data, AzeriteItem const* owner, Player const* receiver) const;
@@ -920,7 +920,7 @@ struct ConversationActor : public IsUpdateFieldStructureTag
uint32 CreatureID;
uint32 CreatureDisplayInfoID;
ObjectGuid ActorGUID;
- int32 Field_18;
+ int32 Id;
uint32 Type;
uint32 NoActorObject;
@@ -935,7 +935,7 @@ struct ConversationData : public IsUpdateFieldStructureTag, public HasChangesMas
UpdateField<std::vector<UF::ConversationLine>, 0, 1> Lines;
DynamicUpdateField<UF::ConversationActor, 0, 2> Actors;
UpdateField<int32, 0, 3> LastLineEndTime;
- UpdateField<uint32, 0, 4> Field_1C;
+ UpdateField<uint32, 0, 4> Progress;
void WriteCreate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fieldVisibilityFlags, Conversation const* owner, Player const* receiver) const;
void WriteUpdate(ByteBuffer& data, EnumFlag<UpdateFieldFlag> fieldVisibilityFlags, Conversation const* owner, Player const* receiver) const;