public static void HandlePlayerInfoRequest(WorldSession session, ClientPlayerInfoRequest request) { session.EnqueueEvent(new TaskGenericEvent <Character>(CharacterDatabase.GetCharacterById(request.Identity.CharacterId), character => { if (character == null) { throw new InvalidPacketValueException(); } session.EnqueueMessageEncrypted(new ServerPlayerInfoFullResponse { BaseData = new ServerPlayerInfoFullResponse.Base { ResultCode = 0, Identity = new TargetPlayerIdentity { RealmId = WorldServer.RealmId, CharacterId = character.Id }, Name = character.Name, Faction = (Faction)character.FactionId }, IsClassPathSet = true, Path = (Path)character.ActivePath, Class = (Class)character.Class, Level = character.Level, IsLastLoggedOnInDaysSet = false, LastLoggedInDays = -1f }); })); }
public static void HandlePlayerInfoRequest(WorldSession session, ClientPlayerInfoRequest request) { ICharacter character = CharacterManager.Instance.GetCharacterInfo(request.Identity.CharacterId); if (character == null) { throw new InvalidPacketValueException(); } session.EnqueueMessageEncrypted(new ServerPlayerInfoFullResponse { BaseData = new ServerPlayerInfoFullResponse.Base { ResultCode = 0, Identity = new TargetPlayerIdentity { RealmId = WorldServer.RealmId, CharacterId = character.CharacterId }, Name = character.Name, Faction = character.Faction1 }, IsClassPathSet = true, Path = character.Path, Class = character.Class, Level = character.Level, IsLastLoggedOnInDaysSet = true, LastLoggedInDays = character.GetOnlineStatus() }); }