/// <summary> /// 返回用户信息,只有当前玩家需要处理 同时返回是否为断线重连,后续处理 /// </summary> /// <returns></returns> public string Login(tb_User _tempuser, string accountid) { sc_login _senddata = new sc_login() { result = 1, fn = "sc_login", user = new PlayerInfoSD() }; var cacheSet = new PersonalCacheStruct <tb_User>(); _senddata.user.userid = _tempuser.UserID; _senddata.user.uName = _tempuser.wechatName; _senddata.user.Money = (float)_tempuser.UserMoney; _senddata.user.accountId = accountid; _senddata.user.isagent = _tempuser.isagent; _senddata.user._wechat = new WechatInfoSD() { HeadIconURL = ToolsEx.IsHandlePhoto(_tempuser.isRobot, _tempuser.wechatHeadIcon), Sex = _tempuser.Sex, wechatName = _tempuser.wechatName }; _tempuser.LastLotinTime2 = _tempuser.LastLotinTime1; _tempuser.LastLotinTime1 = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); _tempuser.IP = _strIPandPort; UserStatus _us = BaseLobby.instanceBase.GetUserStatusbyUserID(_tempuser.UserID);//获取是否需要断线重连 if (_us != null) { _senddata.user.state = (int)_us.Status; _senddata.gameid = _us.Gameid; } tb_UserEx.UpdateData(_tempuser); //更新登录时间与IP return(JsonUtils.Serialize(_senddata)); }
public static List <RankInfoSD> GetRankList() { List <RankInfoSD> _rankinfolist = new List <RankInfoSD>(); var userCache = new GameDataCacheSet <tb_User>(); tb_UserEx.RecoverFromDb("==", 0); var userIds = tb_UserEx.GetUserIdListByRobot(0); List <tb_User> userList = new List <tb_User>(); foreach (var item in userIds) { tb_User user; userCache.TryFindKey(item.ToString(), out user); if (user != null) { userList.Add(user); } } if (userList.Any()) { var tempList = userList.OrderByDescending(w => w.diamond).Take(20).ToList(); _rankinfolist = tempList.Select(w => new RankInfoSD { userid = w.UserID, winScore = (int)w.diamond, uName = w.wechatName, rank = tempList.IndexOf(w) + 1, headurl = ToolsEx.IsHandlePhoto(w.isRobot, w.wechatHeadIcon) }).ToList(); } return(_rankinfolist); }