我已经使用光子统一设置了一个多人游戏。我有一间等候室,有玩家加入,当有足够的玩家时,游戏就会开始。我试图实例化处于不同位置的玩家,但是由于每个人都在同一时间开始游戏,因此我遇到了问题。
if (spawnPoints[0])
{
PhotonNetwork.Instantiate(Path.Combine("PhotonPrefabs", "S"), spawnPoints[0].position, Quaternion.identity, 0);
PhotonNetwork.Destroy(spawnPoints[0].gameObject);
}
else if (spawnPoints[1])
{
PhotonNetwork.Instantiate(Path.Combine("PhotonPrefabs", "S"), spawnPoints[1].position, Quaternion.identity, 0);
PhotonNetwork.Destroy(spawnPoints[0].gameObject);
}
目前,我正在检查生成点是否存在,如果存在,它将销毁它并实例化播放器,当我将播放器单独加入时,效果很好,但是现在他们将它们连接在一起,它无法识别它立即被摧毁并实例化在相同的位置。
我还尝试在玩家加入房间时设置玩家编号,并使用playerprefs设置它并检查游戏何时开始,这也可行,除非玩家离开并再次加入,然后他们将被分配与某人相同的编号房间里其他的。
if (playerCount == 1)
{
PlayerPrefs.SetInt("playernumber", 1);
}
else if (playerCount == 2)
{
PlayerPrefs.SetInt("playernumber", 2);
else if (playerCount == 3)
{
PlayerPrefs.SetInt("playernumber", 3);
}
有人知道我可以在同一确切时间加入游戏时在4个不同位置实例化4位玩家的方法吗?
感谢您的帮助。