【发布时间】:2019-04-23 13:20:18
【问题描述】:
如何从另一个场景导入号码?例如:
场景1脚本
if(...) {
a = 1;
} else {
a = 0;
}
如何将a导入下一个场景?
【问题讨论】:
如何从另一个场景导入号码?例如:
场景1脚本
if(...) {
a = 1;
} else {
a = 0;
}
如何将a导入下一个场景?
【问题讨论】:
我这样做的方法是使场景加载异步,并通过代码将值传递给应该在下一个场景中接收它的对象:
var valueToPass = 2;
var asyncOp = SceneManager.LoadSceneAsync("otherScene");
asyncOp.OnCompleted += () =>
{
// this code runs once the second scene is loaded
FindObjectOfType<SomeOtherObject>().PropertyToFill = valueToPass;
}
我在脑海中写下了代码,它可能无法编译(手头没有 Unity 来测试它)但这是一般的想法。
【讨论】:
您可以通过使用 a 作为静态变量来做到这一点。它会保留价值。
public static int a;
【讨论】: