public void upgradeItem(UpgradesEnum item) { switch (item) { case UpgradesEnum.PENETRATION: penetration_lvl++; GameData.shellBaseStats.penetrations = GameData.upgrades.penetration_lvl; break; case UpgradesEnum.BOUNCE: bounce_lvl++; GameData.shellBaseStats.bounces = GameData.upgrades.bounce_lvl; break; case UpgradesEnum.FULL_HP_DAMAGE: fullHpDamage_lvl++; break; case UpgradesEnum.BURN: burn_lvl++; break; case UpgradesEnum.DEATH_EXPLOSIVE: deathExplosive_lvl++; break; case UpgradesEnum.SLOW: slow_lvl++; break; } }
public Upgrade(UpgradesEnum upgradeEnum, int possibleUpgradeOriginalAmount, int firstUpgradeCost, int furtherUpgradesAdditionalCost, float amountOfMoneyAddedEachPassiveIncomeUpgrade) : this(upgradeEnum, possibleUpgradeOriginalAmount) { FirstUpgradeCost = firstUpgradeCost; FurtherUpgradesAdditionalCost = furtherUpgradesAdditionalCost; AmountOfMoneyAddedEachPassiveIncomeUpgrade = amountOfMoneyAddedEachPassiveIncomeUpgrade; }
public int getItemBasePrice(UpgradesEnum item) { switch (item) { case UpgradesEnum.PENETRATION: return(penetration_BasePrice); case UpgradesEnum.BOUNCE: return(bounce_BasePrice); case UpgradesEnum.FULL_HP_DAMAGE: return(fullHpDamage_BasePrice); case UpgradesEnum.BURN: return(burn_BasePrice); case UpgradesEnum.DEATH_EXPLOSIVE: return(deathExplosive__BasePrice); case UpgradesEnum.SLOW: return(slow_basePrice); default: return(0); } }
public string getItemDescription(UpgradesEnum item, int level) { switch (item) { case UpgradesEnum.PENETRATION: return("Penetrate " + level + " enemies, after penetration damage lower by " + Math.Round((1 - Mathf.Pow(penetration_damageToLast, 1.0f / level)) * 100, 1) + "%"); case UpgradesEnum.BOUNCE: return("Shell will bounce walls " + level + " times"); case UpgradesEnum.FULL_HP_DAMAGE: return("Inflict " + (fullHpDamage_damageMultiplier * level) * 100 + "% damage to enemies with higher then " + ((fullHpDamage_startHpMin - level * fullHpDamage_HpMinDecimal) * 100) + "% HP."); case UpgradesEnum.BURN: return("With " + (burn_startChance + burn_plusChance * level) + "% burn an enemy to inflict " + (burn_startDamagePerTickMultiplier + burn_plusDamagePerTickMultiplier * level) * 100 + "% by tick in " + burn_duration + " secounds."); case UpgradesEnum.DEATH_EXPLOSIVE: return("On die enemy explode on " + (deathExplosive_baseRadius + deathExplosive__radiusPerLvl * level) + " m to inflict " + (deathExplosive_baseDamage + deathExplosive__damagePerLvl * level) * 100 + "% damage."); case UpgradesEnum.SLOW: return("With " + slow_getSlowChance(level) + "% slow enemy on hit by " + (1 - slow_getSlowAmount(level)) * 100 + "%"); default: return("Desctription unfound!"); } }
public Upgrade(UpgradesEnum upgradeEnum, int possibleUpgradeOriginalAmount, int firstUpgradeCost, int furtherUpgradesAdditionalCost, int amountOfTimeForFirstNineUpgrades, float amountOfTimeForOtherUpgrades, int amountOfOneSecondUpgrades) : this(upgradeEnum, possibleUpgradeOriginalAmount) { FirstUpgradeCost = firstUpgradeCost; FurtherUpgradesAdditionalCost = furtherUpgradesAdditionalCost; AmountOfTimeForFirstNineUpgrades = amountOfTimeForFirstNineUpgrades; AmountOfTimeForOtherUpgrades = amountOfTimeForOtherUpgrades; AmountOfOneSecondUpgrades = amountOfOneSecondUpgrades; }
public Upgrade(UpgradesEnum upgradeEnum, int possibleUpgradeOriginalAmount, int activeIncomeUpgradeFactor, int timesOfNewIncomeCost) : this(upgradeEnum, possibleUpgradeOriginalAmount) { ActiveIncomeUpgradeFactor = activeIncomeUpgradeFactor; TimesOfNewActiveIncomeCost = timesOfNewIncomeCost; }
public Upgrade(UpgradesEnum upgradeEnum, int possibleUpgradeOriginalAmount) { UpgradeEnum = upgradeEnum; PossibleUpgradeOriginalAmount = possibleUpgradeOriginalAmount; }
public string getItemNextLevelDescription(UpgradesEnum item) { return(getItemDescription(item, getItemLevel(item) + 1)); }