Core/Items: Implement azerite essences
Port From (https://github.com/TrinityCore/TrinityCore/commit/ec9d624aec9e0a39b1bcee7d4077f46be358faad)
This commit is contained in:
@@ -75,7 +75,7 @@ namespace Game.Network.Packets
|
||||
GuildData.Value.Write(_worldPacket);
|
||||
|
||||
if (AzeriteLevel.HasValue)
|
||||
_worldPacket.WriteInt32(AzeriteLevel.Value);
|
||||
_worldPacket.WriteUInt32((uint)AzeriteLevel);
|
||||
}
|
||||
|
||||
public PlayerModelDisplayInfo DisplayInfo;
|
||||
@@ -84,7 +84,7 @@ namespace Game.Network.Packets
|
||||
public List<ushort> PvpTalents = new List<ushort>();
|
||||
public Optional<InspectGuildData> GuildData = new Optional<InspectGuildData>();
|
||||
public Array<PVPBracketData> Bracket = new Array<PVPBracketData>(6);
|
||||
public Optional<int> AzeriteLevel;
|
||||
public uint? AzeriteLevel;
|
||||
public int ItemLevel;
|
||||
public uint LifetimeHK;
|
||||
public uint HonorLevel;
|
||||
@@ -156,6 +156,30 @@ namespace Game.Network.Packets
|
||||
}
|
||||
++i;
|
||||
}
|
||||
|
||||
AzeriteItem azeriteItem = item.ToAzeriteItem();
|
||||
if (azeriteItem != null)
|
||||
{
|
||||
SelectedAzeriteEssences essences = azeriteItem.GetSelectedAzeriteEssences();
|
||||
if (essences != null)
|
||||
{
|
||||
for (byte slot = 0; slot < essences.AzeriteEssenceID.GetSize(); ++slot)
|
||||
{
|
||||
AzeriteEssenceData essence = new AzeriteEssenceData();
|
||||
essence.Index = slot;
|
||||
essence.AzeriteEssenceID = essences.AzeriteEssenceID[slot];
|
||||
if (essence.AzeriteEssenceID != 0)
|
||||
{
|
||||
essence.Rank = azeriteItem.GetEssenceRank(essence.AzeriteEssenceID);
|
||||
essence.SlotUnlocked = true;
|
||||
}
|
||||
else
|
||||
essence.SlotUnlocked = azeriteItem.HasUnlockedEssenceSlot(slot);
|
||||
|
||||
AzeriteEssences.Add(essence);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void Write(WorldPacket data)
|
||||
|
||||
Reference in New Issue
Block a user