0
我有一个包含BoxCollider2D的GameObjects数组。我不知道该怎么做,当我点击其中一个自我检测点击。MouseEvent && Detect MouseClick Collider
我的意思是,给我一个索引。例如,我点击位置0上的对象,在控制台中,我得到值0,在控制台中单击位置3上的对象。我得到的值3.
我试图做一个能够帮助我的类,但它没有奏效。
public GameObject[] ColorColliders;
void Start()
{
foreach (GameObject coll in ColorColliders)
coll.GetOrAddComponent<MouseEventSystem>().MouseEvent += ColorClick;
}
private void ColorClick(GameObject target, MouseEventType type)
{
if(type == MouseEventType.CLICK)
{
int targetIndex = System.Array.IndexOf(ColorColliders, target);
Debug.Log(targetIndex);
}
}
如果你知道另一种方法,你能帮助我吗? 谢谢。
好吧,我们已经解决了这个问题。不管怎样,谢谢。 (Input.GetMouseButtonDown(0)) CastRay(); } void CastRay() Vector2 pos = new Vector2(Input.mousePosition.x,Input.mousePosition.y); RaycastHit2D hit = Physics2D.Raycast(Camera.main.ScreenToWorldPoint(pos),Vector2.zero); if(hit) { //做你想做的事 } } –
是的,有很多方法可以做到这一点。很高兴你找到一款适合你的产品。 – yes
:)))....谢谢 –