Example #1
0
    private void UpdateButtonText(Button button, Upgrade upgrade)
    {
        int currentLevel = gameManager.upgradeLevelsDictionary[upgrade];
        UpgradesIdentifier upgradesIdentifier = upgradesModel.GetUpgradeEnum(upgrade, currentLevel + 1);

        if (upgradesIdentifier == UpgradesIdentifier.None)
        {
            upgradesIdentifier = upgradesModel.GetUpgradeEnum(upgrade, currentLevel);
        }
        var enumType            = typeof(UpgradesIdentifier);
        var memberInfos         = enumType.GetMember(upgradesIdentifier.ToString());
        var enumValueMemberInfo = memberInfos.FirstOrDefault(m => m.DeclaringType == enumType);
        var valueAttributes     = enumValueMemberInfo.GetCustomAttributes(typeof(Identifier), false);
        var description         = ((Identifier)valueAttributes[0]).enumIdentifier;

        int maxUpgradeLevel = upgradesModel.GetTotalUpgrades(upgrade);

        if (maxUpgradeLevel == currentLevel) // Check if upgrade is max
        {
            button.GetComponentInChildren <Text>().text = description + "\n - Max Level.";
        }
        else
        {
            button.GetComponentInChildren <Text>().text = description;
        }
    }
Example #2
0
    private void DisplayChoosenUpgrade(Upgrade upgrade)
    {
        int currentLevel = gameManager.upgradeLevelsDictionary[upgrade];
        UpgradesIdentifier upgradesIdentifier = upgradesModel.GetUpgradeEnum(upgrade, currentLevel + 1);

        if (upgradesIdentifier == UpgradesIdentifier.None)
        {
            upgradesIdentifier = upgradesModel.GetUpgradeEnum(upgrade, currentLevel);
        }

        upgradeDescriptionText.text = "Description:\n" + upgradesModel.GetRecord(upgradesIdentifier).Description;
    }
Example #3
0
        public UpgradesIdentifier GetUpgradeEnum(UpgradeMenu.Upgrade type, int level)
        {
            UpgradesIdentifier ret = UpgradesIdentifier.None;

            foreach (var record in Records)
            {
                UpgradesRecord rec = record as UpgradesRecord;
                if (rec.UpgradeType == type.ToString() && rec.Upgradelevel == level)
                {
                    ret = rec.Identifier;
                }
            }
            return(ret);
        }
Example #4
0
        // Justin's Code //
        public int GetTotalUpgrades(UpgradeMenu.Upgrade type)
        {
            int total = 0;

            foreach (var record in Records)
            {
                UpgradesRecord rec = record as UpgradesRecord;
                if (rec.UpgradeType == type.ToString())
                {
                    total++;
                }
            }
            return(total);
        }