如何将数字从场景1导入到场景2?

时间:2019-04-23 13:20:19

标签: c# unity3d

如何从另一个场景导入号码?例如:

  

scene1脚本

if(...) {
   a = 1;
} else {
   a = 0;
}

如何将a导入下一个场景?

2 个答案:

答案 0 :(得分:0)

您可以通过将a用作静态变量来执行此操作。它将保留该值。

public static int a;

答案 1 :(得分:0)

我这样做的方法是使场景加载异步,并将值通过代码传递给应该在下一个场景中接收的对象:

var valueToPass = 2;
var asyncOp = SceneManager.LoadSceneAsync("otherScene");
asyncOp.OnCompleted += () => 
{
    // this code runs once the second scene is loaded
    FindObjectOfType<SomeOtherObject>().PropertyToFill = valueToPass;
}

我从头顶上写了代码,它可能不会编译(手头没有Unity来测试它),但这是一般的想法。