光子统一 foreach 循环

photon unity foreach loop

真的很简单的问题

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

当我做同样的声明时,除了玩家列表我使用其他列表 returns 另一个玩家所以为什么玩家列表不显示每个人 :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);
    }
}

也许你应该使用 += 来连接所有玩家的数据。

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

没有 += ScoreboardTxt.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);
  }
}