我如何检查当前GameObject的标签是什么?

本文关键字:GameObject 标签 是什么 何检查 检查 | 更新日期: 2023-09-27 18:03:08

我正在为我的电子游戏创建一个关卡选择。我有10个按钮,每个都有不同的标签,每个都有相同的脚本附加到它们。在附加的脚本中,我想检查游戏对象的标签是什么,并将其打印到屏幕上。

这是我试过的代码-

if (gameObject.tag = "LevelOne") {
        Debug.Log("The tag for this GameObject is" + gameObject.tag);
}

然而,我得到一个错误,因为我写的是明显不正确的语法。我如何检查附加的GameObject的标签是什么?如果没有,有什么可以替代我正在尝试做的事情? Thanks- George:)

我如何检查当前GameObject的标签是什么?

比较多个=符号而不是一个的变量。当您使用一个=符号时,您将从右侧的值分配给左侧的变量。在这种情况下,你的GameObject的标签将被更改为LevelOne而没有if语句。

if (gameObject.tag =="LevelOne")
{
    Debug.Log("The tag for this GameObject is" + gameObject.tag);
}

您还可以通过使用CompareTag函数而不是==来使这段代码更好。

if (gameObject.CompareTag("LevelOne"))
{
    Debug.Log("The tag for this GameObject is" + gameObject.tag);
}

编辑:http://answers.unity3d.com/questions/200820/is-comparetag-better-than-gameobjecttag-performanc.html