【发布时间】:2019-06-20 06:24:47
【问题描述】:
我正在尝试在 Windows 窗体应用程序上创建一个游戏,以使用非常简单的规则进行练习。创建一个随机混乱的字母,用户尝试在时间用完之前将其输入。当我比较这两个列表时,我遇到了一个问题。它总是触发我的 GameOver bool,即使我确定我输入的是相同的。
public static void CheckGameOver()
{
if (code != Player.inputList)
{
GameOver = true;
}
}
private void button1_Click(object sender, EventArgs e)
{
timeLeft.Stop();
Player.inputList = userText.Text.ToList();
Game.CheckGameOver();
if (Game.GameOver == true)
{
this.Close();
GameOverByInput gameOverByInput = new GameOverByInput();
gameOverByInput.Show();
}
else if (Game.GameOver == false && Game.Level < 16)
{
this.Close();
Game.WinRound();
InbetweenLevels inbetweenLevels = new InbetweenLevels();
inbetweenLevels.Show();
}
else
{
this.Hide();
}
}
我认为我对Player.inputList = userText.Text.ToList(); 的理解可能存在缺陷,这就是导致问题的原因。如果需要更多信息,我会提供。
【问题讨论】:
-
一个minimal reproducible example(包括如何声明和分配
code)会很棒。 -
@TheGeneral 我这么认为?抱歉,我对编程还是很陌生。当我通过将 Player.inputList 打印到标签框来检查它时,它确实显示了用户输入的内容。
-
何时何地分配了代码,传递了哪些值?