using System; using System.Collections; using UnityEngine; using static InterfaceManager; using DefaultNamespace; using System.Collections.Generic; using cakeslice; public class Fetchbox : MonoBehaviour { /// /// 获取箱子接口路径 /// private string url; /// /// 烟箱子 /// public GameObject box; /// /// 获取箱子接口 /// public ShelfBoxModel shelfBoxModel = new ShelfBoxModel(); /// /// 每个箱子的信息 /// public List boxinformationList = new List(); private void Start() { url += Boxface; StartCoroutine(Getstring(url, (data) => { //Debug.Log(data); Boxdata(data); Debug.Log("调用l"); })); } /// /// 解析箱子的数据 /// public void Boxdata(string data) { if (data != null) { Debug.Log(data); shelfBoxModel = JsonUtility.FromJson(data); for (int i = 0; i < shelfBoxModel.result.Count; i++) { GameObject Box = Instantiate(box); Boxinformation boxinformation = Box.AddComponent(); //Outline outline = Box.AddComponent(); //outline.color = 1; //GameObject childbox = Box.transform.GetChild(0).gameObject; //Outline putline2 = childbox.AddComponent(); //putline2.color = 1; string boxname = $"{shelfBoxModel.result[i].row}-{shelfBoxModel.result[i].column}-{shelfBoxModel.result[i].layer}"; //Debug.Log(boxname); GameObject parentObject = GameObject.Find(boxname); if (parentObject) { Box.transform.SetParent(parentObject.transform, false); boxinformation.ID = shelfBoxModel.result[i].id; boxinformation.type = shelfBoxModel.result[i].type; boxinformation.locationId = shelfBoxModel.result[i].locationId; boxinformation.description = shelfBoxModel.result[i].description; boxinformation.locationState = shelfBoxModel.result[i].locationState; boxinformation.storageState = shelfBoxModel.result[i].storageState; boxinformation.layer = shelfBoxModel.result[i].layer; boxinformation.row = shelfBoxModel.result[i].row; boxinformation.column = shelfBoxModel.result[i].column; boxinformation.specialFlag = shelfBoxModel.result[i].specialFlag; boxinformation.palletNum = shelfBoxModel.result[i].palletNum; boxinformation.itemType = shelfBoxModel.result[i].itemType; boxinformation.isSpecial = shelfBoxModel.result[i].isSpecial; //if (shelfBoxModel.result[i]. boxinformationList.Add(boxinformation); if (shelfBoxModel.result[i].layer.Equals(1)) { GameObject childbox = Box.transform.GetChild(0).gameObject; MqttManager.Instance.firstbox.Add(childbox); MqttManager.Instance.firstbox.Add(Box); } else { GameObject childbox = Box.transform.GetChild(0).gameObject; MqttManager.Instance.secondbox.Add(childbox); MqttManager.Instance.secondbox.Add(Box); } } else { //Destroy(Box); Debug.LogWarning($"未找到名为 {boxname} 的父对象。物体将被删除。"); } } } } }