/// <summary> /// 请求排行榜 /// </summary> /// <param name="pID">P I.</param> /// <param name="msg">Message.</param> /// <param name="action">Action.</param> public void sendMsg(LobbyProtocol pID, msgReqRankList msg, Action <Message> action) { JsonObject jsonMsg = new JsonObject(); jsonMsg.Add("game", (int)msg.game); jsonMsg.Add("type", (int)msg.type); jsonMsg.Add("scope", (int)msg.scope); jsonMsg.Add("area", msg.areaID); jsonMsg.Add("rankNum", msg.rankNum); sendMsg(pID, jsonMsg, action); }
public void onEventShowRank(object data) { LobbyEvent.RankScopeType rst = (LobbyEvent.RankScopeType)data; rst.scope = LobbyEvent.RankScopeType.RANK_SCOPE_TYPE.RANK_AREA; rst.type = LobbyEvent.RankScopeType.RANK_TYPE.RANK_GOLD; List <LobbyEvent.Rank> rankList = new List <LobbyEvent.Rank>(); for (int i = 0; i < Lobby.Lobby.rankList.Count; i++) { if (rst.type == Lobby.Lobby.rankList [i].rst.type && rst.scope == Lobby.Lobby.rankList [i].rst.scope) { rankList.Add(Lobby.Lobby.rankList [i]); } } if (rankList.Count == 0) { //说明还没有请求过,刷新一次 msgReqRankList rank = new msgReqRankList(); rank.game = GameType.GAME_LIANQI; rank.areaID = Account.getSelfData().area; rank.rankNum = 50; // 只取前50 rank.scope = msgReqRankList.RANK_SCOPE_TYPE.RANK_AREA; //区排行 rank.type = msgReqRankList.RANK_TYPE.RANK_GOLD; //财富排行 ProtocolManager.getInstance().sendMsg(LobbyProtocol.P_LOBBY_REQ_RANK_LIST, rank, OnRespRankList); ViewManagerEvent.EM().InvokeEvent(ViewManagerEvent.EVENT.SHOW_LOADING_ANI, true); } else { LobbyEvent.EM().InvokeEvent(LobbyEvent.EVENT.UPDATE_RANK, (object)(rankList)); } }