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 tools; public Transform PlayercameraTrans; public static TooslManager instance; public void Awake() { instance = this; } void Start() { foreach (var tool in tools) { // 保存每个工具的原始位置和旋转 tool.originalPosition = tool.toolObject.transform.localPosition; tool.originalRotation = tool.toolObject.transform.localRotation; Debug.Log("第一个位置:"+ tool.originalPosition); // 为每个按钮添加点击事件 tool.returnButton.onClick.AddListener(ResetAllTools); } } // 返回所有工具到原始位置并隐藏 public void ResetAllTools() { foreach (var tool in tools) { tool.toolObject.transform.SetParent(PlayercameraTrans.transform); tool.toolObject.transform.localPosition = tool.originalPosition; tool.toolObject.transform.localRotation = tool.originalRotation; tool.toolObject.SetActive(false); Debug.Log("第二个位置:" + tool.originalPosition); } } }