Beispiel #1
0
        public void Buy(int money)
        {
            var buyUpgrade = new BuyUpgrade(Price, Bonus, 11);

            buyUpgrade.Buy(0);
            Bonus = buyUpgrade.Bonus;
            Price = buyUpgrade.Price;
            MainController.Instance.GetBonus();
        }
Beispiel #2
0
        public void Buy(int money)
        {
            var buyUpgrade = new BuyUpgrade(Price, Bonus, 2);

            buyUpgrade.Buy(0);
            Bonus = buyUpgrade.Bonus;
            Price = buyUpgrade.Price;
            EventsAggregator.Publish();
        }
Beispiel #3
0
    //calls any applicable tutorial events
    private void CheckForTutorialEvents()
    {
        //checks whether the conditions for each tutorial have been met and runs them if so (tutorials only play once per device, unless the player resets all progress)
        if (OnCallTutorialEvent != null)
        {
            //the gathering tutorial
            if (!Utility.PlayerPrefIntToBool(GlobalVars.ELEMENTS_DRAGGED_TUTORIAL_KEY))
            {
                OnCallTutorialEvent(Tutorial.Crafting);                //###ededted from Tutorial.Gathering
            }

            //the crafting tutorial
            else if (!Utility.PlayerPrefIntToBool(GlobalVars.CRAFTING_TUTORIAL_KEY) &&
                     Utility.SufficientElementsToPurchase(2, new KeyValuePair <string, int>("fire", 1),
                                                          new KeyValuePair <string, int>("water", 1),
                                                          new KeyValuePair <string, int>("earth", 1),
                                                          new KeyValuePair <string, int>("air", 1)))
            {
                OnCallTutorialEvent(Tutorial.Crafting);
            }

            //the upgrading a powerup tutorial
            else if (!Utility.PlayerPrefIntToBool(GlobalVars.UPGRADE_POWERUP_TUTORIAL_KEY) &&
                     Utility.SufficientElementsToPurchase(BuyUpgrade.GetBaseCosts()) &&
                     Element.AllTierElementsUnlocked(0) &&
                     Element.AllTierElementsUnlocked(1))
            {
#if IN_PROGRESS
                return;
#endif
#if DEBUG
                Debug.Log("Calling the powerup upgrade tutorial");
#endif
                OnCallTutorialEvent(Tutorial.UpgradePowerup);
            }

            //tier switch
            else if (!Utility.PlayerPrefIntToBool(GlobalVars.TIER_SWITCH_TUTORIAL_KEY) &&
                     GlobalVars.TIER_UNLOCKED[2])
            {
                CallTierSwitchTutorial();

#if DEBUG
                Debug.Log("Calling the tier unlocked tutorial");
#endif
            }
        }
        else
        {
#if DEBUG
            Debug.Log("Tbe event is null");
#endif
        }
    }
Beispiel #4
0
    private void Start()
    {
        BuyUpgrade buyUpgradeScript = GetComponentInParent <BuyUpgrade>();

        if (buyUpgradeScript != null)
        {
            buyUpgradeScript.OnZoneUpgrade += Upgrade;
        }


        if (LevelsPrefabs.Count == 0)
        {
            return;
        }

        RemoveOldPrefabs();
        ChangePrefab();
    }
    public void createPowerList()
    {
        if (OnTogglePowerUpUpgradeScreen != null) {
            OnTogglePowerUpUpgradeScreen(true);
        }

        PowerUp.CheckIndexDictionary();
        for (int power = 0; power < TOTAL_BASE_POWERUPS; power++) {

            GameObject newPower = Instantiate(powerUpButton)as GameObject;
            newPower.transform.SetParent(contentList.transform);
            newPower.transform.localScale = buttonScale;
            currentPower = PowerUps[power];
            Debug.Log(currentPower.name);

            newPower.SetActive(true);

            //for tutorial
            if (currentPower.name == "LaneConversion") {
                newPower.AddComponent<CraftingTutorialComponent>().Reinitialize(MainMenuController.Tutorial.UpgradePowerup);
            }

            newPower.transform.FindChild ("Name/Description").GetComponent<Text>().text = "To unlock this ability discover all level "+(power+1).ToString() +" elements.";

            if (PowerUp.PowerUpUnlocked(currentPower)){
                myPowerLevel = PowerUp.GetPowerUpLevel(currentPower);
                newPower.transform.FindChild ("Name").GetComponent<Text>().text = powerNames[power];
                newPower.transform.FindChild ("Name/Description").GetComponent<Text>().text = powerDescriptions[(power*UPGRADE_LEVELS)+(myPowerLevel-1)];
                newPower.transform.FindChild ("Bonus/BonusText").GetComponent<Text>().text = bonusTexts[(power*UPGRADE_LEVELS)+(myPowerLevel-1)];
                Debug.Log("___"+bonusTexts[(power*UPGRADE_LEVELS)+myPowerLevel]);

                newPower.transform.FindChild ("UpgradeBars").GetComponent<Image>().sprite = upgradeBarImages[myPowerLevel];
                newPower.transform.FindChild ("PowerUpIcon").GetComponent<Image>().sprite = upgradeCardImages[myPowerLevel];
                newPower.transform.FindChild ("PowerUpIcon/SpecificIcon").GetComponent<Image>().sprite = GlobalVars.POWERUP_SPRITES[power];

                if (myPowerLevel==PowerUp.MAX_LEVEL){
                    newPower.transform.FindChild ("UpgradeBars/Upgrade/Text").GetComponent<Text>().text = "MAX";
                }else{
                    int indexOffset = myPowerLevel==2?1:0;
                    int index = power*TIMES_UPGRADED+indexOffset;
                    newPower.transform.FindChild ("UpgradeBars/Upgrade/Text").GetComponent<Text>().text = "UPGRADE";

                    elem1 = elem[index,0];
                    elem2 = elem[index,1];
                    elem3 = elem[index,2];
                    elem4 = elem[index,3];
                    cost1 = cost[index,0];
                    cost2 = cost[index,1];
                    cost3 =	cost[index,2];
                    cost4 = cost[index,3];

                    newPower.transform.FindChild ("UpgradeCost/cost1").GetComponent<Text>().text = cost1.ToString();
                    newPower.transform.FindChild ("UpgradeCost/elem1").GetComponent<Image>().sprite = GlobalVars.ELEMENT_SPRITES[elem1];
                    newPower.transform.FindChild ("UpgradeCost/elem1/Name").GetComponent<Text>().text = elem1;
                    newPower.transform.FindChild ("UpgradeCost/myAmount1").GetComponent<Text>().text = PlayerPrefs.GetInt(elem1).ToString();
                    if (PlayerPrefs.GetInt(elem1) < cost1){
                        newPower.transform.FindChild ("UpgradeCost/myAmount1").GetComponent<Text>().color = notEnoughColor;
                    }
                    Debug.Log("hih"+notEnoughColor);

                    newPower.transform.FindChild ("UpgradeCost/cost2").GetComponent<Text>().text = cost2.ToString();
                    newPower.transform.FindChild ("UpgradeCost/elem2").GetComponent<Image>().sprite = GlobalVars.ELEMENT_SPRITES[elem2];
                    newPower.transform.FindChild ("UpgradeCost/elem2/Name").GetComponent<Text>().text = elem2;
                    newPower.transform.FindChild ("UpgradeCost/myAmount2").GetComponent<Text>().text = PlayerPrefs.GetInt(elem2).ToString();
                    if (PlayerPrefs.GetInt(elem2) < cost2){
                        newPower.transform.FindChild ("UpgradeCost/myAmount2").GetComponent<Text>().color = notEnoughColor;
                    }

                    newPower.transform.FindChild ("UpgradeCost/cost3").GetComponent<Text>().text = cost3.ToString();
                    newPower.transform.FindChild ("UpgradeCost/elem3").GetComponent<Image>().sprite = GlobalVars.ELEMENT_SPRITES[elem3];
                    newPower.transform.FindChild ("UpgradeCost/elem3/Name").GetComponent<Text>().text = elem3;
                    newPower.transform.FindChild ("UpgradeCost/myAmount3").GetComponent<Text>().text = PlayerPrefs.GetInt(elem3).ToString();
                    if (PlayerPrefs.GetInt(elem3) < cost3){
                        newPower.transform.FindChild ("UpgradeCost/myAmount3").GetComponent<Text>().color = notEnoughColor;
                    }

                    newPower.transform.FindChild ("UpgradeCost/cost4").GetComponent<Text>().text = cost4.ToString();
                    newPower.transform.FindChild ("UpgradeCost/elem4").GetComponent<Image>().sprite = GlobalVars.ELEMENT_SPRITES[elem4];
                    newPower.transform.FindChild ("UpgradeCost/elem4/Name").GetComponent<Text>().text = elem4;
                    newPower.transform.FindChild ("UpgradeCost/myAmount4").GetComponent<Text>().text = PlayerPrefs.GetInt(elem4).ToString();
                    if (PlayerPrefs.GetInt(elem4) < cost4){
                        newPower.transform.FindChild ("UpgradeCost/myAmount4").GetComponent<Text>().color = notEnoughColor;
                    }

                    upgrader = newPower.transform.FindChild ("UpgradeBars/Upgrade").gameObject;
                    upgrader.AddComponent<BuyUpgrade>();
                    upgradeScript = upgrader.GetComponent<BuyUpgrade>();
                    upgradeScript.setPower(currentPower);
                    upgradeScript.setCost(cost1,1);
                    upgradeScript.setCost(cost2,2);
                    upgradeScript.setCost(cost3,3);
                    upgradeScript.setCost(cost4,4);
                    upgradeScript.setElem(elem1,1);
                    upgradeScript.setElem(elem2,2);
                    upgradeScript.setElem(elem3,3);
                    upgradeScript.setElem(elem4,4);

                    upgrader.GetComponent<Button>().onClick.AddListener(upgradeScript.purchaseUpgrade);

                }

            }
        }
        /*
        //recalculates the powerup tutorial to account for the newly created components
        CraftingTutorialComponent TutorialComponent = powerScreen.GetComponent<CraftingTutorialComponent>();
        TutorialComponent.Reinitialize(MainMenuController.Tutorial.UpgradePowerup);
        TutorialComponent.ActivateComponent();

        */
    }
Beispiel #6
0
    public void createPowerList()
    {
        if (OnTogglePowerUpUpgradeScreen != null)
        {
            OnTogglePowerUpUpgradeScreen(true);
        }

        PowerUp.CheckIndexDictionary();
        for (int power = 0; power < TOTAL_BASE_POWERUPS; power++)
        {
            GameObject newPower = Instantiate(powerUpButton) as GameObject;
            newPower.transform.SetParent(contentList.transform);
            newPower.transform.localScale = buttonScale;
            currentPower = PowerUps[power];
            Debug.Log(currentPower.name);

            newPower.SetActive(true);

            //for tutorial
            if (currentPower.name == "LaneConversion")
            {
                newPower.AddComponent <CraftingTutorialComponent>().Reinitialize(MainMenuController.Tutorial.UpgradePowerup);
            }

            newPower.transform.FindChild("Name/Description").GetComponent <Text>().text = "To unlock this ability discover all level " + (power + 1).ToString() + " elements.";

            if (PowerUp.PowerUpUnlocked(currentPower))
            {
                myPowerLevel = PowerUp.GetPowerUpLevel(currentPower);
                newPower.transform.FindChild("Name").GetComponent <Text>().text             = powerNames[power];
                newPower.transform.FindChild("Name/Description").GetComponent <Text>().text = powerDescriptions[(power * UPGRADE_LEVELS) + (myPowerLevel - 1)];
                newPower.transform.FindChild("Bonus/BonusText").GetComponent <Text>().text  = bonusTexts[(power * UPGRADE_LEVELS) + (myPowerLevel - 1)];
                Debug.Log("___" + bonusTexts[(power * UPGRADE_LEVELS) + myPowerLevel]);

                newPower.transform.FindChild("UpgradeBars").GetComponent <Image>().sprite = upgradeBarImages[myPowerLevel];
                newPower.transform.FindChild("PowerUpIcon").GetComponent <Image>().sprite = upgradeCardImages[myPowerLevel];
                newPower.transform.FindChild("PowerUpIcon/SpecificIcon").GetComponent <Image>().sprite = GlobalVars.POWERUP_SPRITES[power];

                if (myPowerLevel == PowerUp.MAX_LEVEL)
                {
                    newPower.transform.FindChild("UpgradeBars/Upgrade/Text").GetComponent <Text>().text = "MAX";
                }
                else
                {
                    int indexOffset = myPowerLevel == 2?1:0;
                    int index       = power * TIMES_UPGRADED + indexOffset;
                    newPower.transform.FindChild("UpgradeBars/Upgrade/Text").GetComponent <Text>().text = "UPGRADE";

                    elem1 = elem[index, 0];
                    elem2 = elem[index, 1];
                    elem3 = elem[index, 2];
                    elem4 = elem[index, 3];
                    cost1 = cost[index, 0];
                    cost2 = cost[index, 1];
                    cost3 = cost[index, 2];
                    cost4 = cost[index, 3];

                    newPower.transform.FindChild("UpgradeCost/cost1").GetComponent <Text>().text      = cost1.ToString();
                    newPower.transform.FindChild("UpgradeCost/elem1").GetComponent <Image>().sprite   = GlobalVars.ELEMENT_SPRITES[elem1];
                    newPower.transform.FindChild("UpgradeCost/elem1/Name").GetComponent <Text>().text = elem1;
                    newPower.transform.FindChild("UpgradeCost/myAmount1").GetComponent <Text>().text  = PlayerPrefs.GetInt(elem1).ToString();
                    if (PlayerPrefs.GetInt(elem1) < cost1)
                    {
                        newPower.transform.FindChild("UpgradeCost/myAmount1").GetComponent <Text>().color = notEnoughColor;
                    }
                    Debug.Log("hih" + notEnoughColor);

                    newPower.transform.FindChild("UpgradeCost/cost2").GetComponent <Text>().text      = cost2.ToString();
                    newPower.transform.FindChild("UpgradeCost/elem2").GetComponent <Image>().sprite   = GlobalVars.ELEMENT_SPRITES[elem2];
                    newPower.transform.FindChild("UpgradeCost/elem2/Name").GetComponent <Text>().text = elem2;
                    newPower.transform.FindChild("UpgradeCost/myAmount2").GetComponent <Text>().text  = PlayerPrefs.GetInt(elem2).ToString();
                    if (PlayerPrefs.GetInt(elem2) < cost2)
                    {
                        newPower.transform.FindChild("UpgradeCost/myAmount2").GetComponent <Text>().color = notEnoughColor;
                    }

                    newPower.transform.FindChild("UpgradeCost/cost3").GetComponent <Text>().text      = cost3.ToString();
                    newPower.transform.FindChild("UpgradeCost/elem3").GetComponent <Image>().sprite   = GlobalVars.ELEMENT_SPRITES[elem3];
                    newPower.transform.FindChild("UpgradeCost/elem3/Name").GetComponent <Text>().text = elem3;
                    newPower.transform.FindChild("UpgradeCost/myAmount3").GetComponent <Text>().text  = PlayerPrefs.GetInt(elem3).ToString();
                    if (PlayerPrefs.GetInt(elem3) < cost3)
                    {
                        newPower.transform.FindChild("UpgradeCost/myAmount3").GetComponent <Text>().color = notEnoughColor;
                    }

                    newPower.transform.FindChild("UpgradeCost/cost4").GetComponent <Text>().text      = cost4.ToString();
                    newPower.transform.FindChild("UpgradeCost/elem4").GetComponent <Image>().sprite   = GlobalVars.ELEMENT_SPRITES[elem4];
                    newPower.transform.FindChild("UpgradeCost/elem4/Name").GetComponent <Text>().text = elem4;
                    newPower.transform.FindChild("UpgradeCost/myAmount4").GetComponent <Text>().text  = PlayerPrefs.GetInt(elem4).ToString();
                    if (PlayerPrefs.GetInt(elem4) < cost4)
                    {
                        newPower.transform.FindChild("UpgradeCost/myAmount4").GetComponent <Text>().color = notEnoughColor;
                    }

                    upgrader = newPower.transform.FindChild("UpgradeBars/Upgrade").gameObject;
                    upgrader.AddComponent <BuyUpgrade>();
                    upgradeScript = upgrader.GetComponent <BuyUpgrade>();
                    upgradeScript.setPower(currentPower);
                    upgradeScript.setCost(cost1, 1);
                    upgradeScript.setCost(cost2, 2);
                    upgradeScript.setCost(cost3, 3);
                    upgradeScript.setCost(cost4, 4);
                    upgradeScript.setElem(elem1, 1);
                    upgradeScript.setElem(elem2, 2);
                    upgradeScript.setElem(elem3, 3);
                    upgradeScript.setElem(elem4, 4);


                    upgrader.GetComponent <Button>().onClick.AddListener(upgradeScript.purchaseUpgrade);
                }
            }
        }

/*
 *              //recalculates the powerup tutorial to account for the newly created components
 *              CraftingTutorialComponent TutorialComponent = powerScreen.GetComponent<CraftingTutorialComponent>();
 *              TutorialComponent.Reinitialize(MainMenuController.Tutorial.UpgradePowerup);
 *              TutorialComponent.ActivateComponent();
 *
 */
    }