using System.Collections; using System.Collections.Generic; using UnityEngine; using System; /// /// ±¸¼þ¿â /// public class SpareLibrary : MonoBehaviour { public static SpareLibrary instance; public GameObject mask; public Transform content; private GameObject spareItem; public GameObject SpareItem { get { if (spareItem == null) spareItem = Resources.Load("SparePartsModel/Button/SparePartsBtn"); return spareItem; } } private RectTransform maskRect; public RectTransform MaskRect { get { if (maskRect == null) maskRect = mask.GetComponent(); return maskRect; } } List SpareItems = new List(); private void Awake() { instance = this; } private void LateUpdate() { if (Input.GetMouseButtonDown(0) || Input.GetMouseButtonDown(1)) { if (!RectTransformUtility.RectangleContainsScreenPoint(MaskRect, Input.mousePosition)) mask.gameObject.SetActive(false); } } public void Generate(string _toolName,string _resourcePath, Action _call) { for (int i = 0; i < SpareItems.Count; i++) { Destroy(SpareItems[i].gameObject); } SpareItems.Clear(); Sprite[] allSprite = Resources.LoadAll(_resourcePath); for (int i = 0; i < allSprite.Length; i++) { SparePartsButton spareBtn = Instantiate(SpareItem, content).GetComponent(); spareBtn.Image.sprite = allSprite[i]; SpareItems.Add(spareBtn); spareBtn.onClick.AddListener(() => { //if (SelectionManage.instance) //{ // SelectionManage.instance.SolveIssue(_toolName, spareBtn.Image.mainTexture); //} XFrame.Core.UI.XUIPanel.ClosePanel(); mask.gameObject.SetActive(false); PreviewWindow.Preveiw(null); _call?.Invoke(spareBtn.Image.mainTexture); Debug.Log("ÄÃÈ¡¡¾" + _toolName + "¡¿"); }); } mask.SetActive(true); } public void Generate(string _toolName, string _resourcePath, Action _call) { for (int i = 0; i < SpareItems.Count; i++) { Destroy(SpareItems[i].gameObject); } SpareItems.Clear(); Sprite[] allSprite = Resources.LoadAll(_resourcePath); for (int i = 0; i < allSprite.Length; i++) { SparePartsButton spareBtn = Instantiate(SpareItem, content).GetComponent(); spareBtn.Image.sprite = allSprite[i]; SpareItems.Add(spareBtn); spareBtn.onClick.AddListener(() => { //if (SelectionManage.instance) //{ // SelectionManage.instance.SolveIssue(_toolName, spareBtn.Image.mainTexture); //} XFrame.Core.UI.XUIPanel.ClosePanel(); mask.gameObject.SetActive(false); PreviewWindow.Preveiw(null); _call?.Invoke(spareBtn.Image.sprite.name); Debug.Log("ÄÃÈ¡¡¾" + _toolName + "¡¿"); }); } mask.SetActive(true); } }