我需要在多人游戏中创建某种开始按钮的帮助。基本上,当我们等待所有人登录时,玩家可以在地图上移动。一旦每个人都准备好了,同时还是服务器的播放器可以单击“开始”按钮,该按钮应重置所有播放器的位置。此按钮链接到此脚本:
[Server]
public void StartGame()
{
GameObject[] guards = GameObject.FindGameObjectsWithTag("Guard");
foreach (GameObject guard in guards)
{
guard.transform.position = guardStartPoint.position;
RpcMoveTo(guardStartPoint.position, guard);
}
GameObject ninja = GameObject.FindGameObjectWithTag("Ninja");
ninja.transform.position = ninjaStartPoint.position;
RpcMoveTo(ninjaStartPoint.position, ninja);
started = true;
}
[ClientRpc]
public void RpcMoveTo(Vector3 position, GameObject player)
{
player.transform.position = position;
}
但这不起作用!而且我是网络方面的新手,因此我仍然对RPC,服务器和命令感到迷茫。目前,它仅在服务器上移动播放器。我应该如何移动所有玩家?