Fixed DB2 loading and world login!!!!!

This commit is contained in:
hondacrx
2018-12-14 18:43:35 -05:00
parent 8e20114e10
commit f414068883
44 changed files with 779 additions and 852 deletions
@@ -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();
+12 -7
View File
@@ -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)
}
}
}
+1 -3
View File
@@ -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);
+2 -3
View File
@@ -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();