CQ_Intelligent-Technology-T.../Assets/Scripts/Control_Linkage.cs

95 lines
2.6 KiB
C#

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