using System.Collections; using System.Collections.Generic; using Unity.VisualScripting; using UnityEditor.Experimental.GraphView; using UnityEngine; using UnityEngine.Networking.Types; using UnityEngine.UI; public class JueseChoicePop : MonoBehaviour { public ClassMate classMate; public ClassItem classItem; public Button CloseBtn; public Button Surebtn; public GameObject classmatePrefab; public Transform content; public List classMateList = new List (); public string s; public JSONReader jsonReader; public Panel panel; //Start is called before the first frame update void Start() { this.gameObject.SetActive(false); CloseBtn.onClick.AddListener(CLosePop); Surebtn.onClick.AddListener(CLosePop); //Surebtn.onClick.AddListener(SetFenguan); //SetClass(); } void CLosePop() { this.gameObject.SetActive(false); } public void openPop() { this.gameObject.SetActive(true); } void SetFenguan() { //设置此区分的分管人员为用户选中的角色,并刷新界面信息 classItem.isSet = true; //classItem.setClassItem(); } // Update is called once per frame void Update() { } public void SetClass(int id) { // 清除当前内容 foreach (Transform child in content) { Destroy(child.gameObject); } // 获取指定 ID 的 LocationData LocationData locationData = jsonReader.GetAreaDateById(id); // 判断 Oversee 字段 if (locationData.Oversee == "-1") { Debug.Log($"Skipping ID {id}: Oversee is -1."); return; // 跳过 } // 分割 Oversee 字段 string[] overseeParts = locationData.Oversee.Split(','); string firstElement = overseeParts[0]; string lastElement = overseeParts[1]; if (overseeParts.Length > 0) { // 判断第一个元素是否为 "1" if (lastElement == "1") { foreach (var pair in panel.sceneDataDictionary) { foreach (var selectedInfo in pair.Value) { if (selectedInfo.dutyId == firstElement) { GameObject item = GameObject.Instantiate(classmatePrefab, content); ClassMate classMate = item.GetComponent(); classMate.classmatename.text = selectedInfo.name; } } } Debug.Log($"Instantiated ClassMate for ID {id} with name {locationData.Name}"); } } } public void SetClassItem(ClassItem classItem) { this.classItem = classItem; } public void SetClassMate(ClassMate classMate, string a = "") { classMate.isBeSet = true; classItem.isSet = true; this.classMate = classMate; this.classMate.classmatename.text = classMate.classmatename.text + "(" + classItem.classname.text + ")"; } }