using TMPro; using UdonSharp; using UnityEngine; using VRC.SDKBase; using VRC.Udon; [UdonBehaviourSyncMode(BehaviourSyncMode.Manual)] public class ArrivalDisplay : UdonSharpBehaviour { [SerializeField] private GameObject _Sign; [SerializeField] private TextMeshProUGUI _Display; [UdonSynced, FieldChangeCallback(nameof(ActivateSign))] private bool _ActivateSign; [UdonSynced, FieldChangeCallback(nameof(DisplayText))] private string _DisplayText; public void Activate(bool Active) { ActivateSign = Active; RequestSerialization(); } public void SetDisplayText(string Text) { DisplayText = Text; RequestSerialization(); } private bool ActivateSign { set { _ActivateSign = value; _Sign.SetActive(_ActivateSign); } get => _ActivateSign; } private string DisplayText { set { _DisplayText = value; _Display.text = _DisplayText; } get => _DisplayText; } }