private static void HandleClientClientSyncCommand(uint dwFrqNo, CSDT_FRAPBOOT_CC ccSynDt) { int usedSize = 0; FRAME_CMD_PKG msg = FRAME_CMD_PKG.New(); TdrError.ErrorType type = msg.unpack(ref ccSynDt.stSyncInfo.szBuff, ccSynDt.stSyncInfo.wLen, ref usedSize, 0); DebugHelper.Assert(type == TdrError.ErrorType.TDR_NO_ERROR); if (type == TdrError.ErrorType.TDR_NO_ERROR) { IFrameCommand command = FrameCommandFactory.CreateFrameCommand(ref msg); if (command != null) { command.playerID = ccSynDt.dwObjID; command.frameNum = dwFrqNo; Singleton <FrameSynchr> .GetInstance().PushFrameCommand(command); } else { _frameExceptionCounter = (byte)(_frameExceptionCounter + 1); if (_frameExceptionCounter <= 30) { BuglyAgent.ReportException(new Exception("CreateFrameCommandException"), "create ccSync frame command error!"); } } } else { _frameExceptionCounter = (byte)(_frameExceptionCounter + 1); if (_frameExceptionCounter <= 30) { BuglyAgent.ReportException(new Exception("TdrUnpackException"), "CCSync unpack error!"); } } msg.Release(); }
private static void HandleClientClientSyncCommand(uint dwFrqNo, CSDT_FRAPBOOT_CC ccSynDt) { int num = 0; FRAME_CMD_PKG fRAME_CMD_PKG = FRAME_CMD_PKG.New(); TdrError.ErrorType errorType = fRAME_CMD_PKG.unpack(ref ccSynDt.stSyncInfo.szBuff, (int)ccSynDt.stSyncInfo.wLen, ref num, 0u); DebugHelper.Assert(errorType == 0); if (errorType == null) { IFrameCommand frameCommand = FrameCommandFactory.CreateFrameCommand(ref fRAME_CMD_PKG); if (frameCommand != null) { frameCommand.playerID = ccSynDt.dwObjID; frameCommand.frameNum = dwFrqNo; Singleton <FrameSynchr> .GetInstance().PushFrameCommand(frameCommand); } else if ((FrameWindow._frameExceptionCounter += 1) <= 30) { BuglyAgent.ReportException(new Exception("CreateFrameCommandException"), "create ccSync frame command error!"); } } else if ((FrameWindow._frameExceptionCounter += 1) <= 30) { BuglyAgent.ReportException(new Exception("TdrUnpackException"), "CCSync unpack error!"); } fRAME_CMD_PKG.Release(); }
private void HandleClientClientSyncCommand(uint dwFrqNo, CSDT_FRAPBOOT_CC ccSynDt) { int usedSize = 0; FRAME_CMD_PKG msg = new FRAME_CMD_PKG(); TdrError.ErrorType type = msg.unpack(ref ccSynDt.stSyncInfo.szBuff, ccSynDt.stSyncInfo.wLen, ref usedSize, 0); DebugHelper.Assert(type == TdrError.ErrorType.TDR_NO_ERROR); if (type == TdrError.ErrorType.TDR_NO_ERROR) { IFrameCommand command = FrameCommandFactory.CreateFrameCommand(ref msg); if (command != null) { command.playerID = ccSynDt.dwObjID; command.frameNum = dwFrqNo; Singleton <FrameSynchr> .GetInstance().PushFrameCommand(command); } } }