public void StartSettle(SCPKG_SINGLEGAMEFINRSP settleData) { if (((settleData != null) && (settleData.stDetail != null)) && (settleData.stDetail.stMultipleDetail != null)) { if (settleData.stDetail.stMultipleDetail.bZeroProfit == 1) { Singleton <CUIManager> .instance.OpenTips("ZeroProfit_Tips", true, 1.5f, null, new object[0]); } this.m_settleData = settleData; if (settleData.iErrCode == 0) { if (settleData.bPressExit == 1) { settleData.stDetail.stGameInfo.bGameResult = 2; } byte bGameType = settleData.stDetail.stGameInfo.bGameType; if ((bGameType == 1) || (bGameType == 2)) { } switch (bGameType) { case 0: case 3: { bool bFirstPass = false; if ((bGameType == 0) && (settleData.stDetail.stGameInfo.bGameResult == 1)) { bFirstPass = Singleton <CAdventureSys> .GetInstance().UpdateAdvProgress(true); } Singleton <PVESettleSys> .GetInstance().StartSettle(settleData.stDetail, bFirstPass); return; } case 1: Singleton <BattleStatistic> .GetInstance().acntInfo = settleData.stDetail.stAcntInfo; Singleton <BattleStatistic> .GetInstance().SpecialItemInfo = settleData.stDetail.stSpecReward; Singleton <BattleStatistic> .GetInstance().multiDetail = settleData.stDetail.stMultipleDetail; Singleton <BattleStatistic> .GetInstance().Rewards = settleData.stDetail.stReward; SLevelContext.SetMasterPvpDetailWhenGameSettle(settleData.stDetail.stGameInfo); return; case 2: Singleton <BattleStatistic> .GetInstance().acntInfo = settleData.stDetail.stAcntInfo; Singleton <BattleStatistic> .GetInstance().SpecialItemInfo = settleData.stDetail.stSpecReward; Singleton <BattleStatistic> .GetInstance().Rewards = settleData.stDetail.stReward; Singleton <BattleStatistic> .GetInstance().multiDetail = settleData.stDetail.stMultipleDetail; Singleton <CBattleGuideManager> .GetInstance().StartSettle(settleData.stDetail); return; case 5: case 9: { SLevelContext curLvelContext = Singleton <BattleLogic> .GetInstance().GetCurLvelContext(); if ((curLvelContext != null) && curLvelContext.m_isWarmBattle) { Singleton <BattleStatistic> .GetInstance().acntInfo = settleData.stDetail.stAcntInfo; Singleton <BattleStatistic> .GetInstance().SpecialItemInfo = settleData.stDetail.stSpecReward; Singleton <BattleStatistic> .GetInstance().Rewards = settleData.stDetail.stReward; Singleton <BattleStatistic> .GetInstance().multiDetail = settleData.stDetail.stMultipleDetail; Singleton <BattleStatistic> .GetInstance().heroSettleInfo = settleData.stDetail.stHeroList; SLevelContext.SetMasterPvpDetailWhenGameSettle(settleData.stDetail.stGameInfo); } return; } case 7: BurnExpeditionUT.Handle_Burn_Settle(ref settleData); this.OpenWinLose(settleData.stDetail.stGameInfo.bGameResult == 1); return; case 8: this.OpenWinLose(settleData.stDetail.stGameInfo.bGameResult == 1); Singleton <CArenaSystem> .GetInstance().BattleReturn(settleData.stDetail.stGameInfo.bGameResult == 1); return; } Singleton <CUIManager> .GetInstance().OpenTips("Invalid GameType -- " + bGameType, false, 1.5f, null, new object[0]); } } }