private bool IsPointerOverUIObject() { PointerEventData eventDataCurrentPosition = new PointerEventData(EventSystem.current); eventDataCurrentPosition.position = new Vector2(Input.mousePosition.x, Input.mousePosition.y); List <RaycastResult> results = new List <RaycastResult>(); EventSystem.current.RaycastAll(eventDataCurrentPosition, results); print("Results:"); foreach (RaycastResult result in results) { print("\t" + result.gameObject.name); } CodeSnippetHolder hitHolder = results[0].gameObject.GetComponentInParent <CodeSnippetHolder>(); CodeSnippetHolder myHolder = GetComponentInParent <CodeSnippetHolder>(); if (hitHolder != null && myHolder != null) { return(hitHolder == myHolder); } else { return(false); } }
public void ChangeDropdownInfo(int itemIndex) { selectedImage.sprite = dropdownItems[itemIndex].itemIcon; selectedText.text = dropdownItems[itemIndex].itemName; selectedItemIndex = itemIndex; if (CodeSnippetRegistrar.instance.unlockedSnippets.Count > 0) { if (GetComponent <CodeSnippetHolder>()) { CodeSnippetHolder snip = GetComponent <CodeSnippetHolder>(); snip.ChangeSubscriber(CodeSnippetRegistrar.instance.unlockedSnippets[selectedItemIndex].methodName); print(snip.eventName + " now triggers " + snip.methodName); } } // dropdownItems[itemIndex].OnItemSelection.Invoke(); }