我一直试图创造一个奥赛罗游戏,但我似乎无法检查一个不存在的案例(检查黑色令牌,如果它不在那里,什么都不做)
private void CaseClick(object sender, MouseEventArgs e)
{
Case allCases = (Case)sender;
int a = 1;
if (allCases.ColorToken == Case.Token.Nothing)
{
Case caseToModify;
if (_turnIsBlack)
{
//Verify tokens from top to bottom
if (Cases[allCases.Position.X, allCases.Position.Y + a].ColorToken == Case.Token.White)
{
while (Cases[allCases.Position.X, allCases.Position.Y + a].ColorToken == Case.Token.White)
{
caseToModify = Cases[allCases.Position.X, allCases.Position.Y + a];
allCases.ColorToken = Case.Token.Black;
caseToModify.ColorToken = Case.Token.Black;
a++;
caseToModify.Refresh();
allCases.Refresh();
_turnIsBlack = false;
}
}
}
}
}
我只是想知道是否有办法检查那里没有黑色标记。不需要为这个特定的代码,只是检查某些东西的例子,如果它不存在,什么也不做
该位置分配了坐标,如(0,0)(1,1),游戏为8x8,每个案例都分配了一个坐标
答案 0 :(得分:0)
这样完全没问题。这些陈述非常普遍,虽然有时你可能会写一些奇特的东西,但我的建议是保持简单,除非表现非常重要。