/// <summary> /// 请求获取玩家战绩 /// </summary> public void OnSendGetUserRecord() { News_Pel.SetActive(true); SendGetUserRecord sendGetUserRecord = new SendGetUserRecord(); sendGetUserRecord.UserID = GameInfo.userID; sendGetUserRecord.openid = GameInfo.OpenID; sendGetUserRecord.unionid = GameInfo.unionid; Debug.Log("请求战绩"); byte[] body = ProtobufUtility.GetByteFromProtoBuf(sendGetUserRecord); byte[] data = CreateHead.CreateMessage(CreateHead.CSXYNUM + 9001, body.Length, 0, body); GameInfo.cs.Send(data); }
/// <summary> /// 请求获取圈子玩家战绩 /// </summary> public void SendGetUserRecord() { GameInfo.isPYQExploits = true; SendGetUserRecord sendGetUserRecord = new SendGetUserRecord(); sendGetUserRecord.UserID = GameInfo.userID; sendGetUserRecord.openid = GameInfo.OpenID; sendGetUserRecord.unionid = GameInfo.unionid; sendGetUserRecord.GroupID = (int)groupInfo.GroupID; Debug.Log("请求圈子战绩" + groupInfo.GroupID); byte[] body = ProtobufUtility.GetByteFromProtoBuf(sendGetUserRecord); byte[] data = CreateHead.CreateMessage(CreateHead.CSXYNUM + 9001, body.Length, 0, body); GameInfo.cs.Send(data); }
public void ExecuteCommand(GameSession session, ProtobufRequestInfo requestInfo) { var userInfo = SendGetUserRecord.ParseFrom(requestInfo.Body); RedisLoginModel olduser = RedisUtility.Get <RedisLoginModel>(RedisUtility.GetKey(GameInformationBase.COMMUNITYUSERLIST, userInfo.Openid, userInfo.Unionid)); if (olduser == null) { return; } var list = new userRecordLOGDAL().Get48hourInfoByUserID(userInfo.UserID, userInfo.HasGroupID? userInfo.GroupID:0); var userinfoDAL = new mjuserinfoDAL(); var returnUserRecord = ReturnUserRecord.CreateBuilder(); long userid; foreach (var item in list) { var userRecord = UserRecord.CreateBuilder(); userRecord.SetRoomInfoID(item.RoomInfoID); userRecord.SetCreateDate(TimeToLong.ConvertDateTimeInt(item.CreateDate)); userRecord.SetEndTime(TimeToLong.ConvertDateTimeInt(item.EndTime)); userRecord.SetUserID(item.CreateUserID);//需要显示房主标签 userRecord.SetRoomMsg( ReturnRoomMsg.CreateBuilder() .SetCount(item.RoomNumber) .SetIsBenji(item.IsBenJi) .SetIsLianzhuang(item.CountPointsType == 3 ? 1 : 0) .SetIsShangxiaji(item.IsSangXiaJi) .SetIsWgj(item.IsWGJ) .SetIsXinqiji(item.IsXinQiJi) .SetIsYikousan(item.CountPointsType == 1 ? 1 : 0) .SetIsYuanque(item.IsYuanQue) .SetQuickCard(item.QuickCard) .SetRoomPeo(item.RoomPeo) ); foreach (var userWinLose in item.UserWinLose.Split('|')) { long userID = 0; string[] info = userWinLose.Split(','); if (long.TryParse(info[0], out userID)) { if (userRecord.RecordUserInfoList.Any(w => w.UserID == userID)) { var userInfoData = userRecord.RecordUserInfoList.First(w => w.UserID == userID); userRecord.AddRecordUserInfo(RecordUserInfo.CreateBuilder() .SetHeadimg(userInfoData.Headimg) .SetNickname(HttpUtility.UrlDecode(HttpUtility.UrlDecode(userInfoData.Nickname))) .SetOpenid(userInfoData.Openid) .SetScore(info[1]) .SetSex(userInfoData.Sex) .SetUserID(userInfoData.UserID)); } else { var userInfoData = userinfoDAL.GetModel(userID); userRecord.AddRecordUserInfo(RecordUserInfo.CreateBuilder() .SetHeadimg(userInfoData.headimg) .SetNickname(HttpUtility.UrlDecode(HttpUtility.UrlDecode(userInfoData.nickname))) .SetOpenid(userInfoData.openid) .SetScore(info[1]) .SetSex(userInfoData.sex.Value) .SetUserID(userInfoData.id)); } } } returnUserRecord.AddUserRecord(userRecord); } var data = returnUserRecord.Build().ToByteArray(); session.Send(new ArraySegment <byte>(CreateHead.CreateMessage(GameInformationBase.BASEAGREEMENTNUMBER + 9002, data.Length, requestInfo.MessageNum, data))); }