48 lines
1.3 KiB
C#
48 lines
1.3 KiB
C#
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
using System.Collections.Generic;
|
|
using Unity.VisualScripting;
|
|
|
|
public class TooslManager : MonoBehaviour
|
|
{
|
|
[System.Serializable]
|
|
public class Tool
|
|
{
|
|
public GameObject toolObject;
|
|
public Button returnButton;
|
|
[HideInInspector]
|
|
public Vector3 originalPosition;
|
|
[HideInInspector]
|
|
public Quaternion originalRotation;
|
|
}
|
|
|
|
public List<Tool> tools;
|
|
|
|
public Transform PlayercameraTrans;
|
|
|
|
void Start()
|
|
{
|
|
foreach (var tool in tools)
|
|
{
|
|
// 保存每个工具的原始位置和旋转
|
|
tool.originalPosition = tool.toolObject.transform.localPosition;
|
|
tool.originalRotation = tool.toolObject.transform.localRotation;
|
|
|
|
// 为每个按钮添加点击事件
|
|
tool.returnButton.onClick.AddListener(ResetAllTools);
|
|
}
|
|
}
|
|
|
|
// 返回所有工具到原始位置并隐藏
|
|
public void ResetAllTools()
|
|
{
|
|
foreach (var tool in tools)
|
|
{
|
|
tool.toolObject.transform.localPosition = tool.originalPosition;
|
|
tool.toolObject.transform.localRotation = tool.originalRotation;
|
|
tool.toolObject.SetActive(false);
|
|
tool.toolObject.transform.SetParent(PlayercameraTrans.transform);
|
|
}
|
|
}
|
|
}
|