Синтаксис:
Используется csharp
[RPC]
void StartGame()
{
isGameStart = true;
}
void OnGUI()
{
if (Network.isServer && !isGameStart && networkView.isMine)
{
if(GUI.Button(new Rect(240, 160, 80, 25), "Start Game"))
{
networkView.RPC("StartGame", RPCMode.All);
}
}
if (Network.isClient && !isGameStart && networkView.isMine)
{
GUI.Label(new Rect(240, 160, 80, 25), "Waiting for players...");
}
}
void StartGame()
{
isGameStart = true;
}
void OnGUI()
{
if (Network.isServer && !isGameStart && networkView.isMine)
{
if(GUI.Button(new Rect(240, 160, 80, 25), "Start Game"))
{
networkView.RPC("StartGame", RPCMode.All);
}
}
if (Network.isClient && !isGameStart && networkView.isMine)
{
GUI.Label(new Rect(240, 160, 80, 25), "Waiting for players...");
}
}
При этом у игрока сервера игра начинается, а у игроков-клиентов нет, будто не происходит вызов функции StartGame. Клиенты все в этот момент подключены, игроки видны друг у друга на экранах, но переменная isGameStart у клиентов не становится true. В чём может быть проблема?