using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class UI_FaultSituationL2Btn : MonoBehaviour { [HideInInspector] public List limitedFaults; public UI_FaultSelectionRegistrationPanel mainPanel; /// /// 加载选中的故障 /// /// public void loadLimitedFaults(List listFromOption) { limitedFaults = new List(listFromOption); } /// /// 当选中时,检查故障互斥 /// /// public void CheckLimtWhenSelected(bool b) { if (limitedFaults == null) return; UI_FaultSituationL2Btn[] faultTogs = GameObject.FindObjectsOfType(); if (b) { //CheckLimtByName(this.name); foreach (var item in faultTogs) { if (limitedFaults.Contains(item.gameObject.name)) { Toggle tog = item.GetComponent(); tog.isOn = false; tog.interactable = false; } } } else { foreach (var item in faultTogs) { if (limitedFaults.Contains(item.gameObject.name)) { Toggle tog = item.GetComponent(); tog.interactable = true; } } for (int i = 0; i < mainPanel.rightFaultGroup.transform.childCount; i++) if (mainPanel.rightFaultGroup.transform.GetChild(i).gameObject.name.Equals(this.name)) { DestroyImmediate(mainPanel.rightFaultGroup.transform.GetChild(i).gameObject); break; } mainPanel.ResetL2FaultLimitationBySelected(); } } /// /// 目前只负责关闭,不负责打开 /// /// /*public void CheckLimtByName(string faultName) { UI_FaultSituationL2Btn[] faultTogs = GameObject.FindObjectsOfType(); foreach (var item in faultTogs) { if (limitedFaults.Contains(faultName)) { Toggle tog = item.GetComponent(); tog.isOn = false; tog.interactable = false; } } }*/ // Start is called before the first frame update void Start() { } }