Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在几秒钟后销毁一个生成的对象?_C#_Unity3d - Fatal编程技术网

C# 如何在几秒钟后销毁一个生成的对象?

C# 如何在几秒钟后销毁一个生成的对象?,c#,unity3d,C#,Unity3d,我在销毁繁殖的克隆对象时遇到了麻烦。它不会摧毁它 我使用预置(生命,盔甲…)和空游戏对象作为繁殖点 它孕育了它,一切都很好,但我不会摧毁它。所以我的问题是:如何摧毁一个物体的孩子?(更新功能中的第二个“如果”) 使用系统集合; 使用System.Collections.Generic; 使用UnityEngine; 公共类对象:单行为 { 公共交通; 公共转换点; 公共浮动计时器=10; 公共浮动计时器1=15; void Start() { 如果(spawnPoints.Length==0)

我在销毁繁殖的克隆对象时遇到了麻烦。它不会摧毁它

我使用预置(生命,盔甲…)和空游戏对象作为繁殖点

它孕育了它,一切都很好,但我不会摧毁它。所以我的问题是:如何摧毁一个物体的孩子?(更新功能中的第二个“如果”)

使用系统集合;
使用System.Collections.Generic;
使用UnityEngine;
公共类对象:单行为
{
公共交通;
公共转换点;
公共浮动计时器=10;
公共浮动计时器1=15;
void Start()
{
如果(spawnPoints.Length==0)
{
LogError(“未引用任何繁殖点”);
}
}
无效更新()
{
Log(“生成:+pickUp.name”);
Timer-=Time.deltaTime;
Timer1-=Time.deltaTime;

if(Timer
Destroy
接受第二个参数以延迟有效Destroy

public class SpawnObjects : MonoBehaviour
{

    public Transform pickUp;
    public Transform[] spawnPoints;
    public float Timer = 10;

    void Start()
    {
        if (spawnPoints.Length == 0)
        {
            Debug.LogError("No spawn points referenced.");
        }
    }

    void Update()
    {
        Timer -= Time.deltaTime;

        if (Timer <= 0)
        {
            Transform _sp = spawnPoints[Random.Range(0, spawnPoints.Length)];
            GameObject instance = Instantiate(pickUp, _sp.position, _sp.rotation).gameObject;
            Destroy(instance, 15);
            Timer = 10;
        }
    }
}
公共类对象:单行为
{
公共交通;
公共转换点;
公共浮动计时器=10;
void Start()
{
如果(spawnPoints.Length==0)
{
LogError(“未引用任何繁殖点”);
}
}
无效更新()
{
Timer-=Time.deltaTime;

if(Timer
Destroy
接受第二个参数以延迟有效Destroy

public class SpawnObjects : MonoBehaviour
{

    public Transform pickUp;
    public Transform[] spawnPoints;
    public float Timer = 10;

    void Start()
    {
        if (spawnPoints.Length == 0)
        {
            Debug.LogError("No spawn points referenced.");
        }
    }

    void Update()
    {
        Timer -= Time.deltaTime;

        if (Timer <= 0)
        {
            Transform _sp = spawnPoints[Random.Range(0, spawnPoints.Length)];
            GameObject instance = Instantiate(pickUp, _sp.position, _sp.rotation).gameObject;
            Destroy(instance, 15);
            Timer = 10;
        }
    }
}
公共类对象:单行为
{
公共交通;
公共转换点;
公共浮动计时器=10;
void Start()
{
如果(spawnPoints.Length==0)
{
LogError(“未引用任何繁殖点”);
}
}
无效更新()
{
Timer-=Time.deltaTime;

如果(计时器您可以在启动函数
中写入销毁(gameObject,15);
gameObject是您要销毁的游戏对象,15是您希望“保持其活动”的秒数。

您可以在启动函数
中写入销毁(gameObject,15)
gameObject是您要销毁的游戏对象,15秒是您要“保持其活力”的秒数。

我必须将“.gameObject”放在实例末尾,以消除错误“无法隐式将类型“UnityEngine.Transform”转换为“UnityEngine.gameObject”现在的问题是,当它生成第一个克隆对象时,它不会销毁它。但它会销毁第二个对象。我无法复制您在空项目中描述的问题和我提供的脚本。没问题,朋友!感谢您的帮助。我必须将“.gameObject”放在实例末尾以消除错误“无法将类型'UnityEngine.Transform'隐式转换为'UnityEngine.GameObject'“现在的问题是,当它生成第一个克隆对象时,它不会销毁它。但它会销毁第二个对象。我无法复制您在空项目中描述的问题和我提供的脚本。没问题,朋友!感谢您的帮助。感谢您的回答,但我已经通过延迟(使用IEnumerator)修复了它。”.谢谢你的回答,但我已经通过延迟(使用IEnumerator)解决了这个问题。