diff --git a/Assets/Scripts/City/City.cs b/Assets/Scripts/City/City.cs index 5f7296b738b0247b923fd1fc412f22815f6f8e49..36f61e31b2f6688cbcd294309493ed2a87f01a7e 100644 --- a/Assets/Scripts/City/City.cs +++ b/Assets/Scripts/City/City.cs @@ -145,6 +145,38 @@ public class City : MonoBehaviour resrow.GetComponent<ResourceRow>().SetRow(r, x - 2f, y, z); } + public void UpgradeWorkerSpeed() { + foreach (GameObject go in workerlista) { + go.GetComponent<Collector>().speed += 1; + } + } + + public bool IsSufficientResources(List<Resource> lista, int amount) + { + ResourcePool[] poolit = gameObject.GetComponents<ResourcePool>(); + List<Resource> resurssit = new List<Resource>(lista); + for (int i = 0; i < lista.Count; i++) + { + for (int j = 0; j < poolit.Length; j++) + { + if (poolit[j].GetResource().GetType().Equals(lista[i].GetType())) + { + for(int k = 0; k<resurssit.Count; k++) + { + if(resurssit[k].GetType().Equals(lista[i].GetType())) + resurssit.Remove(poolit[j].GetResource()); + } + + if (poolit[j].GetAmount() < amount) + { + return false; + } + } + } + } + + return resurssit.Count == 0; + } /** * Lisaa kaikkien resurssipoolien maxKapasiteettia x:n verran */