public void UpgradePopulation() { UpgradeTargets target = UpgradeTargets.population; City city = gameObject.GetComponent <City>(); int currentLevel = city.GetLevel(target); /* * // Change music based on population level * switch (currentLevel) * { * case 3: * EventSystem.EventHappened(EventType.CityBig); * break; * case 4: * EventSystem.EventHappened(EventType.HuntingSmall); * break; * case 5: * EventSystem.EventHappened(EventType.HuntingBig); * break; * default: * break; * } */ if (currentLevel <= maxLevelModifier) { city.UseResources(GetPrices(currentLevel + 1)); city.populationLevel++; city.AddPopulation(currentLevel * 10); Debug.Log("population upgraded"); } }
public void UpgradeCity() { UpgradeTargets target = UpgradeTargets.city; City city = gameObject.GetComponent <City>(); int currentLevel = city.GetLevel(target); if (city.GetLevel(UpgradeTargets.population) >= 5) { city.UseResources(GetPrices(currentLevel * 10)); // city.IncreaseCityLevel(); currently not implemented in City } }
public void UpgradeCollector() { UpgradeTargets target = UpgradeTargets.collector; City city = gameObject.GetComponent <City>(); int currentLevel = city.GetLevel(target); if (currentLevel <= maxLevelModifier) { Debug.Log("Collector Upgraded"); city.UseResources(GetPrices(currentLevel)); city.AddCollector(); } }
public void UpgradeCapacity() { UpgradeTargets target = UpgradeTargets.capacity; City city = gameObject.GetComponent <City>(); int currentLevel = city.GetLevel(target); if (currentLevel <= maxLevelModifier) { city.UseResources((GetPrices(currentLevel))); city.resourcePoolLevel++; city.IncreaseCapacity(currentLevel * 100); Debug.Log("Capacity upgraded"); } }
public void UpgradeRoad() { UpgradeTargets target = UpgradeTargets.speed; Road road = gameObject.GetComponent <Road>(); City city = gameObject.GetComponent <City>(); int currentLevel = (int)road.GetLevel(target); if (currentLevel <= maxLevelModifier) { city.UseResources(GetPrices(currentLevel)); road.IncreaseSpeed(1 / currentLevel); Debug.Log("Road upgraded"); } }
/** * Palauttaa kysytyn targetin levelin */ public int GetLevel(UpgradeTargets target) { switch (target) { case UpgradeTargets.population: return(this.populationLevel); case UpgradeTargets.capacity: return(this.resourcePoolLevel); case UpgradeTargets.speed: return(this.roadLevel); case UpgradeTargets.collector: return(this.workerlista.Count); default: Debug.Log("Default"); return(-1); break; } return(1); }
internal float GetLevel(UpgradeTargets target) { throw new NotImplementedException(); }