public async Task <IResponse> Process(IRequest request) { try { CanStartRoundRequest csr = request as CanStartRoundRequest; CanStartRoundResponse response = new CanStartRoundResponse(); if (csr.GameSessionId != Guid.Empty) { //Compute actor id for user name ActorId gamesessionid = new ActorId(csr.GameSessionId); var sessionproxy = gamesessionid.Proxy <ITankGameSession>(); bool canstart = await sessionproxy.CanStartRound(csr.RoundNo); response = new CanStartRoundResponse(csr.GameSessionId, canstart, csr.RoundNo); return(response); } return(response); } catch (Exception E) { E.Log(); ErrorResponse errorresponse = new ErrorResponse(E.Message); return(errorresponse); } }
public void CanStartRound(int roundnum) { CanStartRoundRequest csr = new CanStartRoundRequest(this._CurrentGameSessionId, roundnum); m_client.Invoke("Exec", csr.CreateRequest(RequestProcessorEnum.GetCanStartRound, _UserId).Serialize()); }