我最终试图展示活跃的玩家,但我无法设置文本框的值。
我的理解是,一旦玩家加入,我需要使用同步变量来显示每个客户端上的所有玩家名称。所以开始,我正在尝试这个......
[SyncVar(hook = "OnPlayerName")]
public string name;
void OnPlayerName(string newPlayerName)
{
playerlist.text = name;
}
public override void OnStartClient()
{
name = "terrance";
}
当我运行它时,文本框是空的。如果我设置没有同步变量的文本,它可以工作。当然,如果我在没有同步变量的情况下进行更改,则只有本地客户端才能看到更改。
解决方案:参数newPlayerName需要与变量名匹配,所以本例中为“name”...
void OnPlayerName(string name)