private ResponeCommMessage HandleReturnToGame(ReturnToGameCommMsg msg, IEnumerator <ActionResultInfo> iter) { if (_sessionIdHandler == null || iter == null) { return(new ResponeCommMessage(msg.UserId, msg.SessionId, false, msg)); } ReturnToGameResponseCommMsg response = SendMessagesReturnToGame(msg.UserId, iter, msg); if (response != null) { return(response); } return(new ResponeCommMessage(msg.UserId, msg.SessionId, false, msg)); }
private ReturnToGameResponseCommMsg SendMessagesReturnToGame(int userId, IEnumerator <ActionResultInfo> iterator, ReturnToGameCommMsg originalMsg) { ReturnToGameResponseCommMsg response = null; while (iterator.MoveNext()) { var curr = iterator.Current; if (curr != null && curr.Id != userId) { _commHandler.AddMsgToSend(_parser.SerializeMsg(curr.GameData, ShouldUseDelim), curr.Id); } else if (curr != null) { response = new ReturnToGameResponseCommMsg(_sessionIdHandler.GetSessionIdByUserId(userId), userId, curr.GameData.IsSucceed, originalMsg, curr.GameData); response.SetGameData(curr.GameData); } } return(response); }