触发另一个游戏对象时取消隐藏游戏对象

时间:2016-12-06 15:14:41

标签: javascript unity3d

所以我有2个游戏对象。第一个游戏对象是setActive(false);第二个游戏对象是我触发时的第一个游戏对象,第一个游戏对象必须是setActive(true);但我似乎无法做到这一点..我只是Unity的初学者

#pragma strict
function Start () 
{
    GameObject.Find("jumpImage").SetActive(false);
}

function OnTriggerEnter(col:Collider)
{   
    if(col.tag=="Player")
    {
        GameObject.Find("jumpImage").SetActive(true);
    }       
}

1 个答案:

答案 0 :(得分:0)

GameObject.Find只找到" ACTIVE"您可以在GameObject.Find的文档中看到的游戏对象。

话虽如此,如果你在Start和OnTriggerEnter函数之间引用相同的GameObject,你也可以在第一次找到它之后存储一个引用。

#pragma strict

var jumpImageGO : GameObject;

function Start () 
{
    jumpImageGO = GameObject.Find("jumpImage");
    if (jumpImageGO != null)
        jumpImageGO.SetActive(false);
}

function OnTriggerEnter(col:Collider)
{
    if(col.tag=="Player")
    {
        jumpImageGO.SetActive(true);
    }       
}