1

真的很简单的问题

我如何让这个循环显示所有玩家,因为它只显示我的玩家。如您所见,我尝试开始新行。

当我除了播放器列表之外执行相同的语句时,我使用 otherlist 它返回另一个播放器,所以为什么播放器列表不显示每个人:S

void openCloseScore()
{
    if (Input.GetKey (KeyCode.Tab)) 
    {
        ScoreBoard.SetActive (true);
        foreach(PhotonPlayer player in PhotonNetwork.playerList) 
        {
            ScoreboardTxt.text = "\r\nPlayerName:  " + player.ToString();
        }
    } 
    else 
    {
        ScoreBoard.SetActive(false);
    }
}
4

2 回答 2

3

可能您应该使用+=来连接所有玩家的数据。

ScoreboardTxt.text += "\r\nPlayerName:  " + player.ToString();

没有+= ScoreboardTxt.text将只包含有关最后一个玩家的数据。

于 2016-02-14T16:05:18.707 回答
0

你只显示最后一个玩家,而不是你的。您应该添加到 Text 属性,而不是替换它。

void openCloseScore(){
  if (Input.GetKey (KeyCode.Tab)) {
      ScoreBoard.SetActive (true);
      foreach(PhotonPlayer player in PhotonNetwork.playerList) {
          //  ... change next line ...
          ScoreboardTxt.text += "\r\nPlayerName:  " + player.ToString(); // <------- change = to += in this line
    }
  } else {
    ScoreBoard.SetActive (false);
  }
}
于 2016-02-14T16:06:22.107 回答