/// <summary> /// Sends BCharacterDetailsPacket. /// </summary> /// <param name="s">The session.</param> /// <param name="p">Packet BRequestRetrievePersistentData or BRequestRegionMap.</param> public static void SendResponseCharacterDetails(Session s, Package p) { Character ObjCharacter = s.Player.Empire.CurrentCharacter; PacketBCharacterDetailsPacket ResponseContent = new PacketBCharacterDetailsPacket(ObjCharacter.Name, ObjCharacter.Id, ObjCharacter.Level, Convert.ToInt32(ObjCharacter.Resources.GetResource("XP")), ObjCharacter.Currentage, DatabaseHelper.GetMaximumXPforLevel(ObjCharacter.Level), ObjCharacter.Currentregion, Convert.ToInt32(ObjCharacter.Capitalresources.GetResource("SkillPoints")), Convert.ToInt32(ObjCharacter.Capitalresources.GetResource("Skillresetpoints"))); Logger.Debug($"{p.Key}::SendResponseCharacterDetails - Execute command: {ResponseContent}"); byte[] Response = ResponseContent.ToByteArray(); Package Package = new Package(p.HeaderXuid, p.HeaderField20, p.HeaderServiceId, p.HeaderField22, PacketTypes.BCharacterDetailsPacket, 0, Response); byte[] ToSend = Package.ToByteArray(); s.Send(ToSend, 0, ToSend.Length); }
/// <summary> /// Sends BCharacterDetailsPacket. /// </summary> /// <param name="s">The session.</param> /// <param name="p">Packet BRequestRetrievePersistentData.</param> /// <param name="r">Packet BRequestRetrievePersistentData content.</param> private static void _SendResponseCharacterDetails(Session s, Package p, PacketBRequestRetrievePersistentData r) { PacketBCharacterDetailsPacket ResponseContent = new PacketBCharacterDetailsPacket(s.CharacterName, r.CharacterId, s.CharacterLevel, s.CharacterXp, s.CharacterMaxAge, s.CharacterMaxLevelXp, s.Region, s.SkillPoints, s.SkillResetPoints); if (s.Logger.IsDebugEnabled) { s.Logger.Debug($"Command response: {ResponseContent}"); } byte[] Response = ResponseContent.ToByteArray(); Package Package = new Package(p.HeaderXuid, p.HeaderField20, p.HeaderServiceId, p.HeaderField22, (byte)PacketTypes.BCharacterDetailsPacket, p.HeaderRequestId, Response); byte[] ToSend = Package.ToByteArray(); s.Send(ToSend, 0, ToSend.Length); }