Core/PacketIO: Updated packets to 8.3.0
Port From (https://github.com/TrinityCore/TrinityCore/commit/462a10de17003631957b69e578e7e4c55ed1ef61)
This commit is contained in:
@@ -354,7 +354,7 @@ namespace Game.Network.Packets
|
||||
|
||||
class AuctionListPendingSalesResult : ServerPacket
|
||||
{
|
||||
public AuctionListPendingSalesResult() : base(ServerOpcodes.AuctionListPendingSalesResult) { }
|
||||
public AuctionListPendingSalesResult() : base(ServerOpcodes.Unknown) { }
|
||||
|
||||
public override void Write()
|
||||
{
|
||||
|
||||
@@ -132,10 +132,17 @@ namespace Game.Network.Packets
|
||||
_worldPacket.WriteUInt32(SuccessInfo.Value.CurrencyID);
|
||||
_worldPacket.WriteUInt32(SuccessInfo.Value.Time);
|
||||
|
||||
foreach (var klass in SuccessInfo.Value.AvailableClasses)
|
||||
foreach (var raceClassAvailability in SuccessInfo.Value.AvailableClasses)
|
||||
{
|
||||
_worldPacket.WriteUInt8(klass.Key); // the current class
|
||||
_worldPacket.WriteUInt8(klass.Value); // the required Expansion
|
||||
_worldPacket.WriteUInt8(raceClassAvailability.RaceID);
|
||||
_worldPacket.WriteInt32(raceClassAvailability.Classes.Count);
|
||||
|
||||
foreach (var classAvailability in raceClassAvailability.Classes)
|
||||
{
|
||||
_worldPacket.WriteUInt8(classAvailability.ClassID);
|
||||
_worldPacket.WriteUInt8(classAvailability.ActiveExpansionLevel);
|
||||
_worldPacket.WriteUInt8(classAvailability.AccountExpansionLevel);
|
||||
}
|
||||
}
|
||||
|
||||
_worldPacket.WriteBit(SuccessInfo.Value.IsExpansionTrial);
|
||||
@@ -197,8 +204,8 @@ namespace Game.Network.Packets
|
||||
|
||||
public class AuthSuccessInfo
|
||||
{
|
||||
public byte AccountExpansionLevel; // the current expansion of this account, the possible values are in @ref Expansions
|
||||
public byte ActiveExpansionLevel; // the current server expansion, the possible values are in @ref Expansions
|
||||
public byte AccountExpansionLevel; // the current expansion of this account, the possible values are in @ref Expansions
|
||||
public uint TimeRested; // affects the return value of the GetBillingTimeRested() client API call, it is the number of seconds you have left until the experience points and loot you receive from creatures and quests is reduced. It is only used in the Asia region in retail, it's not implemented in TC and will probably never be.
|
||||
|
||||
public uint VirtualRealmAddress; // a special identifier made from the Index, BattleGroup and Region. @todo implement
|
||||
@@ -211,7 +218,7 @@ namespace Game.Network.Packets
|
||||
public List<VirtualRealmInfo> VirtualRealms = new List<VirtualRealmInfo>(); // list of realms connected to this one (inclusive) @todo implement
|
||||
public List<CharacterTemplate> Templates = new List<CharacterTemplate>(); // list of pre-made character templates. @todo implement
|
||||
|
||||
public Dictionary<byte, byte> AvailableClasses; // the minimum AccountExpansion required to select the classes
|
||||
public List<RaceClassAvailability> AvailableClasses; // the minimum AccountExpansion required to select the classes
|
||||
|
||||
public bool IsExpansionTrial;
|
||||
public bool ForceCharacterTemplate; // forces the client to always use a character template when creating a new character. @see Templates. @todo implement
|
||||
|
||||
@@ -219,12 +219,21 @@ namespace Game.Network.Packets
|
||||
data.WriteUInt32(Unknown703);
|
||||
data.WriteUInt32(LastLoginVersion);
|
||||
data.WriteUInt32(Flags4);
|
||||
data.WriteInt32(Unknown830.Count);
|
||||
data.WriteBits(Name.GetByteCount(), 6);
|
||||
data.WriteBit(FirstLogin);
|
||||
data.WriteBit(BoostInProgress);
|
||||
data.WriteBits(unkWod61x, 5);
|
||||
|
||||
foreach (string str in Unknown830)
|
||||
data.WriteBits(str.GetByteCount() + 1, 6);
|
||||
|
||||
data.FlushBits();
|
||||
|
||||
foreach (string str in Unknown830)
|
||||
if (!str.IsEmpty())
|
||||
data.WriteCString(str);
|
||||
|
||||
data.WriteString(Name);
|
||||
}
|
||||
|
||||
@@ -262,6 +271,8 @@ namespace Game.Network.Packets
|
||||
public bool BoostInProgress; // @todo
|
||||
public uint[] ProfessionIds = new uint[2]; // @todo
|
||||
public VisualItemInfo[] VisualItems = new VisualItemInfo[InventorySlots.BagEnd];
|
||||
public List<string> Unknown830 = new List<string>(); // Something with character names, same length limit as name,
|
||||
// client accepts unlimited number of these in packet but only uses first 3
|
||||
|
||||
public struct VisualItemInfo
|
||||
{
|
||||
|
||||
@@ -460,11 +460,13 @@ namespace Game.Network.Packets
|
||||
public void Write(WorldPacket data)
|
||||
{
|
||||
data.WriteInt32(GarrTalentID);
|
||||
data.WriteInt32(Rank);
|
||||
data.WriteUInt32((uint)ResearchStartTime);
|
||||
data.WriteInt32(Flags);
|
||||
}
|
||||
|
||||
public int GarrTalentID;
|
||||
public int Rank;
|
||||
public long ResearchStartTime;
|
||||
public int Flags;
|
||||
}
|
||||
@@ -496,18 +498,18 @@ namespace Game.Network.Packets
|
||||
mission.Write(data);
|
||||
|
||||
foreach (List<GarrisonMissionReward> missionReward in MissionRewards)
|
||||
{
|
||||
data.WriteInt32(missionReward.Count);
|
||||
|
||||
foreach (List<GarrisonMissionReward> missionReward in MissionRewards)
|
||||
foreach (GarrisonMissionReward missionRewardItem in missionReward)
|
||||
missionRewardItem.Write(data);
|
||||
}
|
||||
|
||||
foreach (List<GarrisonMissionReward> missionReward in MissionOvermaxRewards)
|
||||
{
|
||||
data.WriteInt32(missionReward.Count);
|
||||
|
||||
foreach (List<GarrisonMissionReward> missionReward in MissionOvermaxRewards)
|
||||
foreach (GarrisonMissionReward missionRewardItem in missionReward)
|
||||
missionRewardItem.Write(data);
|
||||
}
|
||||
|
||||
foreach (GarrisonMissionBonusAbility areaBonus in MissionAreaBonuses)
|
||||
areaBonus.Write(data);
|
||||
|
||||
@@ -274,6 +274,7 @@ namespace Game.Network.Packets
|
||||
public override void Write()
|
||||
{
|
||||
_worldPacket.WriteUInt32(GameObjectID);
|
||||
_worldPacket.WritePackedGuid(Guid);
|
||||
_worldPacket.WriteBit(Allow);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
@@ -307,6 +308,7 @@ namespace Game.Network.Packets
|
||||
}
|
||||
|
||||
public uint GameObjectID;
|
||||
public ObjectGuid Guid;
|
||||
public bool Allow;
|
||||
public GameObjectStats Stats;
|
||||
}
|
||||
|
||||
@@ -32,6 +32,8 @@ namespace Game.Network.Packets
|
||||
_worldPacket.WriteUInt32(SceneScriptPackageID);
|
||||
_worldPacket.WritePackedGuid(TransportGUID);
|
||||
_worldPacket.WriteXYZO(Location);
|
||||
_worldPacket.WriteBit(PerformTactCallbacks);
|
||||
_worldPacket.FlushBits();
|
||||
}
|
||||
|
||||
public uint SceneID;
|
||||
@@ -40,6 +42,7 @@ namespace Game.Network.Packets
|
||||
public uint SceneScriptPackageID;
|
||||
public ObjectGuid TransportGUID;
|
||||
public Position Location;
|
||||
public bool PerformTactCallbacks;
|
||||
}
|
||||
|
||||
class CancelScene : ServerPacket
|
||||
|
||||
@@ -77,7 +77,6 @@ namespace Game.Network.Packets
|
||||
_worldPacket.WriteBit(WillKickFromWorld);
|
||||
_worldPacket.WriteBit(KioskModeEnabled);
|
||||
_worldPacket.WriteBit(CompetitiveModeEnabled);
|
||||
_worldPacket.WriteBit(RaceClassExpansionLevels.HasValue);
|
||||
_worldPacket.WriteBit(TokenBalanceEnabled);
|
||||
_worldPacket.WriteBit(WarModeFeatureEnabled);
|
||||
_worldPacket.WriteBit(ClubsEnabled);
|
||||
@@ -124,13 +123,6 @@ namespace Game.Network.Packets
|
||||
_worldPacket.WriteInt32(SessionAlert.Value.DisplayTime);
|
||||
}
|
||||
|
||||
if (RaceClassExpansionLevels.HasValue)
|
||||
{
|
||||
_worldPacket.WriteInt32(RaceClassExpansionLevels.Value.Count);
|
||||
foreach (var level in RaceClassExpansionLevels.Value)
|
||||
_worldPacket.WriteUInt8(level);
|
||||
}
|
||||
|
||||
_worldPacket.WriteBit(VoiceChatManagerSettings.IsSquelched);
|
||||
_worldPacket.WritePackedGuid(VoiceChatManagerSettings.BnetAccountGuid);
|
||||
_worldPacket.WritePackedGuid(VoiceChatManagerSettings.GuildGuid);
|
||||
@@ -192,7 +184,6 @@ namespace Game.Network.Packets
|
||||
public bool IsMuted;
|
||||
public bool ClubFinderEnabled;
|
||||
|
||||
public Optional<List<byte>> RaceClassExpansionLevels;
|
||||
public SocialQueueConfig QuickJoinConfig;
|
||||
public VoiceChatProxySettings VoiceChatManagerSettings;
|
||||
public RafSystemFeatureInfo RAFSystem;
|
||||
|
||||
Reference in New Issue
Block a user