public async Task RemovePlayerAsync(int gameId, int playerId) { using (var adminService = new AdminServiceClient(new BasicHttpBinding(), new EndpointAddress(ConnectionData.Url))) { int sequenceNumber = SequenceNumber; var removeGamePlayerReq = new RemoveGamePlayerReq { Auth = new ReqAuth { ClientName = ConnectionData.Username, TeamName = ConnectionData.TeamName, SessionId = _sessionId, SequenceNumber = sequenceNumber, AuthCode = GetAuthCode(string.Format("{0}:{1}:{2}:{3}{4}", ConnectionData.TeamName, ConnectionData.Username, _sessionId, sequenceNumber, ConnectionData.Password)), }, GameId = gameId, PlayerId = playerId, }; _stopwatch.Start(); var removeGamePlayerResp = await adminService.RemoveGamePlayerAsync(removeGamePlayerReq); _stopwatch.Stop(); LastCallTime = _stopwatch.ElapsedMilliseconds; _stopwatch.Reset(); if (removeGamePlayerResp.Status != "OK") { throw new Exception(removeGamePlayerResp.Message); } } }
public RemoveGamePlayerResp RemoveGamePlayer(RemoveGamePlayerReq req) { return(HandleServiceCall(req, new RemoveGamePlayerResp(), RemoveGamePlayerImpl)); }
private void RemoveGamePlayerImpl(RemoveGamePlayerReq req, RemoveGamePlayerResp resp) { Server.GameManager.RemoveGamePlayer(req.GameId, req.PlayerId, Server.TeamRegistry.GetTeam(req.Auth.TeamName)); }