我正在尝试做的简短消除: 我正在Unity中开发一个项目。在第一个场景中,我有一个带有8个输入字段的UI画布,供用户输入最多8个名字。当用户完成他/她想要的名字的输入时,他/她按下“完成”按钮,并且所有名字按正确的顺序添加到列表中,并加载新的场景。然后游戏开始,游戏按照慢速顺序遍历列表,并将任务交给谁来完成。加载新场景后,变量值被删除(C#)(Unity)
问题: 名称已正确添加到列表中。但是当场景改变时,列表会自行清空,并且所有的字符串变量都被删除。我无法弄清楚为什么。
public string namePlayer1, namePlayer2, namePlayer3;
public bool player1IsPlaying, player2IsPlaying, player3IsPlaying = false;
List<string> playerList;
public void getInput1(string player1Name)
{
if (player1Name == "")
{
player1IsPlaying = false;
}
else
{
namePlayer1 = player1Name;
player1IsPlaying = true;
}
}
该代码是通过一个“上端编辑”事件中,当用户在UI输入字段的名称已完成打字执行。当用户名称已键入他/她想要的,他/她按下“完成”按钮,然后执行该代码:
public void PutNamesInList()
{
if (player1IsPlaying)
{
playerList.Add(namePlayer1);
}
if (player2IsPlaying)
{
playerList.Add(namePlayer2);
}
if (player3IsPlaying)
{
playerList.Add(namePlayer3);
}
startGame();
}
现在,当加载新的场景,所有的变量都是空的。
任何帮助表示赞赏。