所以这与我问的另一个问题是一致的,但我选择了不同的路线。我的问题是在此脚本中,我正在从LevelManager脚本中找到播放器的级别。我将为每个玩家等级使用不同的面板,并随着等级的提高而激活它们。这不是我了解的最好方法。我遇到的问题是此脚本中的级别未随其他脚本中的currentLevel更新,因此面板始终处于0状态,因此面板无法打开。感谢您的帮助。尼尔
public GameObject Panel1;
public GameObject Panel2;
public GameObject Panel3;
public GameObject levelscript;
public int level;
public void Start()
{
GameObject scoreEventTrigger = GameObject.Find("ScoreEventTrigger");
LevelManager levelManager = scoreEventTrigger.GetComponent<LevelManager>();
level = levelManager.currentLevel;
}
public void OpenPanel1()
{
if (level == 1)
{
if (Panel1 != null)
{
Panel1.SetActive(true);
}
}
}
public void OpenPanel2()
{
if (level == 2)
{
if (Panel2 != null)
{
Panel2.SetActive(true);
}
}
}
}
答案 0 :(得分:1)
仅在开始时加载脚本。 触发某些事件(例如“ onGetXp”)时,您需要检查您的关卡得分。在这种情况下,您需要检查级别并应用面板。