using TMPro; using UnityEngine; using System.Collections.Generic; using static CommunicationEvents; public class RenderedScrollFact : MonoBehaviour { public int ID; public TextMeshProUGUI LabelMesh; private string _label; public string factUri; private Color defaultColor = new Color(255,255,255,135); private Color highlightColor = new Color(255,0,0,135); public GameObject ScrollParameterObject; public string Label { get { return _label; } set { if (_label == value) return; _label = value; LabelMesh.text = value; } } void Start() { HintAvailableEvent.AddListener(OnHintAvailable); } public void OnClickHintButton() { ScrollFactHintEvent.Invoke(this.ScrollParameterObject, factUri); } public void OnHintAvailable(List<string> uris) { UnityEngine.UI.Button button = ScrollParameterObject.GetComponentInChildren<UnityEngine.UI.Button>(); UnityEngine.UI.ColorBlock buttonColor = button.colors; if (uris.Contains(factUri)) { buttonColor.normalColor = highlightColor; button.colors = buttonColor; } else { buttonColor.normalColor = defaultColor; button.colors = buttonColor; } } }