从一个涉及另一个(2D)的GameObject获取名称

时间:2018-12-03 22:29:12

标签: unity3d

我想知道如何从GameObject中获取名称,而该GameObject用我的附加脚本触摸了我的GameObject

我在对撞机上尝试过,但是它似乎对我不起作用。

这是我的脚本所在的对象。

Image 1

现在我想从下面的// Get an array of filterForm's keys const filterFormKeys = Object.keys(filterForm); // Get a flattened array of this.rows' keys const rowKeys = this.rows.flatMap(item => Object.keys(item)); // Get keys that exist in both arrays using Array.filter const existingKeys = rowKeys.filter(key => filterFormKeys.includes(key)); // Use the Set object to get unique keys out of existingKeys const uniqueExistingKeys = [...new Set(existingKeys)]; console.log(uniqueExistingKeys) 中获取名称。

Image 2

这怎么可能?

1 个答案:

答案 0 :(得分:3)

当然,它实际上只是“ .name”!

类似...

protected void OnCollisionEnter(Collision info) {

    string theName = info.transform.name;
    Debug.Log("the name is " + theName);

根据您的游戏,您可能必须了解如何使用触发器(基本上将对撞机设置为触发器),但这确实是另一个问题。

使用“标签”也很常见。 (只需在检查器中设置它们即可。)

protected void OnCollisionEnter(Collision info) {

    if (!info.transform.CompareTag("trees")) {

        Debug.Log("we just hit a tree, do nothing");
        return;
    }

祝你好运!