问题描述
我有一个问题,我创建了一个游戏,我需要收集一个气球,并检查附在上面的文字数: Example
public void OnTriggerEnter(Collider other)
{
if (other.gameObject.tag == "Ballon")
{
//Now I want to check the text//
}
}
解决方法
这很简单。作为示例,您在SELECT *
FROM mst_goods_barcode b
JOIN mst_goods g
ON b.goods_id = g.id
JOIN trx_agent_stock s
ON s.goods_id = g.id
WHERE s.agent_id = 1
AND b.barcode = "BL0213"
OR g.name LIKE "%tea%"
对象的子对象中有一个TextMeshPro
。现在,在这种情况下,您可以通过两种方式获取子对象。
我将在答案的底部添加参考链接。
- other.transform.Find();
- other.transform.GetChild();
1。 other.transform.Find()
使用other
方法将遍历作为父对象的子对象的所有游戏对象(在您的情况下),该方法将尽快遍历transform.find()
对象的所有子对象。找到与名称匹配的对象,它将返回该对象。
以下是示例:
other
2。 other.transform.GetChild()
此方法将直接从您输入的索引中返回子级。而且这种方法是一种有效的方法。
以下是示例:
public void OnTriggerEnter(Collider other)
{
if (other.gameObject.tag == "Ballon")
{
TextMeshPro tmp = other.transform.Find("Text (TMP) (1)").GetComponent<TextMeshPro>();
if(tmp.text == "text of your liking")
{
Debug.Log("Do what you want");
}
}
}
参考: