「Unity」延时Destroy

代码注释已经写得很清楚,直接调用即可

第一种方式:使用Destroy()的重载方法

void Start()
{
    float time = 5.0f;//延时f秒

    //3秒后销毁某个gameObject
    Destroy(this.gameObject,time);
}

第二种方式:使用协程延时的方法

void Start()  
{  
    //调用协程 延时5秒  
    StartCoroutine(Wait(5f));  
}  

/// <summary>  
/// 延时指定秒数,执行某些代码  
/// </summary>  
/// <param name="t">延时秒数</param>  
/// <returns></returns>  
IEnumerator Wait(float t)  
{  
    yield return new WaitForSeconds(t);//运行到这,暂停t秒  

    //t秒后,继续运行下面代码  
    print("Time over."); 
    //销毁某个gameObject
    Destroy(this.gameObject); 
}  

第三种方式:使用Update()方法做手动计时器(不推荐)

//延时5秒
float time =5.0f;
void Update()
{
    //减去时间增量
    time -= Time.deltaTime;

    //5秒结束
    if(time <= 0f)
    {
        Destroy(this.gameObject);
    }
}

原创文章,转载请注明出处

http://www.cnblogs.com/777777-716/p/5003961.html 

原文地址:https://www.cnblogs.com/777777-716/p/5003961.html