unity3d 无法在Unity中使用Fish Networking重新加载当前活动场景?

bwitn5fc  于 2022-11-16  发布在  其他
关注(0)|答案(2)|浏览(478)

我尝试重新加载当前活动的场景,这样玩家就可以从头开始游戏了,但是什么都没有发生!我使用文档中的代码,它在加载其他场景时可以正常工作,但是正如我所说的,当尝试加载服务器和所有客户端上当前活动的场景时,什么都没有发生!下面是代码:

[ServerRpc(RequireOwnership = false)]
[Server]
public void ReloadScene()
{
    SceneLoadData sld = new SceneLoadData("MainScene");
    sld.MovedNetworkObjects = new NetworkObject[] { _players[0].NetworkObject };
    sld.ReplaceScenes = ReplaceOption.All;
    NetworkManager.SceneManager.LoadGlobalScenes(sld);
}
k75qkfdt

k75qkfdt1#

好的,基于渔网的创建者所说的重新加载当前活动场景在渔网中还不可能,所以解决办法是加载和清空场景,然后再次加载第一个场景。记住在服务器上运行此代码,而不是在客户端上!

public void ReloadScene()
{
    SceneLoadData sld = new SceneLoadData("EmptyScene");
    sld.ReplaceScenes = ReplaceOption.All;
    NetworkManager.SceneManager.LoadGlobalScenes(sld);

    sld = new SceneLoadData("MainScene");
    sld.ReplaceScenes = ReplaceOption.All;
    NetworkManager.SceneManager.LoadGlobalScenes(sld);
}
pkwftd7m

pkwftd7m2#

我想评论一下,但显然不够代表。我是渔网的创造者,我想说伊曼·希拉里是正确的。在未来的某个时候会有一个重新加载选项;但我还没确定预计到达时间。

相关问题