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