public void Generate() { gameObject.SetActive(true); int diff = DayManager.instance.excitement - lastExcitement; graph.sprite = diff > 0 ? upwardGraph : diff < 0 ? downwardGraph : neutralGraph; lastExcitement = DayManager.instance.excitement; views.text = Mathf.RoundToInt( Random.value * Mathf.Pow(10, 1 + 2 * Mathf.Log(Mathf.Max(1, DayManager.instance.excitement)))).ToString(); advice.text = DayManager.note; foreach (Transform transform in comments) { Destroy(transform.gameObject); } foreach (CommentChain commentChain in CommentChainManager.comments.OrderBy(c => c.adviceRating).Take(3)) { CommentChain.Comment comment = commentChain.comments.OrderBy(c => Random.value).FirstOrDefault(); CommentChainManager.CreateComment(comments, commentChain, comment, messagePrefab).GetComponentInChildren <TextMeshProUGUI>().fontSize = 16; } DayManager.Delay(0, delegate { // Force layout rebuild VerticalLayoutGroup layout = comments.GetComponent <VerticalLayoutGroup>(); layout.enabled = false; layout.enabled = true; }); }
public static GameObject CreateComment(Transform parent, CommentChain chain, CommentChain.Comment comment, GameObject prefab = null) { GameObject commentObject = Instantiate(prefab ?? instance.messagePrefab, parent); TextMeshProUGUI text = commentObject.GetComponentInChildren <TextMeshProUGUI>(); text.text = "<b>" + chain.GetName(comment.commenterNumber) + "</b>: " + comment.comment; return(commentObject); }