public void showEvent(StoryEvent currentEvent) { Debug.Log("new event"); eventBoxList.ForEach(Destroy); eventBoxList.Clear(); GameObject newEventText = Instantiate(textBoxPrefab, canvas.transform); newEventText.transform.SetSiblingIndex(0); //Text newEventText = canvas.AddComponent<Text>(); TextMeshProUGUI newText; newText = newEventText.GetComponentsInChildren <TextMeshProUGUI>()[1]; newText.text = currentEvent.getResults(_masterScript.storyResources); Button[] button = newEventText.GetComponentsInChildren <Button>(); button[0].onClick.AddListener(() => { _masterScript.StartNextEvent("red"); }); button[1].onClick.AddListener(() => { _masterScript.StartNextEvent("yellow"); }); button[2].onClick.AddListener(() => { _masterScript.StartNextEvent("blue"); }); //newEventText.text = currentEvent.eventText; eventBoxList.Add(newEventText); }