//обрабатывает результат после завершения мультиплеера void MultiplayerGameCompleted(MultiplayerResult gameResult) { CloseGame(); SetState(GameState.MENU); MpSetMode(MpGameMode.QUIK_GAME); if (gameResult == MultiplayerResult.WIN) { CurrentGame.StatisticGame.NumWinsMP++; LeaderboardAddResultEvent?.Invoke(); //событие добавдения результата CheckingWinsMP(); //проверяем сколько раз выиграли } CheckingRunMultiplayerMode(); //регестирируем очередной запуск игры в MP }
//вызывается по событию окончания игры по мультиплееру void ShowMultiplayerResultdPanel(MultiplayerResult gameResult) { //включаем панельку результата SetActivMenu(ActiveMenu.MULTIPLAYER_RESULT_PANEL); var drawText = multiplayerCompletedPanel.transform.Find("Panel/TEXT_DRAW").gameObject; var data = GPGS.Instance.MultiplayerInfo; //даные об игроках //информация игрока SetResultInfo(playerInfoMC, data.playerIcon, data.myScore, data.maxScore); var winText_1 = multiplayerCompletedPanel.transform.Find("Panel/TEXT_WIN_1").gameObject; //информация опонента SetResultInfo(oppInfoMC, data.opponentIcon, data.opponentScore, data.maxScore); var winText_2 = multiplayerCompletedPanel.transform.Find("Panel/TEXT_WIN_2").gameObject; switch (gameResult) { //моя победа case MultiplayerResult.WIN: drawText.SetActive(false); // off winText_1.SetActive(true); //on winText_2.SetActive(false); //off break; //противник выиграл case MultiplayerResult.LOSE: drawText.SetActive(false); //off winText_1.SetActive(false); //off winText_2.SetActive(true); //on break; //ничья case MultiplayerResult.DRAW: drawText.SetActive(true); //on winText_1.SetActive(false); //off winText_2.SetActive(false); //off break; } }