/// <summary>Creates ui elements based on the data showing list</summary> private void CreateItemsBasedOnShowingData() { foreach (RoomData item in dataShowing) { RoomListItem listItem = new RoomListItem(); ListItemMembers members = Instantiate(prefabRoomListItem, transform).GetComponent <ListItemMembers>(); listItem.TxtName = members.MemberDictionary["RoomName"].GetComponent <Text>(); listItem.TxtPlayerCount = members.MemberDictionary["PlayerCount"].GetComponent <Text>(); listItem.EventTriggers = members.MemberDictionary["Interactable"].GetComponent <EventTrigger>(); listItem.KeyImage = members.MemberDictionary["KeyImage"].GetComponent <Image>(); listItem.TxtName.text = item.Name; listItem.SetPlayerCount(item.PlayerCount, DemoGameMaxPlayers); listItem.EventTriggers.GetComponent <Selectable>().interactable = !item.IsFull; listItem.KeyImage.enabled = item.HasKey; listItems.Add(listItem); } }