在Unity3D中加载下一个场景



我是unity/scripting的新手。基本上,我想做的是使下一个级别(构建设置)加载碰撞。我创建了一个空对象并附加了一个盒子碰撞器。它可以正确加载指定的场景,但我想让它只加载下一个场景,这样我就不必创建100多个脚本了。

这是我一直在做的:

#pragma strict
function OnCollisionEnter(Collision : Collision)
{
if(Collision.collider.tag == "Player")
{
    Application.LoadLevel("Easy17");
}
}

这是我到目前为止的进展:

#pragma strict
public var lvl = Application.LoadLevel; 
function OnCollisionEnter(Collision : Collision)
{
if(Collision.collider.tag == "Player")
{
    Application.LoadLevel(lvl + 1);
}
}

是的,有一个简单的方法。由于您已经相应地设置了构建设置,因此您可以执行以下操作:

Application.LoadLevel(Application.loadedLevel + 1);

,因为Application.loadedLevel返回实际加载的电平。

注意处理关于最终关卡的特殊情况!

UPDATE:我刚刚注意到你的逻辑是相同的。但似乎你写的LoadLevel而不是LoadedLevel,在lvl分配(LoadLevel()是函数,LoadedLevel是属性!)。

相关内容

  • 没有找到相关文章