Esempio n. 1
0
    public void UpgradeSector(UpgradableSector sector)
    {
        if (isEvolutionTime)
        {
            return;
        }

        int cost = (sector.currentLevel + 1) * sector.levelUpgradeCost;

        if (sector.currentLevel < sector.maxLevel &&
            money.currentMoney >= cost)
        {
            sector.UpgradeSector();

            if (sector.Equals(education))
            {
                educationCostText.text  = string.Format("{0} €", (education.currentLevel + 1) * education.levelUpgradeCost);
                educationLevelText.text = education.currentLevel.ToString();
            }
            if (sector.Equals(internalEconomy))
            {
                internalEconomyCostText.text = string.Format("{0} €", (internalEconomy.currentLevel + 1) * internalEconomy.levelUpgradeCost);
                intEcoLevelText.text         = internalEconomy.currentLevel.ToString();
            }
            if (sector.Equals(externalEconomy))
            {
                externalEconomyCostText.text = string.Format("{0} €", (externalEconomy.currentLevel + 1) * externalEconomy.levelUpgradeCost);
                extEcoLevelText.text         = externalEconomy.currentLevel.ToString();
            }

            if (sector.currentLevel == sector.firstMilestoneLevel || sector.currentLevel == sector.secondMilestoneLevel ||
                sector.currentLevel == sector.thirdMilestoneLevel || sector.currentLevel == sector.ultimateMilestoneLevel)
            {
                sector.Repair();

                if (sector.Equals(education))
                {
                    edDetTurns = 0;
                }
                if (sector.Equals(internalEconomy))
                {
                    intEcoDetTurns = 0;
                }
                if (sector.Equals(externalEconomy))
                {
                    extEcoDetTurns = 0;
                }
            }

            money.currentMoney -= cost;
            moneyText.text      = string.Format("{0} €", money.currentMoney);
            StartEvolutionPhase();
        }
    }
Esempio n. 2
0
    public void RepairSector(UpgradableSector sector)
    {
        if (isEvolutionTime || sector.currentLevel <= 0)
        {
            return;
        }

        int cost = 0;

        switch (sector.currentDeteriorationLevel)
        {
        case UpgradableSector.DeteriorationLevel.NORMAL:
            cost = sector.repairingCostPerLevel;
            break;

        case UpgradableSector.DeteriorationLevel.RUINED:
            cost = sector.repairingCostPerLevel * 2;
            break;

        default:
            return;
        }

        if (money.currentMoney >= cost)
        {
            money.currentMoney -= cost;
            moneyText.text      = string.Format("{0} €", money.currentMoney);
            sector.Repair();

            if (sector.Equals(education))
            {
                edDetTurns = 0;
            }
            if (sector.Equals(internalEconomy))
            {
                intEcoDetTurns = 0;
            }
            if (sector.Equals(externalEconomy))
            {
                extEcoDetTurns = 0;
            }

            StartEvolutionPhase();
        }
    }