using System.Collections; using System.Collections.Generic; using TMPro; using UnityEngine; using UnityEngine.UI; /// /// 设置联动 /// public class Control_Linkage : MonoBehaviour { /// /// 打开电视时联动 /// public List OpenTV = new List(); /// /// 关闭电视时联动 /// public List CloseTV = new List(); /// /// 打开空调时联动 /// public List OpenAir = new List(); /// /// 关闭空调时联动 /// public List CloseAir = new List(); /// /// 保存选择 /// public Button Enter; /// /// 选择条件 /// public TMP_Dropdown Choosecondition; /// /// 选择结果 /// public TMP_Dropdown Chooseoutcome; /// /// 输入的名称 /// public TMP_InputField InputName; /// /// 设置面板 /// public GameObject SetPanel; /// /// 保存后显示的面板 /// public GameObject ClickPanel; /// /// 克隆的按钮 /// public GameObject CloneButton; /// /// 克隆的父物体 /// public Transform CloneParent; void Start() { InputName.characterLimit = 6; Chooseoutcome.AddOptions(OpenAir); Choosecondition.onValueChanged.AddListener((value) => { Chooseoutcome.options = new List(); switch (Choosecondition.captionText.text) { case "开空调": Chooseoutcome.AddOptions(OpenAir); break; case "关空调": Chooseoutcome.AddOptions(CloseAir); break; case "开电视": Chooseoutcome.AddOptions(OpenTV); break; case "关电视": Chooseoutcome.AddOptions(CloseTV); break; } }); Enter.onClick.AddListener(() => { EnterChoose(); }); } public void EnterChoose() { GameObject go = Instantiate(CloneButton, CloneParent.transform); go.name = Choosecondition.captionText.text + "|" + Chooseoutcome.captionText.text; go.GetComponentInChildren().text = InputName.text; go.SetActive(true); SetPanel.SetActive(false); ClickPanel.SetActive(true); } }