88 lines
2.1 KiB
C#
88 lines
2.1 KiB
C#
using System.Collections;
|
||
using System.Collections.Generic;
|
||
using UnityEngine;
|
||
using UnityEngine.Events;
|
||
using UnityEngine.UI;
|
||
//============================================================
|
||
//支持中文,文件使用UTF-8编码
|
||
//@author YangHua
|
||
//@create 20230914
|
||
//@company QianHuo
|
||
//
|
||
//@description:
|
||
//============================================================
|
||
|
||
public class ToolsItemManager : MonoSingleton<ToolsItemManager>
|
||
{
|
||
public GameObject toolPanel;
|
||
public List<ToolItem> toolItems = new List<ToolItem>();
|
||
public ToolItem toolItemPrefab;
|
||
public Transform toolsContent;
|
||
public Button closeBtn;
|
||
public UnityEvent ItemClick;
|
||
private void Start()
|
||
{
|
||
closeBtn.onClick.AddListener(() => { SwictchToolPanel(false); });
|
||
}
|
||
|
||
public void SwictchToolPanel(bool isActive)
|
||
{
|
||
toolPanel.SetActive(isActive);
|
||
}
|
||
|
||
public void SwitchToolsState()
|
||
{
|
||
|
||
}
|
||
|
||
/// <summary>
|
||
/// 在工具家生成图标
|
||
/// </summary>
|
||
/// <param name="toolName"></param>
|
||
public void CreatToolItem(GameObject currentModel)
|
||
{
|
||
ToolItem tTemp = Instantiate(toolItemPrefab, toolsContent);
|
||
if (tTemp.name == "工作卡")
|
||
{
|
||
tTemp.selfButton.onClick.AddListener(() =>
|
||
{
|
||
UIManager.Instance.jobCardController.jobCardPanel.SetActive(true);
|
||
});
|
||
}
|
||
else
|
||
{
|
||
tTemp.selfButton.onClick.AddListener(() =>
|
||
{
|
||
ItemClick?.Invoke();
|
||
});
|
||
}
|
||
tTemp.SetValue(currentModel.name, currentModel.transform);
|
||
tTemp.SetState(true);
|
||
toolItems.Add(tTemp);
|
||
}
|
||
|
||
public void RemoveNull()
|
||
{
|
||
for (int i = 0; i < toolItems.Count; i++)
|
||
{
|
||
if (toolItems[i] == null)
|
||
toolItems.RemoveAt(i);
|
||
}
|
||
}
|
||
|
||
/// <summary>
|
||
/// 需要3D去调用
|
||
/// </summary>
|
||
public void SwitchAllToolItems()
|
||
{
|
||
for (int i = 0; i < toolItems.Count; i++)
|
||
{
|
||
if (toolItems[i] != null)
|
||
toolItems[i].SwitchSelfIsClick();
|
||
else
|
||
toolItems.RemoveAt(i);
|
||
}
|
||
}
|
||
|
||
}
|