Unity3d 从脚本中查找自己的游戏对象(克隆)

Unity3d 从脚本中查找自己的游戏对象(克隆),unity3d,unityscript,gameobject,Unity3d,Unityscript,Gameobject,我正在编写一段代码,其中我实例化了x个游戏对象的克隆(预制)。有几个随机生成的汽车来模拟交通,每个克隆然后附加几个脚本;一个用来控制人工智能,一个用来控制碰撞,我想要第三个用来在汽车“出界”时摧毁它,或者太远了以至于我们看不见它 问题是,我不知道如何访问脚本当前附加到的游戏对象。我设法从OnCollisionInter2D中找到了我正在碰撞的任何游戏对象,但我还没有找到找到“我自己”或“自己”的方法 我知道我有一个刚体,因为我可以控制汽车,而无需实例化或添加任何组件 function Fixed

我正在编写一段代码,其中我实例化了x个游戏对象的克隆(预制)。有几个随机生成的汽车来模拟交通,每个克隆然后附加几个脚本;一个用来控制人工智能,一个用来控制碰撞,我想要第三个用来在汽车“出界”时摧毁它,或者太远了以至于我们看不见它

问题是,我不知道如何访问脚本当前附加到的游戏对象。我设法从OnCollisionInter2D中找到了我正在碰撞的任何游戏对象,但我还没有找到找到“我自己”或“自己”的方法

我知道我有一个刚体,因为我可以控制汽车,而无需实例化或添加任何组件

function FixedUpdate () 
{
    // Controls the velocity of the car
    rigidbody2D.angularVelocity = 0;
}
关于如何删除上述游戏对象(包括rigidbody2D)并停止/停用所有附加到它的脚本,有什么线索吗

我想我可以用“销毁(游戏对象)”来销毁游戏对象(以及与之相连的所有东西),只是不知道如何正确设置游戏对象


编辑:另外,知道用于该游戏对象实例的预置名称(不同的预置使用相同的脚本)将非常有益。

每个脚本都有一个名为“GameObject”的属性,该属性是脚本当前附加到的游戏对象。 所以是的,你的线索是对的,你可以称之为毁灭(gameObject)。 如果脚本附加到对象,则gameObject属性由Unity设置

[编辑]
这样做还将销毁附加到对象的每个组件(包括脚本)

,即使我刚刚添加了myClone.AddComponent(aiScript);在暗示我的克隆人之后?你是个和蔼可亲的人,而我也差不多是。我有一个游戏对象(用大写的G代替)。我现在觉得很傻><但是,有没有办法找到我正在使用的预制件的名称?哈哈,这就是为什么我写了一个“g”,我不确定这是你的错别字。顺便问一下,为什么要在实例化对象后添加aiScript?为什么不把它添加到预置中呢?我需要基于繁殖位置的不同脚本,aiScript只是一个变量(字符串),它包含了我需要的该繁殖点脚本的名称。这是一个混乱,但它可以工作:P我可以通过编写gameObject.name:)来找到名称。好吧,那似乎是合法的,而且这比为每个aiScript创建一个预设好^^^^^这很好。很高兴我能帮助你