using UnityEngine.EventSystems; 
 | 
using UnityEngine; 
 | 
using UnityEngine.UI; 
 | 
  
 | 
public class MoveObj : MonoBehaviour,IDragHandler,IBeginDragHandler,IEndDragHandler 
 | 
{ 
 | 
    private Vector3 vec3; 
 | 
    private Vector3 pos; 
 | 
    public const string GMInputPos_Key = "GMInputPos"; 
 | 
    private float[] gmInputPos = new float[3]; 
 | 
  
 | 
  
 | 
    private void OnEnable() 
 | 
    { 
 | 
        if (LocalSave.GetFloatArray(GMInputPos_Key) != null) 
 | 
        { 
 | 
            gmInputPos = LocalSave.GetFloatArray(GMInputPos_Key); 
 | 
            transform.GetComponent<RectTransform>().anchoredPosition3D = new Vector3(gmInputPos[0], gmInputPos[1], gmInputPos[2]); 
 | 
        } 
 | 
    } 
 | 
  
 | 
  
 | 
    public void OnBeginDrag(PointerEventData eventData) 
 | 
    { 
 | 
        GameObject _moveObj = eventData.pointerDrag; 
 | 
        vec3 = Input.mousePosition; 
 | 
        pos = transform.GetComponent<RectTransform>().anchoredPosition3D; 
 | 
    } 
 | 
  
 | 
    public void OnDrag(PointerEventData eventData) 
 | 
    { 
 | 
        Vector3 off = Input.mousePosition - vec3; 
 | 
        vec3 = Input.mousePosition; 
 | 
        pos = pos + off; 
 | 
  
 | 
        if (pos.x > -506 && pos.y > -318 && pos.x < 515 && pos.y < 336) 
 | 
        { 
 | 
            transform.GetComponent<RectTransform>().anchoredPosition3D = pos; 
 | 
            gmInputPos[0] = pos.x; 
 | 
            gmInputPos[1] = pos.y; 
 | 
            gmInputPos[2] = pos.z; 
 | 
            LocalSave.SetFloatArray(GMInputPos_Key, gmInputPos); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    public void OnEndDrag(PointerEventData eventData) 
 | 
    { 
 | 
        Debug.Log(pos.x + "和" + pos.y); 
 | 
    } 
 | 
  
 | 
} 
 |