public void CItemsChangeReq(GameSession session, CItemsChangeReqMessage message) { var plr = session.Player; Logger.Debug() .Account(session) .Message($"Item sync - {JsonConvert.SerializeObject(message.Unk1, Formatting.Indented)}") .Write(); if (message.Unk2.Length > 0) { Logger.Warn() .Account(session) .Message($"Unk2: {JsonConvert.SerializeObject(message.Unk2, Formatting.Indented)}") .Write(); } var @char = plr.CharacterManager.CurrentCharacter; var unk1 = new ChangeItemsUnkDto { AccountId = plr.Account.Id, Skills = @char.Skills.GetItems().Select(item => item?.ItemNumber ?? 0).ToArray(), Weapons = @char.Weapons.GetItems().Select(item => item?.ItemNumber ?? 0).ToArray(), Unk4 = message.Unk1.Unk4, Unk5 = message.Unk1.Unk5, Unk6 = message.Unk1.Unk6, HP = plr.GetMaxHP(), Unk8 = message.Unk1.Unk8 }; plr.Room.Broadcast(new SItemsChangeAckMessage(unk1, message.Unk2)); }
public void CItemsChangeReq(GameSession session, CItemsChangeReqMessage message) { var plr = session.Player; Logger.ForAccount(session) .Debug("Item sync - {unk1}", message.Unk1); if (message.Unk2.Length > 0) { Logger.ForAccount(session) .Warning("{unk2}", message.Unk2); } var @char = plr.CharacterManager.CurrentCharacter; var unk1 = new ChangeItemsUnkDto { AccountId = plr.Account.Id, Skills = @char.Skills.GetItems().Select(item => item?.ItemNumber ?? 0).ToArray(), Weapons = @char.Weapons.GetItems().Select(item => item?.ItemNumber ?? 0).ToArray(), Unk4 = message.Unk1.Unk4, Unk5 = message.Unk1.Unk5, Unk6 = message.Unk1.Unk6, HP = plr.GetMaxHP(), Unk8 = message.Unk1.Unk8 }; plr.Room.Broadcast(new SItemsChangeAckMessage(unk1, message.Unk2)); }
public CItemsChangeReqMessage() { Unk1 = new ChangeItemsUnkDto(); Unk2 = Array.Empty <ChangeAvatarUnk2Dto>(); }
public SItemsChangeAckMessage(ChangeItemsUnkDto unk1, ChangeAvatarUnk2Dto[] unk2) { Unk1 = unk1; Unk2 = unk2; }
public RoomChangeItemAckMessage() { Unk1 = new ChangeItemsUnkDto(); Unk2 = Array.Empty <ChangeAvatarUnk2Dto>(); }