using AibisDream; using UnityEngine; public class Socket : MonoBehaviour, ISocket { public bool IsAvailable { get; private set; } = true; public Vector2 InsertionPoint => transform.position; private Plug plug=null; private YarnOption _option; [HideInInspector] public TargetPointData targetData; // 新增属性 public YarnOption Option { set => _option = value; } public void Start() { targetData=transform.GetComponent(); } public void Update() { if(plug!=null) { plug.transform.position=transform.position; } } public void InsertPlug(Plug p) { if (IsAvailable) { IsAvailable = false; } AudioManager.RandomPlayInteraction("plug_in"); plug=p; plug.CableRef.End=plug.transform; // 可插入就可以触发对话 //_option?.SelectOption(); } public void RemovePlug(Plug p) { IsAvailable = true; AudioManager.RandomPlayInteraction("plug_out"); //MessageBox.Instance.HandleMessageBoxCommand("null",""); if(plug!=null) { plug.CableRef.End=plug.transform.GetChild(0).transform; plug.currentSocket=null; plug=null; } } public Vector2 GetPosition() { return transform.position; } }