protected override void DecodePackage(NetReader reader) { if (reader.StatusCode == 0) { if (isCustom) { //自定对象格式解包 _responseData = ProtoBufUtils.Deserialize <Response1001Pack>(reader.Buffer); } else { //默认Scut流格式解包 _responseData = new Response1001Pack(); _responseData.PageCount = reader.getInt(); int nNum = reader.getInt(); _responseData.Items = new List <RankData>(); for (int i = 0; i < nNum; i++) { reader.recordBegin(); RankData item = new RankData(); item.UserName = reader.readString(); item.Score = reader.getInt(); reader.recordEnd(); _responseData.Items.Add(item); } } } }
void OnRankingCallback(ActionResult actionResult) { Response1001Pack pack = actionResult.GetValue <Response1001Pack>(); if (pack == null) { return; } rankList = pack.Items; }
protected override bool DecodePacket(MessageStructure reader, MessageHead head) { responsePack = ProtoBufUtils.Deserialize <Response1001Pack>(netReader.Buffer); string responseDataInfo = ""; responseDataInfo = "request :" + Game.Utils.JsonHelper.prettyJson <Request1001Pack>(req) + "\n"; responseDataInfo += "response:" + Game.Utils.JsonHelper.prettyJson <Response1001Pack>(responsePack) + "\n"; DecodePacketInfo = responseDataInfo; return(true); }
private void OnRankingCallback(ActionResult actionResult) { Response1001Pack pack = actionResult.GetValue <Response1001Pack>(); if (pack == null) { return; } DebugMgr.Log(pack.PageCount); }
public override bool TakeAction() { int pageCount; var cache = new ShareCacheStruct <UserRanking>(); var rankingList = cache.FindAll(false); rankingList = MathUtils.QuickSort <UserRanking>(rankingList, compareTo); rankingList = rankingList.GetPaging(requestPack.PageIndex, requestPack.PageSize, out pageCount); responsePack = new Response1001Pack(); responsePack.PageCount = pageCount; responsePack.Items = new List <RankData>(); foreach (var item in rankingList) { responsePack.Items.Add(new RankData() { UserName = item.UserName, Score = item.Score }); } return(true); }
public Action1001(ActionGetter actionGetter) : base(1001, actionGetter) { _watch = new Stopwatch(); responsePack = new Response1001Pack(); }