|
|
- using UnityEngine;
- using UnityEngine.UI;
- using TMPro;
-
- public class ChatController : MonoBehaviour {
-
-
- public TMP_InputField ChatInputField;
-
- public TMP_Text ChatDisplayOutput;
-
- public Scrollbar ChatScrollbar;
-
- void OnEnable()
- {
- ChatInputField.onSubmit.AddListener(AddToChatOutput);
- }
-
- void OnDisable()
- {
- ChatInputField.onSubmit.RemoveListener(AddToChatOutput);
- }
-
-
- void AddToChatOutput(string newText)
- {
- // Clear Input Field
- ChatInputField.text = string.Empty;
-
- var timeNow = System.DateTime.Now;
-
- string formattedInput = "[<#FFFF80>" + timeNow.Hour.ToString("d2") + ":" + timeNow.Minute.ToString("d2") + ":" + timeNow.Second.ToString("d2") + "</color>] " + newText;
-
- if (ChatDisplayOutput != null)
- {
- // No special formatting for first entry
- // Add line feed before each subsequent entries
- if (ChatDisplayOutput.text == string.Empty)
- ChatDisplayOutput.text = formattedInput;
- else
- ChatDisplayOutput.text += "\n" + formattedInput;
- }
-
- // Keep Chat input field active
- ChatInputField.ActivateInputField();
-
- // Set the scrollbar to the bottom when next text is submitted.
- ChatScrollbar.value = 0;
- }
-
- }
|