using System.Collections; using System.Collections.Generic; using System.Threading.Tasks; using UnityEngine; public class Building : MonoBehaviour { public BuildingData buildingData; public int curLevel; public Outline[] outlines; void Awake(){ //if(outline == null){outline = GetComponent();} outlines = GetComponentsInChildren(); ToggleOutlines(false); Selector.OnSelectedChanged.AddListener(OnSelectedChanged); } void OnSelectedChanged(){ if(Selector.selectedBuilding == null){ToggleOutlines(false); return;} ToggleOutlines(Selector.selectedBuilding == this); } void ToggleOutlines(bool value){ foreach(Outline outline in outlines){ outline.enabled = value; } } public async Task Upgrade(){ if(curLevel >= buildingData.levels.Count-1){Debug.Log("Already max");return;} int cost = buildingData.levels[curLevel+1].price; Debug.Log("Upgrading " + buildingData.buildingName + " for " + cost + " coins"); await (DBmanager.SetCoins(DBmanager.Coins-cost)); Mathf.Clamp(curLevel++,0, buildingData.levels.Count-1); } /* */ }