为什么if执行完,还会执行else
if (Rule.Result(m,n,arrchessboard) < 6)
{
MessageBox.Show("if "+Rule.Result(m, n, arrchessboard).ToString());
switch(Rule.Result(m,n,arrchessboard))
{
case 1:
MessageBox.Show("黑棋双三禁手失败,请重新开始!");
break;
case 2:
MessageBox.Show("黑棋双四禁手失败,请重新开始!");
break;
case 3:
MessageBox.Show("黑棋长连禁手失败,请重新开始!");
break;
case 4:
if (stoneflag)
{
MessageBox.Show("黑棋胜利,请重新开始!");
}
else
{
MessageBox.Show("白棋胜利,请重新开始!");
}
break;
case 5:
MessageBox.Show("平局,请重新开始!");
break;
}
//重新开始!
int a = Rule.Result(m, n, arrchessboard);
Start();
//MessageBox.Show("if结束:"+Rule.Result(m,n,arrchessboard).ToString());
return;
}
else
{
//交换当前棋子颜色
stoneflag = !stoneflag;
//MessageBox.Show("下一步:"+stoneflag + " ");
}
//测试
MessageBox.Show(Rule.Result(m,n,arrchessboard).ToString());