繁体   English   中英

unity2d:当我尝试销毁游戏对象时,销毁方法不起作用

[英]unity2d: Destroy method not working when i try to destroy a game object

(这不是完整的代码)当我在控制台中测试脚本时,它说:LEVEL2 UNLOCKED表示它可以工作,但是当我尝试使用destroy方法时,它不会销毁level2lock游戏对象。

 if (PlayerPrefs.GetString("level2unlocked") == "true")
     {
         Debug.Log("LEVEL2 UNLOCKED");
         Destroy(level2lock);
     }

是GameObject类型的“ level2lock”,还是对附加到GameObject的脚本的引用。

因此,例如:

private LevelLockComponent level2lock;

private void DestroyLevelLockMethod()
{
    Destroy(level2lock.gameObject);
}

LevelLockComponent将是附加到level2lock GameObject的脚本。

我希望这有帮助。

更新

嗨Drin,

我看,我刚刚编写了这个简单的实现,用于销毁已在编辑器中分配的GameObject。

using UnityEngine;
using System.Collections;

public class GameObjectKiller : MonoBehaviour 
{
    public GameObject otherGameObject;

    private void Update()
    {
        if(Input.GetKeyDown(KeyCode.A))
        {
            Destroy(otherGameObject);
        }
    }
}

当按下A按钮时,这将从层次结构中破坏“ otherGameObject”。

我还建议您在此处查看Unity教程以使用“销毁”: https : //unity3d.com/learn/tutorials/modules/beginner/scripting/destroy

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM