maxhacker11

DraggableItem.cs

Aug 14th, 2023
329
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.00 KB | Source Code | 0 0
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.EventSystems;
  5. using UnityEngine.UI;
  6.  
  7. public class DraggableItem : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler
  8. {
  9.     Image image;
  10.     CanvasGroup group;
  11.     public Transform parentAfterDrag;
  12.  
  13.     private void Start()
  14.     {
  15.         image = GetComponent<Image>();
  16.         group = GetComponent<CanvasGroup>();
  17.     }
  18.  
  19.     public void OnBeginDrag(PointerEventData eventData)
  20.     {
  21.         parentAfterDrag = transform.parent;
  22.         transform.SetParent(transform.root);
  23.         transform.SetAsLastSibling();
  24.  
  25.         group.alpha = .5f;
  26.         image.raycastTarget = false;
  27.     }
  28.  
  29.     public void OnDrag(PointerEventData eventData)
  30.     {
  31.         transform.position = Input.mousePosition;
  32.     }
  33.  
  34.     public void OnEndDrag(PointerEventData eventData)
  35.     {
  36.         transform.SetParent(parentAfterDrag);
  37.  
  38.         group.alpha = 1f;
  39.         image.raycastTarget = true;
  40.     }
  41. }
  42.  
Advertisement
Add Comment
Please, Sign In to add comment