using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.Events; using UnityEngine.UI; public class VRDialogMenu : MonoBehaviour { public static VRDialogMenu CreateDialog() { if (VRDialogMenu.m_Instance == null) { VRDialogMenu.m_Instance = UnityEngine.Object.FindObjectOfType(); } return VRDialogMenu.m_Instance; } private void Start() { if (VRDialogMenu.m_Instance != null) { } VRDialogMenu.m_Instance = this; base.gameObject.SetActive(false); } public void CloseDialog() { this.m_UICanvasFade.FadeOut(); VRCanvasManager.Instance.OpenVRCanvas(VRCanvasManager.VRCanvasType.MainMenu); VRCanvasManager.Instance.ClearCanvasStack(); } public void OpenDialog(string message, params VRDialogMenu.DialogButton[] dialogButtons) { VRCanvasManager.Instance.OpenVRCanvas(VRCanvasManager.VRCanvasType.Dialog); base.gameObject.SetActive(true); this.m_TextMessage.text = message; for (int i = 0; i < this.m_ButtonArray.Count; i++) { this.m_ButtonArray[i].SetActive(false); } for (int j = 0; j < dialogButtons.Length; j++) { VRDialogMenu.DialogButton dialogButton = dialogButtons[j]; GameObject gameObject; if (this.m_ButtonArray.Count > j) { gameObject = this.m_ButtonArray[j].gameObject; } else { gameObject = UnityEngine.Object.Instantiate(this.m_PrefabDialogButton); this.m_ButtonArray.Add(gameObject); } gameObject.SetActive(true); Button component = gameObject.GetComponent