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