void Start() { CurrentState = BaseNodeState.Idle; gameObject.layer = LayerMask.NameToLayer(Team.ToString()); setMaterialProperties.SetMaterial(0f, TeamColors.Hues[Team], BaseNodeData.sprite); health.Initialize(BaseNodeData); }
void Update() { if (CurrentState == BaseNodeState.Idle && CurrentResearch != null) { CurrentState = BaseNodeState.Researching; setMaterialProperties.SetMaterial(1f, TeamColors.Hues[Team], BaseNodeData.sprite); } if (CurrentState == BaseNodeState.Researching && researchProgress >= CurrentResearch.cost) { CurrentState = BaseNodeState.Idle; researchProgress = 0; ResearchCompleted?.Invoke(CurrentResearch, Team); int[] techResearched = uiController.Store["TechResearched"]; techResearched[Team]++; uiController.SetValue("TechResearched", techResearched); CurrentResearch = null; setMaterialProperties.SetMaterial(0f, TeamColors.Hues[Team], BaseNodeData.sprite); } }