我最终试图向活跃的玩家展示,但是在设置文本框的值时遇到了麻烦。
我的理解是,一旦玩家加入,我需要使用syncvars在每个客户端上显示所有玩家名称。首先,我正在尝试...
[SyncVar(hook = "OnPlayerName")]
public string name;
void OnPlayerName(string newPlayerName)
{
playerlist.text = name;
}
public override void OnStartClient()
{
name = "terrance";
}
运行此命令时,文本框为空。如果我设置的文本没有syncvars,它将起作用。当然,只有在没有syncvars的情况下,更改才对本地客户端可见。
解析度:
参数newPlayerName需要与变量名称匹配,因此在这种情况下,“名称” ...
void OnPlayerName(string name)
最佳答案
您正在将其挂接到不存在的功能“ On PlayName”上
应该
[SyncVar(hook = "OnPlayerName")]
public string name;