如何检测哪个对象正在运行脚本

时间:2018-10-28 07:44:29

标签: c# unity3d

您好,我有一个脚本,该脚本将在所有对象上运行,因此当您将鼠标悬停在其上时会显示其名称,但是要执行此操作,不同的对象将具有不同的名称,因此我如何在代码中检测哪个游戏对象正在运行该脚本当鼠标与对象上的碰撞器碰撞时,它会运行某些部分,因此我需要知道该对象的名称是什么。谢谢

1 个答案:

答案 0 :(得分:0)

运行脚本的对象是脚本附加到的对象:this.gameObject

正如Lestat的评论所说,“使用gameObject.name之类的东西”,但是我要指出的是,这是分配给GameObject和变形物品的名称(任何使用Instantiate命令创建的物品)将在其预制名称后附加“(克隆)”。这可能不理想。

但是,如果每个游戏对象都附加了一个脚本,并且每个脚本对象都有一个存储该对象名称的公共字符串字段,则可以改用gameObject.GetComponent<ThatNameScript>().name,其中ThatNameScript是您所使用的任何脚本的名称正在用于存储对象的名称。