Beispiel #1
0
    private void GiveRandomReward(string friendId)
    {
        RewardData reward = PersistentSingleton <Economies> .Instance.Gifts.AllotObject();

        int numUnlockedHeroes = Singleton <EconomyHelpers> .Instance.GetNumUnlockedHeroes(PlayerData.Instance.LifetimeChunk.Value);

        RewardAction item = RewardFactory.ToRewardAction(reward, RarityEnum.Common, numUnlockedHeroes, friendId);

        RewardActions.Add(item);
    }
Beispiel #2
0
    private void Start()
    {
        Rewards = new RewardFactory();
        PlayerPrefs.SetInt("score", 0);
        Settings.Init();
        PlayerData.Init();
        StartCoroutine(ConnectToPlayfab());

#if UNITY_ANDROID && !UNITY_EDITOR
        androidApiLevel = int.Parse(SystemInfo.operatingSystem.Substring(SystemInfo.operatingSystem.IndexOf("-") + 1, 3));
        Debug.LogError("Running on Android API: " + androidApiLevel);
        Vibration.Initialize(androidApiLevel);
#endif
    }
Beispiel #3
0
    private void StartRewardSequence(int heroIndex)
    {
        ApplyAvailable.Value = true;
        RewardActions.Clear();
        RewardData reward = new RewardData(RewardEnum.AddToCoins, m_coinReward.Value);

        RewardActions.Add(RewardFactory.ToRewardAction(reward, RarityEnum.Common));
        if (m_relicReward.Value > 0L)
        {
            RewardData reward2 = new RewardData(RewardEnum.AddToRelics, m_relicReward.Value);
            RewardActions.Add(RewardFactory.ToRewardAction(reward2, RarityEnum.Common));
        }
        BindingManager.Instance.BossSuccessManager.ShowReward(heroIndex);
    }
Beispiel #4
0
    private void GenerateAndOpenChest(int rewardAmount, ChestEnum chest)
    {
        Singleton <FundRunner> .Instance.OpenChests(1);

        Singleton <FakeFundRunner> .Instance.CopyFunds();

        List <ChestRewardConfig> rewards = CreateChestRewards(rewardAmount, chest);

        RewardActions = RewardFactory.ToRewardActions(rewards, PlayerData.Instance.LifetimeCreatures.Value);
        foreach (RewardAction rewardAction in RewardActions)
        {
            rewardAction.GiveReward();
        }
        ShowChestOpening();
    }
Beispiel #5
0
    public void ClaimTournamentPrice()
    {
        int tournamentID = PlayerData.Instance.TournamentIdCurrent.Value;

        PersistentSingleton <PlayFabService> .Instance.LoggedOnPlayerId.Take(1).Subscribe(delegate
        {
            UploadTournamentRun(tournamentID);
        }).AddTo(SceneLoader.Instance);

        PlayerHighestWorld.Value = PlayerData.Instance.TournamentRun.Value[PlayerData.Instance.TournamentRun.Value.Length - 1];
        BindingManager.Instance.TournamentRewardsClaimingParent.ShowInfo();
        if (PersistentSingleton <GameAnalytics> .Instance != null)
        {
            PersistentSingleton <GameAnalytics> .Instance.TournamentEvent.SetValueAndForceNotify(value : false);
        }
        TournamentConfig tournamentPriceBracket = Singleton <EconomyHelpers> .Instance.GetTournamentPriceBracket(PlayerRank.Value);

        for (int i = 0; i < tournamentPriceBracket.Rewards.Length; i++)
        {
            if (tournamentPriceBracket.Rewards[i] == null)
            {
                continue;
            }
            if (tournamentPriceBracket.Rewards[i].Type == RewardEnum.AddToBerries)
            {
                for (int j = 0; j < tournamentPriceBracket.Rewards[i].Amount; j++)
                {
                    RewardFactory.ToRewardAction(new RewardData(RewardEnum.AddToBerries, 1L), RarityEnum.Common, Singleton <EconomyHelpers> .Instance.GetNumUnlockedHeroes(PlayerData.Instance.LifetimeChunk.Value)).GiveReward();
                }
            }
            else
            {
                RewardFactory.ToRewardAction(tournamentPriceBracket.Rewards[i], RarityEnum.Common).GiveReward();
            }
        }
        ResetTournamentValues();
    }
Beispiel #6
0
    public void ClaimRewards()
    {
        m_claimedRewards = true;
        BigDouble[] value = Rewards.Value;
        for (int i = 0; i < value.Length; i++)
        {
            if (!(value[i] > BigDouble.ZERO))
            {
                continue;
            }
            RewardData reward            = new RewardData((RewardEnum)i, value[i]);
            int        numUnlockedHeroes = Singleton <EconomyHelpers> .Instance.GetNumUnlockedHeroes(PlayerData.Instance.LifetimeChunk.Value);

            switch (i)
            {
            case 29:
            {
                int[] array2 = new int[numUnlockedHeroes];
                for (int l = 0; l < value[i]; l++)
                {
                    array2[Random.Range(1, numUnlockedHeroes)]++;
                }
                for (int m = 0; m < numUnlockedHeroes; m++)
                {
                    if (array2[m] > 0)
                    {
                        reward = new RewardData(RewardEnum.AddToSpecificBerries, array2[m]);
                        RewardAction rewardAction3 = RewardFactory.ToRewardAction(reward, RarityEnum.Common, numUnlockedHeroes, null, m);
                        rewardAction3.GiveReward();
                    }
                }
                break;
            }

            case 25:
            {
                List <RewardEnum> unlockedSkills = Singleton <EconomyHelpers> .Instance.GetUnlockedSkills();

                int[] array = new int[unlockedSkills.Count];
                for (int j = 0; j < value[i]; j++)
                {
                    array[Random.Range(0, unlockedSkills.Count)]++;
                }
                for (int k = 0; k < unlockedSkills.Count; k++)
                {
                    reward = new RewardData(unlockedSkills[k], array[k]);
                    RewardAction rewardAction2 = RewardFactory.ToRewardAction(reward, RarityEnum.Common);
                    rewardAction2.GiveReward();
                }
                break;
            }

            default:
            {
                RewardAction rewardAction = RewardFactory.ToRewardAction(reward, RarityEnum.Common);
                rewardAction.GiveReward();
                break;
            }
            }
        }
    }