Esempio n. 1
0
        private void SelectTab(UpgradeButton button, bool useSound = true)
        {
            selectedButton      = button;
            button.image.sprite = selectedTabSprite;
            infoPanel.gameObject.SetActive(true);

            var upgradeType = button.GetUpgradeType();
            var upgradeData = GameManager.Instance.upgradeTextData;
            var data        = upgradeData.GetUpgradeTextData(upgradeType);

            upgradeDescription.text = data.descrptionText;
            itemImage.sprite        = data.sprite;

            //int index = infoPanel.transform.GetSiblingIndex();
            button.transform.SetAsLastSibling();
            itemImage.transform.SetAsLastSibling();

            var pos = button.transform.localPosition;

            pos.y = selectedPosY;
            LeanTween.moveLocal(button.gameObject, pos, 0.15f).setIgnoreTimeScale(true).setEaseOutBack();

            if (useSound)
            {
                EventManager.UI.onTapButton?.Invoke(true);
            }
        }
Esempio n. 2
0
        public void OnPressUnlockUpgradeButton()
        {
            unlockInfoPanel.gameObject.SetActive(true);
            selectedButton = unlockUpgradeButton;

            var upgradeType = selectedButton.GetUpgradeType();
            var upgradeData = GameManager.Instance.upgradeTextData;
            var data        = upgradeData.GetUpgradeTextData(upgradeType);

            unlockDescription.text = data.descrptionText;
            unlockItemImage.sprite = data.sprite;
        }
Esempio n. 3
0
        public void OnPressPurchaseUpgradeButton()
        {
            var  upgradeType     = selectedButton.GetUpgradeType();
            var  levelType       = LevelInfo.current.levelType;
            var  levelUpgrades   = Util.upgradeTree.GetUpgradesForLevel(levelType);
            var  upgradeVarIndex = Util.upgradeTree.GetUpgradeVarName(levelUpgrades, upgradeType);
            var  gameData        = GameManager.Instance.saveManager.Load();
            var  currLevel       = (int)levelType;
            var  chosenUpgrade   = new ChosenUpgrade(currLevel, upgradeVarIndex);
            bool hasUpgrade      = false;

            // Check if an upgrade the current level already exists, overwrite if it does
            foreach (ChosenUpgrade upgrade in gameData.chosenUpgrades)
            {
                if (upgrade.level == currLevel)
                {
                    hasUpgrade       = true;
                    upgrade.varIndex = upgradeVarIndex;
                }
            }

            // Otherwise if it doesn't add it to the list
            if (!hasUpgrade)
            {
                gameData.chosenUpgrades.Add(chosenUpgrade);
            }

            Util.gameSettings.upgradeSettings = gameData.settings;
            Util.gameSettings.upgradeLogicMap[upgradeType]();
            gameData.settings = Util.gameSettings.upgradeSettings;

            gameData.settings.currLevel = ++currLevel;
            GameManager.Instance.saveManager.Save(gameData);
            BootController.levelToLoadInstantly = gameData.settings.currLevel;
            EventManager.UI.onTapButton?.Invoke(true);


            LeanTween.delayedCall(0.2f, () =>
            {
                Hide(true);
                LeanTween.delayedCall(1.0f, () =>
                {
                    SceneManager.LoadScene(0);
                }).setIgnoreTimeScale(true);
            }).setIgnoreTimeScale(true);
        }