//实现物体交换
public void OnEndDrag(PointerEventData eventData)
{
//print("end...");
cg.blocksRaycasts = true;
GameObject go = eventData.pointerEnter;
//碰到的物体是其它物品
if (go.CompareTag("Aticles"))
{
//碰到的原本的父级
Transform goParent = go.transform.parent;
//把碰到的放到拖拽的父级中
go.transform.parent=transform.parent;
go.transform.localPosition = Vector3.zero;
//把拖拽的放到碰到的父级中
transform.SetParent(goParent, false);
transform.localPosition = Vector3.zero;
}
//碰到的物体是其它物品的父级
else if (go.CompareTag("Ceils"))
{
//把碰到的放到拖拽的父级中
//GameObject s= go.transform.GetChild(0).gameObject;
if (go.transform.childCount!=0)
{
GameObject s = go.transform.GetChild(0).gameObject;
s.transform.parent = transform.parent;
s.transform.localPosition = Vector3.zero;
//把拖拽的物体放到碰到的里面
transform.SetParent(go.transform, false);
transform.localPosition = Vector3.zero;
}
else
{
transform.SetParent(go.transform, false);
transform.localPosition = Vector3.zero;
}
}
}