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);
}
}