Fixed DB2 loading and world login!!!!!
This commit is contained in:
@@ -36,7 +36,7 @@ namespace Game.Network.Packets
|
||||
ArtifactPowerChoice artifactPowerChoice;
|
||||
artifactPowerChoice.ArtifactPowerID = _worldPacket.ReadUInt32();
|
||||
artifactPowerChoice.Rank = _worldPacket.ReadUInt8();
|
||||
PowerChoices.Add(artifactPowerChoice);
|
||||
PowerChoices[i] = artifactPowerChoice;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -102,7 +102,7 @@ namespace Game.Network.Packets
|
||||
AuctionItemForSale item;
|
||||
item.Guid = _worldPacket.ReadPackedGuid();
|
||||
item.UseCount = _worldPacket.ReadUInt32();
|
||||
Items.Add(item);
|
||||
Items[i] = item;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -304,9 +304,9 @@ namespace Game.Network.Packets
|
||||
ClassFilter.SubClassFilter subClassFilter;
|
||||
subClassFilter.ItemSubclass = _worldPacket.ReadInt32();
|
||||
subClassFilter.InvTypeMask = _worldPacket.ReadUInt32();
|
||||
classFilter.SubClassFilters.Add(subClassFilter);
|
||||
classFilter.SubClassFilters[x] = subClassFilter;
|
||||
}
|
||||
ClassFilters.Add(classFilter);
|
||||
ClassFilters[i] = classFilter;
|
||||
}
|
||||
|
||||
_worldPacket.Skip(4); // DataSize = (SortCount * 2)
|
||||
|
||||
@@ -83,7 +83,7 @@ namespace Game.Network.Packets
|
||||
RealmID = _worldPacket.ReadUInt32();
|
||||
|
||||
for (var i = 0; i < LocalChallenge.GetLimit(); ++i)
|
||||
LocalChallenge.Add(_worldPacket.ReadUInt8());
|
||||
LocalChallenge[i] = _worldPacket.ReadUInt8();
|
||||
|
||||
Digest = _worldPacket.ReadBytes(24);
|
||||
|
||||
|
||||
@@ -106,7 +106,8 @@ namespace Game.Network.Packets
|
||||
public override void Read()
|
||||
{
|
||||
Token = _worldPacket.ReadUInt32();
|
||||
Secret.AddRange(_worldPacket.ReadBytes((uint)Secret.Capacity));
|
||||
for (var i = 0; i < Secret.GetLimit(); ++i)
|
||||
Secret[i] = _worldPacket.ReadUInt8();
|
||||
}
|
||||
|
||||
public uint Token;
|
||||
|
||||
@@ -182,6 +182,7 @@ namespace Game.Network.Packets
|
||||
public void Write(WorldPacket data)
|
||||
{
|
||||
data.WritePackedGuid(Guid);
|
||||
data.WriteUInt64(GuildClubMemberID);
|
||||
data.WriteUInt8(ListPosition);
|
||||
data.WriteUInt8(RaceId);
|
||||
data.WriteUInt8(ClassId);
|
||||
@@ -228,6 +229,7 @@ namespace Game.Network.Packets
|
||||
}
|
||||
|
||||
public ObjectGuid Guid;
|
||||
public ulong GuildClubMemberID; // same as bgs.protocol.club.v1.MemberId.unique_id, guessed basing on SMSG_QUERY_PLAYER_NAME_RESPONSE (that one is known)
|
||||
public string Name;
|
||||
public byte ListPosition; // Order of the characters in list
|
||||
public byte RaceId;
|
||||
@@ -320,7 +322,7 @@ namespace Game.Network.Packets
|
||||
CreateInfo.OutfitId = _worldPacket.ReadUInt8();
|
||||
|
||||
for (var i = 0; i < CreateInfo.CustomDisplay.GetLimit(); ++i)
|
||||
CreateInfo.CustomDisplay.Add(_worldPacket.ReadUInt8());
|
||||
CreateInfo.CustomDisplay[i] = _worldPacket.ReadUInt8();
|
||||
|
||||
CreateInfo.Name = _worldPacket.ReadString(nameLength);
|
||||
if (CreateInfo.TemplateSet.HasValue)
|
||||
@@ -423,7 +425,7 @@ namespace Game.Network.Packets
|
||||
CustomizeInfo.FaceID = _worldPacket.ReadUInt8();
|
||||
|
||||
for (var i = 0; i < CustomizeInfo.CustomDisplay.GetLimit(); ++i)
|
||||
CustomizeInfo.CustomDisplay.Add(_worldPacket.ReadUInt8());
|
||||
CustomizeInfo.CustomDisplay[i] = _worldPacket.ReadUInt8();
|
||||
|
||||
CustomizeInfo.CharName = _worldPacket.ReadString(_worldPacket.ReadBits<uint>(6));
|
||||
}
|
||||
@@ -456,7 +458,7 @@ namespace Game.Network.Packets
|
||||
RaceOrFactionChangeInfo.FaceID = _worldPacket.ReadUInt8();
|
||||
|
||||
for (var i = 0; i < RaceOrFactionChangeInfo.CustomDisplay.GetLimit(); ++i)
|
||||
RaceOrFactionChangeInfo.CustomDisplay.Add(_worldPacket.ReadUInt8());
|
||||
RaceOrFactionChangeInfo.CustomDisplay[i] = _worldPacket.ReadUInt8();
|
||||
|
||||
RaceOrFactionChangeInfo.Name = _worldPacket.ReadString(nameLength);
|
||||
}
|
||||
@@ -809,7 +811,7 @@ namespace Game.Network.Packets
|
||||
NewFace = _worldPacket.ReadUInt32();
|
||||
|
||||
for (var i = 0; i < NewCustomDisplay.GetLimit(); ++i)
|
||||
NewCustomDisplay.Add(_worldPacket.ReadUInt32());
|
||||
NewCustomDisplay[i] = _worldPacket.ReadUInt32();
|
||||
}
|
||||
|
||||
public uint NewHairStyle;
|
||||
|
||||
@@ -93,12 +93,12 @@ namespace Game.Network.Packets
|
||||
|
||||
for (byte i = 0; i < EquipmentSlot.End; ++i)
|
||||
{
|
||||
Set.Pieces.Add(_worldPacket.ReadPackedGuid());
|
||||
Set.Appearances.Add(_worldPacket.ReadInt32());
|
||||
Set.Pieces[i] = _worldPacket.ReadPackedGuid();
|
||||
Set.Appearances[i] = _worldPacket.ReadInt32();
|
||||
}
|
||||
|
||||
Set.Enchants.Add(_worldPacket.ReadInt32());
|
||||
Set.Enchants.Add(_worldPacket.ReadInt32());
|
||||
Set.Enchants[0] = _worldPacket.ReadInt32();
|
||||
Set.Enchants[1] = _worldPacket.ReadInt32();
|
||||
|
||||
bool hasSpecIndex = _worldPacket.HasBit();
|
||||
|
||||
|
||||
@@ -204,12 +204,13 @@ namespace Game.Network.Packets
|
||||
data.WriteFloat(1.0f); // DurationModifier
|
||||
data.WriteFloat(1.0f); // NextDurationModifier
|
||||
data.WriteBits((byte)moveSpline.facing.type, 2); // Face
|
||||
bool HasJumpGravity = data.WriteBit(moveSpline.splineflags.hasFlag(SplineFlag.Parabolic | SplineFlag.Animation)); // HasJumpGravity
|
||||
bool HasSpecialTime = data.WriteBit(moveSpline.splineflags.hasFlag(SplineFlag.Parabolic) && moveSpline.effect_start_time < moveSpline.Duration()); // HasSpecialTime
|
||||
bool hasFadeObjectTime = data.WriteBit(moveSpline.splineflags.hasFlag(SplineFlag.FadeObject) && moveSpline.effect_start_time < moveSpline.Duration());
|
||||
data.WriteBits(moveSpline.getPath().Length, 16);
|
||||
data.WriteBits((byte)moveSpline.spline.m_mode, 2); // Mode
|
||||
data.WriteBit(0); // HasSplineFilter
|
||||
data.WriteBit(moveSpline.spell_effect_extra.HasValue); // HasSpellEffectExtraData
|
||||
data.WriteBit(moveSpline.splineflags.hasFlag(SplineFlag.Parabolic)); // HasJumpExtraData
|
||||
data.FlushBits();
|
||||
|
||||
//if (HasSplineFilterKey)
|
||||
//{
|
||||
@@ -237,11 +238,8 @@ namespace Game.Network.Packets
|
||||
break;
|
||||
}
|
||||
|
||||
if (HasJumpGravity)
|
||||
data.WriteFloat(moveSpline.vertical_acceleration); // JumpGravity
|
||||
|
||||
if (HasSpecialTime)
|
||||
data.WriteUInt32(moveSpline.effect_start_time); // SpecialTime
|
||||
if (hasFadeObjectTime)
|
||||
data.WriteUInt32(moveSpline.effect_start_time); // FadeObjectTime
|
||||
|
||||
foreach (var vec in moveSpline.getPath())
|
||||
data.WriteVector3(vec);
|
||||
@@ -253,6 +251,13 @@ namespace Game.Network.Packets
|
||||
data.WriteUInt32(moveSpline.spell_effect_extra.Value.ProgressCurveId);
|
||||
data.WriteUInt32(moveSpline.spell_effect_extra.Value.ParabolicCurveId);
|
||||
}
|
||||
|
||||
if (moveSpline.splineflags.hasFlag(SplineFlag.Parabolic))
|
||||
{
|
||||
data.WriteFloat(moveSpline.vertical_acceleration);
|
||||
data.WriteUInt32(moveSpline.effect_start_time);
|
||||
data.WriteUInt32(0); // Duration (override)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -111,8 +111,6 @@ namespace Game.Network.Packets
|
||||
|
||||
for (var i = 0; i < SharedConst.MaxCreatureKillCredit; ++i)
|
||||
_worldPacket.WriteUInt32(Stats.ProxyCreatureID[i]);
|
||||
_worldPacket.WriteUInt32(Stats.Display.CreatureDisplay.Count);
|
||||
_worldPacket.WriteFloat(Stats.Display.TotalProbability);
|
||||
|
||||
_worldPacket.WriteUInt32(Stats.Display.CreatureDisplay.Count);
|
||||
_worldPacket.WriteFloat(Stats.Display.TotalProbability);
|
||||
@@ -760,7 +758,7 @@ namespace Game.Network.Packets
|
||||
public string UnkString;
|
||||
public uint Type;
|
||||
public uint DisplayID;
|
||||
public int[] Data = new int[33];
|
||||
public int[] Data = new int[SharedConst.MaxGOData];
|
||||
public float Size;
|
||||
public List<uint> QuestItems = new List<uint>();
|
||||
public uint RequiredLevel;
|
||||
|
||||
@@ -119,7 +119,7 @@ namespace Game.Network.Packets
|
||||
{
|
||||
var count = _worldPacket.ReadUInt32();
|
||||
for (var i = 0; i < count; ++i)
|
||||
MissingScenarioPOIs.Add(_worldPacket.ReadInt32());
|
||||
MissingScenarioPOIs[i] = _worldPacket.ReadInt32();
|
||||
}
|
||||
|
||||
public Array<int> MissingScenarioPOIs = new Array<int>(35);
|
||||
|
||||
@@ -79,6 +79,7 @@ namespace Game.Network.Packets
|
||||
_worldPacket.WriteBit(ClubsCharacterClubTypeAllowed);
|
||||
_worldPacket.WriteBit(VoiceChatDisabledByParentalControl);
|
||||
_worldPacket.WriteBit(VoiceChatMutedByParentalControl);
|
||||
_worldPacket.FlushBits();
|
||||
|
||||
{
|
||||
_worldPacket.WriteBit(QuickJoinConfig.ToastsDisabled);
|
||||
|
||||
@@ -71,9 +71,8 @@ namespace Game.Network.Packets
|
||||
public override void Read()
|
||||
{
|
||||
uint count = _worldPacket.ReadBits<uint>(6);
|
||||
|
||||
for (uint i = 0; i < count; ++i)
|
||||
Talents.Add(_worldPacket.ReadUInt16());
|
||||
for (int i = 0; i < count; ++i)
|
||||
Talents[i] = _worldPacket.ReadUInt16();
|
||||
}
|
||||
|
||||
public Array<ushort> Talents = new Array<ushort>(PlayerConst.MaxTalentTiers);
|
||||
|
||||
@@ -34,7 +34,7 @@ namespace Game.Network.Packets
|
||||
{
|
||||
TransmogrifyItem item = new TransmogrifyItem();
|
||||
item.Read(_worldPacket);
|
||||
Items.Add(item);
|
||||
Items[i] = item;
|
||||
}
|
||||
|
||||
CurrentSpecOnly = _worldPacket.HasBit();
|
||||
|
||||
Reference in New Issue
Block a user