C# unity2d:当我试图销毁游戏对象时,销毁方法不起作用
(这不是全部代码)当我在控制台中测试脚本时,它说:LEVEL2 UNLOCKED意味着它可以工作,但当我尝试使用销毁方法时,它不会销毁level2lock游戏对象C# unity2d:当我试图销毁游戏对象时,销毁方法不起作用,c#,unity3d,C#,Unity3d,(这不是全部代码)当我在控制台中测试脚本时,它说:LEVEL2 UNLOCKED意味着它可以工作,但当我尝试使用销毁方法时,它不会销毁level2lock游戏对象 if (PlayerPrefs.GetString("level2unlocked") == "true") { Debug.Log("LEVEL2 UNLOCKED"); Destroy(level2lock); } 是GameObject类型的“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级解锁的文本显示在控制台上),我试图使用如上所示的销毁方法,但我失败了,因为即使文本显示,阻挡该播放器的墙也没有被销毁,这就是问题所在。我尝试过,但失败了,但我会检查这些教程,谢谢。