示例#1
0
    private void LoadLeaderboard()
    {
        FirestoreManager.LoadLeaderboardData(limit, (task, leaderboardData) =>
        {
            if (!task.IsCompleted)
            {
                statusText.text = "Failed to load leaderboard";
                return;
            }

            for (int i = 0; i < playersScorePanels.Length; i++)
            {
                if (i < leaderboardData.scores.Count)
                {
                    playersScorePanels[i].score      = Converter.ConvertToString(leaderboardData.scores[i].userScore);
                    playersScorePanels[i].playerName = (i + 1) + ". " + leaderboardData.scores[i].userName;
                    playersScorePanels[i].gameObject.SetActive(true);
                }
                else
                {
                    playersScorePanels[i].gameObject.SetActive(false);
                }
            }

            isLoading = false;
            statusText.gameObject.SetActive(false);
            playerScoresContainer.SetActive(true);
        });
    }
示例#2
0
    public void Load()
    {
        if (isLoading)
        {
            return;
        }

        playerScoresContainer.SetActive(false);
        statusText.gameObject.SetActive(true);

        if (!FirestoreManager.isInitialized)
        {
            statusText.text = "Failed to load leaderboard";
            return;
        }

        isLoading       = true;
        statusText.text = "Loading...";

        if (FirestoreManager.isAuthenticated)
        {
            FirestoreManager.SendRecord(task =>
            {
                LoadLeaderboard();
            });
        }
        else
        {
            LoadLeaderboard();
        }
    }
示例#3
0
    public void Load()
    {
        Screen.sleepTimeout = SleepTimeout.NeverSleep;

        if (DataManager.isLocalTestMode || Application.internetReachability == NetworkReachability.NotReachable)
        {
            DataManager.LocalLoad();
            LevelsManager.LoadStartMenuStatic();
            return;
        }

        InitializeServices();

        GooglePlayAuth((succes) =>
        {
            FirestoreAuth(task =>
            {
                if (task.IsCompleted)
                {
                    FirestoreManager.SendRecord(null);
                }
            });

            LoadSaves();
        });

        StartCoroutine(LoadStartMenu());
    }
示例#4
0
    private void FirestoreAuth(Action <Task> callback)
    {
        if (GPGSManager.isAuthenticated)
        {
            string authCode = GPGSManager.GetServerAuthCode();
            FirestoreManager.Auth(authCode, task =>
            {
                firebaseIsReady = true;

                callback?.Invoke(task);
            });
        }
        else
        {
            firebaseIsReady = true;
        }
    }
示例#5
0
    private void InitializeServices()
    {
        GPGSManager.Initialize(false);

        FirestoreManager.Initialize();

        IAPManager.Initialize((status) => purchasesIsReady = true);

        MobileAds.Initialize((status) =>
        {
            RequestConfiguration requestConfiguration = new RequestConfiguration.Builder().SetMaxAdContentRating(_maxAdContentRating).build();
            MobileAds.SetRequestConfiguration(requestConfiguration);

            RewardedAdManager.CreateAndRequestAd();
            InterstitialAdManager.CreateAndRequestAd();

            adsIsReady = true;
        });
    }