示例#1
0
    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;
        });
    }
示例#2
0
    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);
    }