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

C# unity2d:当我试图销毁游戏对象时,销毁方法不起作用,c#,unity3d,C#,Unity3d,(这不是全部代码)当我在控制台中测试脚本时,它说:LEVEL2 UNLOCKED意味着它可以工作,但当我尝试使用销毁方法时,它不会销毁level2lock游戏对象 if (PlayerPrefs.GetString("level2unlocked") == "true") { Debug.Log("LEVEL2 UNLOCKED"); Destroy(level2lock); } 是GameObject类型的“level2lock”,还

(这不是全部代码)当我在控制台中测试脚本时,它说:LEVEL2 UNLOCKED意味着它可以工作,但当我尝试使用销毁方法时,它不会销毁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游戏对象的脚本

我希望这有帮助

更新

嗨,德林

我明白了,我刚刚编写了这个简单的实现,用于销毁编辑器中指定的游戏对象

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教程中关于使用“销毁”的内容:

level2lock变量是一种公共游戏对象类型,我拖放了一堵墙,阻止玩家进入第二级,问题是我不知道如何在玩家完成第一级后正确使用销毁方法(这是工作,因为2级解锁的文本显示在控制台上),我试图使用如上所示的销毁方法,但我失败了,因为即使文本显示,阻挡该播放器的墙也没有被销毁,这就是问题所在。我尝试过,但失败了,但我会检查这些教程,谢谢。