public void Kick(KickPacket kickPacket) { var servers = WebApiAccess.Instance.Get <List <ChannelInfo> >(WebApiRoute.Channel).Where(s => s.Type == ServerType.WorldServer); ServerConfiguration config = null; ConnectedAccount account = null; foreach (var server in servers) { config = server.WebApi; account = WebApiAccess.Instance.Get <List <ConnectedAccount> >(WebApiRoute.ConnectedAccount, config) .Find(s => s.ConnectedCharacter.Name == kickPacket.Name); if (account != null) { break; } } if (account == null) //TODO: Handle 404 in WebApi { Session.SendPacket(new InfoPacket { Message = Language.Instance.GetMessageFromKey(LanguageKey.CANT_FIND_CHARACTER, Session.Account.Language) }); return; } WebApiAccess.Instance.Delete <ConnectedAccount>(WebApiRoute.Session, config, account.ConnectedCharacter.Id); }
private void client_KickUser(KickPacket packet) { if (packet.UserGuid == client.User.Guid) { WriteToLog(packet.TargetMessage); } else { WriteToChatWindow(packet.RoomMessage); } }