【发布时间】:2010-09-16 08:34:19
【问题描述】:
我设计了一个简单的纸牌游戏,其中显示了两张牌,用户必须下注他们是否会得到一张介于显示的两张牌之间的牌。如果用户不想下注,他们只需再次发牌。用户以 100 英镑开始。
该游戏在大多数方面运行良好,但有一个巨大的缺陷。用户可以下注超过他们的余额。因此,如果用户有 100 英镑,他们下注 105 英镑,他们赢了,他们的余额将有 205 英镑。这显然是糟糕!如果他们有 100 英镑,他们下注 105 英镑并且他们输了,他们的余额保持不变。这也很糟糕。
所以我认为一个简单的 if 语句可以解决这个问题:
if (wager > balance)
{
winLoseLabel.Text = "You can't bet more than you have!";
}
switch (betResult)
{
case TIE:
winloseLabel.Text = "Tie. You still lose. HA!";
myRules.Balance -= wager;
break;
case PLAYERWINS:
winloseLabel.Text = "You win. Woop-de-do..";
myRules.Balance += wager;
break;
case DEALERWINS:
winloseLabel.Text = "You lose. Get over it.";
myRules.Balance -= wager;
break;
}
为什么这不起作用?我很确定这很简单,但我对 C# 还是很陌生,所以放轻松!
【问题讨论】:
标签: c# if-statement