//Handle upgrade purchasing //If purchased, then turn on the upgrade modifier specified by upgradeName public void purchase(upgradeName upgrdName, bool purchased = false) { if (purchased == true) { switch (upgrdName) { case upgradeName.HarvestingI: upgradeLibrary.TryGetValue(upgradeName.HarvestingI, out tempUpgrade); tempUpgrade.isEnabled = true; upgradeLibrary[upgradeName.HarvestingI] = tempUpgrade; break; case upgradeName.HarvestingII: //Shut off lower tier upgrade tempUpgrade = upgradeLibrary[upgradeName.HarvestingI]; tempUpgrade.isEnabled = true; upgradeLibrary[upgradeName.HarvestingI] = tempUpgrade; //Turn on new upgrade tempUpgrade = upgradeLibrary[upgradeName.HarvestingII]; tempUpgrade.isEnabled = true; upgradeLibrary[upgradeName.HarvestingII] = tempUpgrade; break; default: Debug.LogError("No upgradeName in upgradeTree"); break; } } else { Debug.LogError("Cannot upgradeName " + upgrdName.ToString() + " not purchaseable"); } }
//Check if upgrade is purchased public bool Check(upgradeName name) { bool unlocked = false; switch (name) { case upgradeName.HarvestingI: //Grab and return the state of unlock unlocked = upgradeLibrary[upgradeName.HarvestingI].isEnabled; break; case upgradeName.HarvestingII: //Grab and return the state of unlock unlocked = upgradeLibrary[upgradeName.HarvestingI].isEnabled; break; default: break; } return(unlocked); }