| | |
| | | { |
| | | |
| | | static byte[] vCmdBytes = new byte[2]; |
| | | |
| | | bool canAddPack = false; |
| | | |
| | | public override void Done(GameNetPackBasic vNetPack) |
| | | { |
| | | base.Done(vNetPack); |
| | |
| | | |
| | | // 战报结果 |
| | | string guid = UIHelper.ServerStringTrim(vNetData.GUID); |
| | | canAddPack = false; |
| | | |
| | | //约定 B430 内容(小包1长度WORD + 包1 + 小包2长度WORD + 包2) |
| | | //约定第一个包是B424,先发过来的过滤报错通知 |
| | | try |
| | | { |
| | | int vReadIndex = 0; |
| | |
| | | GameNetPackBasic npk = PackageRegedit.TransPack(ServerType.B430, cmd, vPackBytes); |
| | | if (npk != null) |
| | | { |
| | | vPackList.Add(npk); |
| | | BattleManager.Instance.PushPackUID(guid, npk.packUID); |
| | | if (!FilterBeforeB424(npk)) |
| | | { |
| | | vPackList.Add(npk); |
| | | BattleManager.Instance.PushPackUID(guid, npk.packUID); |
| | | } |
| | | isRegist = true; |
| | | } |
| | | } |
| | |
| | | { |
| | | BattleManager.Instance.PushPackage(guid, vPackList[i]); |
| | | } |
| | | |
| | | canAddPack = false; |
| | | BattleManager.Instance.DistributeNextReportPackage(guid); |
| | | } |
| | | catch (Exception e) |
| | |
| | | } |
| | | } |
| | | |
| | | //约定第一个包是B424,先发过来的过滤报错通知 |
| | | bool FilterBeforeB424(GameNetPackBasic npk) |
| | | { |
| | | if (npk is HB424_tagSCTurnFightInit) |
| | | { |
| | | canAddPack = true; |
| | | return false; |
| | | } |
| | | |
| | | if (!canAddPack) |
| | | { |
| | | Debug.LogErrorFormat("服务端需处理 DTCB430_tagSCTurnFightReport 过滤掉B424之前的包:" + npk.ToString()); |
| | | return true; |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | |
| | | protected List<GameNetPackBasic> AnalysisPackQueueAndDistribute(string guid, List<GameNetPackBasic> vPackList) |
| | | { |