// construct research list that will be shown on the panel public void makeResearchList() { clearList(); List <Technology> techList; switch (state) { case "LOCKED": techList = rm.getLockedList(); break; case "AVAILABLE": techList = rm.getAvailableList(); break; case "DONE": techList = rm.getDoneList(); break; default: Debug.Log("Wrong makeResearchList() call"); techList = new List <Technology>(); break; } foreach (Technology tech in techList) { // Generate elements GameObject element = Instantiate(panelElement); // Attach it to panel scroll list // If you change name of object in inspector, you must change below code element.transform.SetParent(transform.Find(elementParent)); element.GetComponent <ResearchPanelElement>().init(tech); } setButtonColor(); }