Example #1
0
    public void CalculateNextUpgradeCost()
    {
        var controller = UpgradesController.Instance;

        if (Upgrade.Equals(Upgrade.Upgrade2) &&
            UpgradesController.Instance.UpgradesDictionary[Upgrade.Upgrade2] >= 20)
        {
            UpdateText();
            _upgradeButton.GetComponentInChildren <Text>().text = "MAX";
            UpgradeLevel.text = "Level MAX";
            return;
        }

        int currentLevel = controller.UpgradesDictionary[Upgrade];

        _nextUpgradeCost =
            UpgradesConsts.Exponent(_upgradeValues.BaseCost, _upgradeValues.CostMultiplier, currentLevel);

        _upgradeButton.GetComponentInChildren <Text>().text = "$" + MoneyConverter.ConvertNumber(_nextUpgradeCost);

        UpgradeLevel.text = "Level " + controller.UpgradesDictionary[Upgrade];

        ToggleButtonFade();
        UpdateSlider();
        GameController.Instance.UpdateMiningPowerText();
        UpdateText();
    }
    public void CalculateMiningSpeed()
    {
        if (UpgradesController.Instance.UpgradesDictionary.ContainsKey(Upgrade.Upgrade2))
        {
            SetMiningSpeed(1.05 - UpgradesController.Instance.UpgradesDictionary[Upgrade.Upgrade2] *
                           UpgradesConsts.GetUpgradeValues(Upgrade.Upgrade2).Productivity);
        }
        else
        {
            _miningSpeed = 1.05;
        }

        UpdateMiningPowerText();
    }
    public static double CalculateUpgradeProductivity(Upgrade upgrade)
    {
        if (!Instance.UpgradesDictionary.ContainsKey(upgrade))
        {
            return(0);
        }

        int    level        = Instance.UpgradesDictionary[upgrade];
        double multiplier   = CalculateMultiplier(upgrade);
        double productivity = UpgradesConsts.GetUpgradeValues(upgrade).Productivity;

        productivity *= level * multiplier;

        return(productivity);
    }
    public void CalculateAutoStrength()
    {
        double autoStrength = 0;

        foreach (var upgrade in UpgradesController.Instance.UpgradesDictionary.Keys)
        {
            if (!upgrade.Equals(Upgrade.Upgrade1) && !upgrade.Equals(Upgrade.Upgrade2))
            {
                if (UpgradesConsts.GetUpgradeValues(upgrade) != null)
                {
                    autoStrength += UpgradesConsts.GetUpgradeValues(upgrade).Productivity *
                                    UpgradesController.Instance.UpgradesDictionary[upgrade] *
                                    UpgradesController.CalculateMultiplier(upgrade);
                }
            }
        }

        autoStrength += autoStrength * _prestigeCrystals * _prestigeCrystalsMultiplier;

        _autoStrength = autoStrength;

        UpdateMiningPowerText();
    }
Example #5
0
 private void Awake()
 {
     _upgradeButton = gameObject.GetComponentInChildren <Button>();
     _upgradeValues = UpgradesConsts.GetUpgradeValues(Upgrade);
 }