public void OnDrag(PointerEventData eventData) { List <RaycastResult> results = new List <RaycastResult>(); EventSystem.current.RaycastAll(eventData, results); if (results.Count > 0) { foreach (RaycastResult hit in results) { onRelease onR = hit.gameObject.GetComponent <onRelease>(); if (onR != null) { if (onR != showedOnRelease) { onR.Show(); showedOnRelease = onR; } break; } else { if (showedOnRelease != null) { showedOnRelease.Hide(); showedOnRelease = null; } } } } }
public void OnPointerUp(PointerEventData dt) { Debug.Log("Draggable mouse up"); isMouseDown = false; if (shouldReturn) { Debug.Log("Retour à position initiale"); target.position = startPosition; } List <RaycastResult> results = new List <RaycastResult>(); EventSystem.current.RaycastAll(dt, results); if (results.Count > 0) { foreach (RaycastResult hit in results) { onRelease onR = hit.gameObject.GetComponent <onRelease>(); if (onR != null) { CustomLayout customLayout = onR.transform.parent.parent.GetComponent <CustomLayout>(); customLayout.Add(onR.Side, transform as RectTransform, customLayout); if (showedOnRelease != null) { showedOnRelease.Hide(); showedOnRelease = null; } break; } } } }