using System.Collections; using System.Collections.Generic; using System.Linq; using TMPro; using Unity.VisualScripting.Antlr3.Runtime; using UnityEngine; using UnityEngine.UI; /// /// 空调控制 /// public class Control_Air : MonoBehaviour { public static Control_Air Instance; /// /// 制冷按钮 /// public Button Cool; /// /// 制热按钮 /// public Button Warm; /// /// 温度+ /// public Button TempAdd; /// /// 温度- /// public Button TempSub; /// /// 风速+ /// public Button WindAdd; /// /// 风速- /// public Button WindSub; /// /// 打开空调 /// public Button Open; /// /// 是否开启空调 /// bool isOpen; /// /// 点击的空调 /// public Transform airobject; private void Awake() { Instance = this; } void Start() { Open.onClick.AddListener(() => { isOpen = !isOpen; OpenAir(isOpen); }); Cool.onClick.AddListener(() => { OpenAir(true); }); Warm.onClick.AddListener(() => { SetWarm(); }); TempAdd.onClick.AddListener(() => { AddTemp(); }); TempSub.onClick.AddListener(() => { SubTemp(); }); WindAdd.onClick.AddListener(() => { AddWind(); }); WindSub.onClick.AddListener(() => { SubWind(); }); } /// /// 打开空调 默认为制冷 /// private void OpenAir(bool isopen) { if (isopen) { Canvas chirendcanvas = airobject.GetComponentInChildren(); Open.GetComponentInChildren().text = "关闭空调"; chirendcanvas.transform.localScale = new Vector3(0.1f, 0.1f, 0.1f); List chirendmessage = chirendcanvas.GetComponentsInChildren().ToList(); airobject.GetChild(0).GetComponentInChildren().material.EnableKeyword("_EMISSION"); chirendmessage[0].text = "16";//温度 chirendmessage[2].text = ">";//风速 chirendmessage[3].text = "制冷";//温度 } else { Canvas chirendcanvas = airobject.GetComponentInChildren(); Open.GetComponentInChildren().text = "打开空调"; chirendcanvas.transform.localScale = new Vector3(0, 0, 0); airobject.GetChild(0).GetComponentInChildren().material.DisableKeyword("_EMISSION"); } } /// /// 设置制暖 /// private void SetWarm() { Canvas chirendcanvas = airobject.GetComponentInChildren(); List chirendmessage = chirendcanvas.GetComponentsInChildren().ToList(); airobject.GetChild(0).GetComponentInChildren().material.EnableKeyword("_EMISSION"); chirendmessage[0].text = "26"; chirendmessage[2].text = ">";//风速 chirendmessage[3].text = "制热";//模式 } /// /// 温度+ /// private void AddTemp() { Canvas chirendcanvas = airobject.GetComponentInChildren(); List chirendmessage = chirendcanvas.GetComponentsInChildren().ToList(); if (int.Parse(chirendmessage[0].text) < 32) { chirendmessage[0].text = (int.Parse(chirendmessage[0].text) + 1).ToString(); } } /// /// 温度- /// private void SubTemp() { Canvas chirendcanvas = airobject.GetComponentInChildren(); List chirendmessage = chirendcanvas.GetComponentsInChildren().ToList(); if (int.Parse(chirendmessage[0].text) > 16) { chirendmessage[0].text = (int.Parse(chirendmessage[0].text) - 1).ToString(); } } /// /// 风速+ /// private void AddWind() { Canvas chirendcanvas = airobject.GetComponentInChildren(); List chirendmessage = chirendcanvas.GetComponentsInChildren().ToList(); if (chirendmessage[2].text.Length < 3) { chirendmessage[2].text += ">"; } } /// /// 风速- /// private void SubWind() { Canvas chirendcanvas = airobject.GetComponentInChildren(); List chirendmessage = chirendcanvas.GetComponentsInChildren().ToList(); if (chirendmessage[2].text.Length > 1) { chirendmessage[2].text = chirendmessage[2].text.Substring(0, chirendmessage[2].text.Length - 1); } } }