Messed up the commit history, so here is all the files rip, Credit to TrinityCore

This commit is contained in:
hondacrx
2023-09-16 08:42:35 -04:00
parent 87284bbded
commit f636ea225f
373 changed files with 158910 additions and 2170 deletions
@@ -532,8 +532,8 @@ namespace Game.Networking.Packets
public override void Write()
{
_worldPacket.WriteUInt32(RankID);
_worldPacket.WriteInt32(WithdrawGoldLimit);
_worldPacket.WriteInt32(Flags);
_worldPacket.WriteInt32(WithdrawGoldLimit);
_worldPacket.WriteInt32(NumTabs);
_worldPacket.WriteInt32(Tab.Count);
@@ -224,7 +224,7 @@ namespace Game.Networking.Packets
public override void Write()
{
_worldPacket.WriteInt8((sbyte)BagResult);
_worldPacket.WriteInt32((int)BagResult);
_worldPacket.WritePackedGuid(Item[0]);
_worldPacket.WritePackedGuid(Item[1]);
_worldPacket.WriteUInt8(ContainerBSlot); // bag type subclass, used with EQUIP_ERR_EVENT_AUTOEQUIP_BIND_CONFIRM and EQUIP_ERR_WRONG_BAG_TYPE_2
@@ -389,12 +389,14 @@ namespace Game.Networking.Packets
public override void Write()
{
_worldPacket.WritePackedGuid(VendorGUID);
_worldPacket.WritePackedGuid(ItemGUID);
_worldPacket.WriteUInt8((byte)Reason);
_worldPacket.WriteInt32(ItemGUIDs.Count);
_worldPacket.WriteInt32((int)Reason);
foreach (ObjectGuid itemGuid in ItemGUIDs)
_worldPacket.WritePackedGuid(itemGuid);
}
public ObjectGuid VendorGUID;
public ObjectGuid ItemGUID;
public List<ObjectGuid> ItemGUIDs = new();
public SellResult Reason = SellResult.Unk;
}
+24 -18
View File
@@ -16,18 +16,21 @@ namespace Game.Networking.Packets
public override void Read()
{
QueueAsGroup = _worldPacket.HasBit();
bool hasPartyIndex = _worldPacket.HasBit();
Unknown = _worldPacket.HasBit();
PartyIndex = _worldPacket.ReadUInt8();
Roles = (LfgRoles)_worldPacket.ReadUInt32();
var slotsCount = _worldPacket.ReadInt32();
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
for (var i = 0; i < slotsCount; ++i) // Slots
Slots.Add(_worldPacket.ReadUInt32());
}
public bool QueueAsGroup;
bool Unknown; // Always false in 7.2.5
public byte PartyIndex;
public bool Unknown; // Always false in 7.2.5
public byte? PartyIndex;
public LfgRoles Roles;
public List<uint> Slots = new();
}
@@ -68,12 +71,14 @@ namespace Game.Networking.Packets
public override void Read()
{
bool hasPartyIndex = _worldPacket.HasBit();
RolesDesired = (LfgRoles)_worldPacket.ReadUInt32();
PartyIndex = _worldPacket.ReadUInt8();
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
}
public LfgRoles RolesDesired;
public byte PartyIndex;
public byte? PartyIndex;
}
class DFBootPlayerVote : ClientPacket
@@ -107,10 +112,11 @@ namespace Game.Networking.Packets
public override void Read()
{
Player = _worldPacket.HasBit();
PartyIndex = _worldPacket.ReadUInt8();
if (_worldPacket.HasBit())
PartyIndex = _worldPacket.ReadUInt8();
}
public byte PartyIndex;
public byte? PartyIndex;
public bool Player;
}
@@ -163,7 +169,7 @@ namespace Game.Networking.Packets
_worldPacket.WriteUInt8(SubType);
_worldPacket.WriteUInt8(Reason);
_worldPacket.WriteInt32(Slots.Count);
_worldPacket.WriteUInt32(RequestedRoles);
_worldPacket.WriteUInt8(RequestedRoles);
_worldPacket.WriteInt32(SuspendedPlayers.Count);
_worldPacket.WriteUInt32(QueueMapID);
@@ -186,7 +192,7 @@ namespace Game.Networking.Packets
public byte SubType;
public byte Reason;
public List<uint> Slots = new();
public uint RequestedRoles;
public byte RequestedRoles;
public List<ObjectGuid> SuspendedPlayers = new();
public uint QueueMapID;
public bool NotifyUI;
@@ -204,7 +210,7 @@ namespace Game.Networking.Packets
public override void Write()
{
_worldPacket.WritePackedGuid(Player);
_worldPacket.WriteUInt32((uint)RoleMask);
_worldPacket.WriteUInt8((byte)RoleMask);
_worldPacket.WriteBit(Accepted);
_worldPacket.FlushBits();
}
@@ -497,7 +503,7 @@ namespace Game.Networking.Packets
{
public void Write(WorldPacket data)
{
data.WriteUInt32(Mask);
data.WriteUInt8(Mask);
data.WriteUInt32(RewardMoney);
data.WriteUInt32(RewardXP);
data.WriteInt32(Item.Count);
@@ -544,7 +550,7 @@ namespace Game.Networking.Packets
data.WriteInt32(Honor.Value);
}
public uint Mask;
public byte Mask;
public uint RewardMoney;
public uint RewardXP;
public List<LfgPlayerQuestRewardItem> Item = new();
@@ -608,7 +614,7 @@ namespace Game.Networking.Packets
public class LFGRoleCheckUpdateMember
{
public LFGRoleCheckUpdateMember(ObjectGuid guid, uint rolesDesired, byte level, bool roleCheckComplete)
public LFGRoleCheckUpdateMember(ObjectGuid guid, byte rolesDesired, byte level, bool roleCheckComplete)
{
Guid = guid;
RolesDesired = rolesDesired;
@@ -619,14 +625,14 @@ namespace Game.Networking.Packets
public void Write(WorldPacket data)
{
data.WritePackedGuid(Guid);
data.WriteUInt32(RolesDesired);
data.WriteUInt8(RolesDesired);
data.WriteUInt8(Level);
data.WriteBit(RoleCheckComplete);
data.FlushBits();
}
public ObjectGuid Guid;
public uint RolesDesired;
public byte RolesDesired;
public byte Level;
public bool RoleCheckComplete;
}
@@ -723,7 +729,7 @@ namespace Game.Networking.Packets
{
public void Write(WorldPacket data)
{
data.WriteUInt32(Roles);
data.WriteUInt8(Roles);
data.WriteBit(Me);
data.WriteBit(SameParty);
data.WriteBit(MyParty);
@@ -732,7 +738,7 @@ namespace Game.Networking.Packets
data.FlushBits();
}
public uint Roles;
public byte Roles;
public bool Me;
public bool SameParty;
public bool MyParty;
@@ -754,14 +754,16 @@ namespace Game.Networking.Packets
public override void Read()
{
bool hasPartyIndex = _worldPacket.HasBit();
Min = _worldPacket.ReadUInt32();
Max = _worldPacket.ReadUInt32();
PartyIndex = _worldPacket.ReadUInt8();
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
}
public uint Min;
public uint Max;
public byte PartyIndex;
public byte? PartyIndex;
}
public class RandomRoll : ServerPacket
+204 -61
View File
@@ -8,6 +8,7 @@ using Game.Groups;
using Game.Spells;
using System;
using System.Collections.Generic;
using System.Numerics;
namespace Game.Networking.Packets
{
@@ -39,8 +40,9 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadUInt8();
bool hasPartyIndex = _worldPacket.HasBit();
_worldPacket.ResetBitPos();
uint targetNameLen = _worldPacket.ReadBits<uint>(9);
uint targetRealmLen = _worldPacket.ReadBits<uint>(9);
@@ -49,9 +51,11 @@ namespace Game.Networking.Packets
TargetName = _worldPacket.ReadString(targetNameLen);
TargetRealm = _worldPacket.ReadString(targetRealmLen);
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
}
public byte PartyIndex;
public byte? PartyIndex;
public uint ProposedRoles;
public string TargetName;
public string TargetRealm;
@@ -70,7 +74,7 @@ namespace Game.Networking.Packets
InviterGUID = inviter.GetGUID();
InviterBNetAccountId = inviter.GetSession().GetAccountGUID();
ProposedRoles = proposedRoles;
ProposedRoles = (byte)proposedRoles;
var realm = Global.WorldMgr.GetRealm();
InviterRealm = new VirtualRealmInfo(realm.Id.GetAddress(), true, false, realm.Name, realm.NormalizedName);
@@ -91,7 +95,7 @@ namespace Game.Networking.Packets
_worldPacket.WritePackedGuid(InviterGUID);
_worldPacket.WritePackedGuid(InviterBNetAccountId);
_worldPacket.WriteUInt16(Unk1);
_worldPacket.WriteUInt32(ProposedRoles);
_worldPacket.WriteUInt8(ProposedRoles);
_worldPacket.WriteInt32(LfgSlots.Count);
_worldPacket.WriteInt32(LfgCompletedMask);
@@ -119,7 +123,7 @@ namespace Game.Networking.Packets
public bool IsXRealm;
// Lfg
public uint ProposedRoles;
public byte ProposedRoles;
public int LfgCompletedMask;
public List<int> LfgSlots = new();
}
@@ -130,18 +134,21 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadUInt8();
bool hasPartyIndex = _worldPacket.HasBit();
Accept = _worldPacket.HasBit();
bool hasRolesDesired = _worldPacket.HasBit();
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
if (hasRolesDesired)
RolesDesired = _worldPacket.ReadUInt32();
RolesDesired = _worldPacket.ReadUInt8();
}
public byte PartyIndex;
public byte? PartyIndex;
public bool Accept;
public uint? RolesDesired;
public byte? RolesDesired;
}
class PartyUninvite : ClientPacket
@@ -150,14 +157,18 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadUInt8();
bool hasPartyIndex = _worldPacket.HasBit();
byte reasonLen = _worldPacket.ReadBits<byte>(8);
TargetGUID = _worldPacket.ReadPackedGuid();
byte reasonLen = _worldPacket.ReadBits<byte>(8);
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
Reason = _worldPacket.ReadString(reasonLen);
}
public byte PartyIndex;
public byte? PartyIndex;
public ObjectGuid TargetGUID;
public string Reason;
}
@@ -192,11 +203,13 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadUInt8();
bool hasPartyIndex = _worldPacket.HasBit();
TargetGUID = _worldPacket.ReadPackedGuid();
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
}
public byte PartyIndex;
public byte? PartyIndex;
public ObjectGuid TargetGUID;
}
@@ -265,8 +278,8 @@ namespace Game.Networking.Packets
MemberStats.PositionZ = (short)(player.GetPositionZ());
MemberStats.SpecID = (ushort)player.GetPrimarySpecialization();
MemberStats.PartyType[0] = (sbyte)(player.m_playerData.PartyType & 0xF);
MemberStats.PartyType[1] = (sbyte)(player.m_playerData.PartyType >> 4);
MemberStats.PartyType[0] = player.m_playerData.PartyType[0];
MemberStats.PartyType[1] = player.m_playerData.PartyType[1];
MemberStats.WmoGroupID = 0;
MemberStats.WmoDoodadPlacementID = 0;
@@ -356,11 +369,13 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadInt8();
bool hasPartyIndex = _worldPacket.HasBit();
TargetGUID = _worldPacket.ReadPackedGuid();
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
}
public sbyte PartyIndex;
public byte? PartyIndex;
public ObjectGuid TargetGUID;
}
@@ -370,14 +385,16 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadInt8();
bool hasPartyIndex = _worldPacket.HasBit();
TargetGUID = _worldPacket.ReadPackedGuid();
Role = _worldPacket.ReadInt32();
Role = _worldPacket.ReadUInt8();
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
}
public sbyte PartyIndex;
public byte? PartyIndex;
public ObjectGuid TargetGUID;
public int Role;
public byte Role;
}
class RoleChangedInform : ServerPacket
@@ -386,18 +403,18 @@ namespace Game.Networking.Packets
public override void Write()
{
_worldPacket.WriteInt8(PartyIndex);
_worldPacket.WriteUInt8(PartyIndex);
_worldPacket.WritePackedGuid(From);
_worldPacket.WritePackedGuid(ChangedUnit);
_worldPacket.WriteInt32(OldRole);
_worldPacket.WriteInt32(NewRole);
_worldPacket.WriteUInt8(OldRole);
_worldPacket.WriteUInt8(NewRole);
}
public sbyte PartyIndex;
public byte PartyIndex;
public ObjectGuid From;
public ObjectGuid ChangedUnit;
public int OldRole;
public int NewRole;
public byte OldRole;
public byte NewRole;
}
class LeaveGroup : ClientPacket
@@ -406,10 +423,11 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadInt8();
if (_worldPacket.HasBit())
PartyIndex = _worldPacket.ReadUInt8();
}
public sbyte PartyIndex;
public byte? PartyIndex;
}
class GroupDestroyed : ServerPacket
@@ -425,13 +443,15 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadInt8();
bool hasPartyIndex = _worldPacket.HasBit();
LootMethod = (LootMethod)_worldPacket.ReadUInt8();
LootMasterGUID = _worldPacket.ReadPackedGuid();
LootThreshold = (ItemQuality)_worldPacket.ReadUInt32();
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
}
public sbyte PartyIndex;
public byte? PartyIndex;
public ObjectGuid LootMasterGUID;
public LootMethod LootMethod;
public ItemQuality LootThreshold;
@@ -443,12 +463,14 @@ namespace Game.Networking.Packets
public override void Read()
{
bool hasPartyIndex = _worldPacket.HasBit();
PositionX = _worldPacket.ReadFloat();
PositionY = _worldPacket.ReadFloat();
PartyIndex = _worldPacket.ReadInt8();
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
}
public sbyte PartyIndex;
public byte? PartyIndex;
public float PositionX;
public float PositionY;
}
@@ -475,12 +497,14 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadInt8();
bool hasPartyIndex = _worldPacket.HasBit();
Target = _worldPacket.ReadPackedGuid();
Symbol = _worldPacket.ReadInt8();
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
}
public sbyte PartyIndex;
public byte? PartyIndex;
public ObjectGuid Target;
public sbyte Symbol;
}
@@ -542,10 +566,11 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadInt8();
if (_worldPacket.HasBit())
PartyIndex = _worldPacket.ReadUInt8();
}
public sbyte PartyIndex;
public byte? PartyIndex;
}
class SetAssistantLeader : ClientPacket
@@ -554,13 +579,15 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadUInt8();
Target = _worldPacket.ReadPackedGuid();
bool hasPartyIndex = _worldPacket.HasBit();
Apply = _worldPacket.HasBit();
Target = _worldPacket.ReadPackedGuid();
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
}
public ObjectGuid Target;
public byte PartyIndex;
public byte? PartyIndex;
public bool Apply;
}
@@ -570,14 +597,16 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadUInt8();
bool hasPartyIndex = _worldPacket.HasBit();
Set = _worldPacket.HasBit();
Assignment = _worldPacket.ReadUInt8();
Target = _worldPacket.ReadPackedGuid();
Set = _worldPacket.HasBit();
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
}
public byte Assignment;
public byte PartyIndex;
public byte? PartyIndex;
public ObjectGuid Target;
public bool Set;
}
@@ -588,10 +617,11 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadInt8();
if (_worldPacket.HasBit())
PartyIndex = _worldPacket.ReadUInt8();
}
public sbyte PartyIndex;
public byte? PartyIndex;
}
class ReadyCheckStarted : ServerPacket
@@ -618,11 +648,12 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadUInt8();
IsReady = _worldPacket.HasBit();
if (_worldPacket.HasBit())
PartyIndex = _worldPacket.ReadUInt8();
}
public byte PartyIndex;
public byte? PartyIndex;
public bool IsReady;
}
@@ -683,10 +714,11 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadInt8();
if (_worldPacket.HasBit())
PartyIndex = _worldPacket.ReadUInt8();
}
public sbyte PartyIndex;
public byte? PartyIndex;
}
class RolePollInform : ServerPacket
@@ -775,11 +807,13 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadUInt8();
bool hasPartyIndex = _worldPacket.HasBit();
EveryoneIsAssistant = _worldPacket.HasBit();
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
}
public byte PartyIndex;
public byte? PartyIndex;
public bool EveryoneIsAssistant;
}
@@ -790,12 +824,13 @@ namespace Game.Networking.Packets
public override void Read()
{
TargetGUID = _worldPacket.ReadPackedGuid();
PartyIndex = _worldPacket.ReadInt8();
NewSubGroup = _worldPacket.ReadUInt8();
if (_worldPacket.HasBit())
PartyIndex = _worldPacket.ReadUInt8();
}
public ObjectGuid TargetGUID;
public sbyte PartyIndex;
public byte? PartyIndex;
public byte NewSubGroup;
}
@@ -805,14 +840,16 @@ namespace Game.Networking.Packets
public override void Read()
{
PartyIndex = _worldPacket.ReadInt8();
bool hasPartyIndex = _worldPacket.HasBit();
FirstTarget = _worldPacket.ReadPackedGuid();
SecondTarget = _worldPacket.ReadPackedGuid();
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
}
public ObjectGuid FirstTarget;
public ObjectGuid SecondTarget;
public sbyte PartyIndex;
public byte? PartyIndex;
}
class ClearRaidMarker : ClientPacket
@@ -893,7 +930,113 @@ namespace Game.Networking.Packets
_worldPacket.FlushBits();
}
}
class SetRestrictPingsToAssistants : ClientPacket
{
public byte? PartyIndex;
public bool RestrictPingsToAssistants;
public SetRestrictPingsToAssistants(WorldPacket packet) : base(packet) { }
public override void Read()
{
bool hasPartyIndex = _worldPacket.HasBit();
RestrictPingsToAssistants = _worldPacket.HasBit();
if (hasPartyIndex)
PartyIndex = _worldPacket.ReadUInt8();
}
}
class SendPingUnit : ClientPacket
{
public ObjectGuid SenderGUID;
public ObjectGuid TargetGUID;
public PingSubjectType Type = PingSubjectType.Max;
public uint PinFrameID;
public SendPingUnit(WorldPacket packet) : base(packet) { }
public override void Read()
{
SenderGUID = _worldPacket.ReadPackedGuid();
TargetGUID = _worldPacket.ReadPackedGuid();
Type = (PingSubjectType)_worldPacket.ReadUInt8();
PinFrameID = _worldPacket.ReadUInt32();
}
}
class ReceivePingUnit : ServerPacket
{
public ObjectGuid SenderGUID;
public ObjectGuid TargetGUID;
public PingSubjectType Type = PingSubjectType.Max;
public uint PinFrameID;
public ReceivePingUnit() : base(ServerOpcodes.ReceivePingUnit) { }
public override void Write()
{
_worldPacket.WritePackedGuid(SenderGUID);
_worldPacket.WritePackedGuid(TargetGUID);
_worldPacket.WriteUInt8((byte)Type);
_worldPacket.WriteUInt32(PinFrameID);
}
}
class SendPingWorldPoint : ClientPacket
{
public ObjectGuid SenderGUID;
public uint MapID;
public Vector3 Point;
public PingSubjectType Type = PingSubjectType.Max;
public uint PinFrameID;
public SendPingWorldPoint(WorldPacket packet) : base(packet) { }
public override void Read()
{
SenderGUID = _worldPacket.ReadPackedGuid();
MapID = _worldPacket.ReadUInt32();
Point = _worldPacket.ReadVector3();
Type = (PingSubjectType)_worldPacket.ReadUInt8();
PinFrameID = _worldPacket.ReadUInt32();
}
}
class ReceivePingWorldPoint : ServerPacket
{
public ObjectGuid SenderGUID;
public uint MapID = 0;
public Vector3 Point;
public PingSubjectType Type = PingSubjectType.Max;
public uint PinFrameID;
public ReceivePingWorldPoint() : base(ServerOpcodes.ReceivePingWorldPoint) { }
public override void Write()
{
_worldPacket.WritePackedGuid(SenderGUID);
_worldPacket.WriteUInt32(MapID);
_worldPacket.WriteVector3(Point);
_worldPacket.WriteUInt8((byte)Type);
_worldPacket.WriteUInt32(PinFrameID);
}
}
class CancelPingPin : ServerPacket
{
public ObjectGuid SenderGUID;
public uint PinFrameID;
public CancelPingPin() : base(ServerOpcodes.CancelPingPin) { }
public override void Write()
{
_worldPacket.WritePackedGuid(SenderGUID);
_worldPacket.WriteUInt32(PinFrameID);
}
}
//Structs
public struct PartyMemberPhase
{
@@ -931,7 +1074,7 @@ namespace Game.Networking.Packets
}
class PartyMemberAuraStates
{
{
public int SpellID;
public ushort Flags;
public uint ActiveFlags;
@@ -993,7 +1136,7 @@ namespace Game.Networking.Packets
public void Write(WorldPacket data)
{
for (byte i = 0; i < 2; i++)
data.WriteInt8(PartyType[i]);
data.WriteUInt8(PartyType[i]);
data.WriteInt16((short)Status);
data.WriteUInt8(PowerType);
@@ -1053,7 +1196,7 @@ namespace Game.Networking.Packets
public ushort SpecID;
public ushort WmoGroupID;
public uint WmoDoodadPlacementID;
public sbyte[] PartyType = new sbyte[2];
public byte[] PartyType = new byte[2];
public CTROptions ChromieTime;
public DungeonScoreSummary DungeonScore = new();
}
@@ -337,6 +337,23 @@ namespace Game.Networking.Packets
public byte Result;
}
class PetMode : ServerPacket
{
public ObjectGuid PetGUID;
public ReactStates ReactState;
public CommandStates CommandState;
public byte Flag;
public PetMode() : base(ServerOpcodes.PetMode, ConnectionType.Instance) { }
public override void Write()
{
_worldPacket.WritePackedGuid(PetGUID);
_worldPacket.WriteUInt16((ushort)((int)CommandState | Flag << 8));
_worldPacket.WriteUInt8((byte)ReactState);
}
}
//Structs
public class PetSpellCooldown
+7 -21
View File
@@ -1753,11 +1753,9 @@ namespace Game.Networking.Packets
public void Write(WorldPacket data)
{
data.WriteBits((byte)Reason, 4);
data.WriteUInt8((byte)Reason);
if (Reason == SpellMissInfo.Reflect)
data.WriteBits(ReflectStatus, 4);
data.FlushBits();
data.WriteUInt8((byte)ReflectStatus);
}
public SpellMissInfo Reason;
@@ -1805,18 +1803,6 @@ namespace Game.Networking.Packets
}
}
public struct SpellAmmo
{
public int DisplayID;
public sbyte InventoryType;
public void Write(WorldPacket data)
{
data.WriteInt32(DisplayID);
data.WriteInt8(InventoryType);
}
}
public struct CreatureImmunities
{
public uint School;
@@ -1861,7 +1847,7 @@ namespace Game.Networking.Packets
MissileTrajectory.Write(data);
data.WriteInt32(Ammo.DisplayID);
data.WriteInt32(AmmoDisplayID);
data.WriteUInt8(DestLocSpellCastIndex);
Immunities.Write(data);
@@ -1876,9 +1862,6 @@ namespace Game.Networking.Packets
data.WriteBits(TargetPoints.Count, 16);
data.FlushBits();
foreach (SpellMissStatus missStatus in MissStatus)
missStatus.Write(data);
Target.Write(data);
foreach (ObjectGuid hitTarget in HitTargets)
@@ -1890,6 +1873,9 @@ namespace Game.Networking.Packets
foreach (SpellHitStatus hitStatus in HitStatus)
hitStatus.Write(data);
foreach (SpellMissStatus missStatus in MissStatus)
missStatus.Write(data);
foreach (SpellPowerData power in RemainingPower)
power.Write(data);
@@ -1917,7 +1903,7 @@ namespace Game.Networking.Packets
public List<SpellPowerData> RemainingPower = new();
public RuneData RemainingRunes;
public MissileTrajectoryResult MissileTrajectory;
public SpellAmmo Ammo;
public int AmmoDisplayID;
public byte DestLocSpellCastIndex;
public List<TargetLocation> TargetPoints = new();
public CreatureImmunities Immunities;
@@ -85,6 +85,7 @@ namespace Game.Networking.Packets
_worldPacket.WriteBit(AddonsDisabled);
_worldPacket.WriteBit(Unused1000);
_worldPacket.WriteBit(ContentTrackingEnabled);
_worldPacket.WriteBit(IsSellAllJunkEnabled);
_worldPacket.FlushBits();
@@ -178,6 +179,7 @@ namespace Game.Networking.Packets
public bool AddonsDisabled;
public bool Unused1000;
public bool ContentTrackingEnabled;
public bool IsSellAllJunkEnabled;
public SocialQueueConfig QuickJoinConfig;
public SquelchInfo Squelch;
@@ -272,6 +274,10 @@ namespace Game.Networking.Packets
_worldPacket.WriteBit(AccountSaveDataExportEnabled);
_worldPacket.WriteBit(AccountLockedByExport);
_worldPacket.WriteBit(!RealmHiddenAlert.IsEmpty());
if (!RealmHiddenAlert.IsEmpty())
_worldPacket.WriteBits(RealmHiddenAlert.GetByteCount() + 1, 11);
_worldPacket.FlushBits();
@@ -299,6 +305,9 @@ namespace Game.Networking.Packets
if (LaunchETA.HasValue)
_worldPacket.WriteInt32(LaunchETA.Value);
if (!RealmHiddenAlert.IsEmpty())
_worldPacket.WriteString(RealmHiddenAlert);
foreach (var sourceRegion in LiveRegionCharacterCopySourceRegions)
_worldPacket.WriteInt32(sourceRegion);
@@ -349,6 +358,7 @@ namespace Game.Networking.Packets
public int? LaunchETA;
public List<DebugTimeEventInfo> DebugTimeEvents = new();
public int Unused1007;
public string RealmHiddenAlert;
}
public class MOTD : ServerPacket