Пример #1
0
    private void showNetworkErrorPrompt(string titleToken, string messageToken, Action <DPrompt.ButtonFlags> callback = null, int maxReconnectionOverride = 0)
    {
        showingError = true;
        zoneTransitionService.CancelTransition(gameStateController.SceneConfig.HomeSceneName);
        ErrorData errorData = new ErrorData(titleToken, messageToken);

        errorData.Buttons      = (DPrompt.ButtonFlags.CANCEL | DPrompt.ButtonFlags.RETRY);
        errorData.PromptPrefab = promptManager.ErrorPrefab;
        errorData.Callback     = (callback ?? new Action <DPrompt.ButtonFlags>(onButtonPressed));
        if (connectionManager.ConnectionState == ConnectionManager.NetworkConnectionState.BasicConnection && sessionManager.HasSession)
        {
            int num = 0;
            if (maxReconnectionOverride > 0)
            {
                num = maxReconnectionOverride;
            }
            if (reconnectionAttempts++ >= num)
            {
                errorData.MessageToken = "GlobalUI.ErrorMessages.RetryFailureError";
                errorData.Buttons      = DPrompt.ButtonFlags.OK;
                errorData.PromptPrefab = promptManager.FatalPrefab;
                reconnectionAttempts   = 0;
            }
        }
        else
        {
            errorData.MessageToken = messageToken;
            errorData.Buttons      = DPrompt.ButtonFlags.OK;
            errorData.PromptPrefab = promptManager.FatalPrefab;
            reconnectionAttempts   = 0;
        }
        showIconPrompt(errorData, NetworkErrorIconContentKey);
    }