private void SetProjectsButton() { if (building.GetType() != typeof(TarentTown)) { foreach (var project in building.possibleProjects) { if (project != null) { var btnName = project.customerType.ToString() + "(" + project.GetHashCode() + ")"; if (!uiData.Contains(btnName)) { var materialInstance = GetCopyOfMaterial(projectButtonMaterial); var btn = proceduralUiElements.CreateButton ( uiData.projectsLayout.rectTransform, btnName, materialInstance ); SetEventListener(btn, project, materialInstance); uiData.AddProjectApplyButton(btn, btn.gameObject.transform.GetChild(0).GetComponent <TextMeshProUGUI>()); } } } } else { var allProjects = building.Company.GetAllProjects; for (int i = 0; i < allProjects.Count; i++) { if (allProjects[i] != null) { var btnName = allProjects[i].customerType.ToString() + "(" + allProjects[i].GetHashCode() + ")"; if (!uiData.Contains(btnName)) { var btn = proceduralUiElements.CreateButton ( uiData.projectsLayout.rectTransform, btnName ); btn.interactable = false; //---------- uiData.AddProjectApplyButton(btn, btn.gameObject.transform.GetChild(0).GetComponent <TextMeshProUGUI>()); } } } } }