消除特效之灭绝特效,所谓灭绝特效就是可以任意指定一种元素,把盘中所有这种元素都消除掉。看方法代码:
private void 灭绝特效(int 行值, int 列值, int 数据)
{
while (行值 < 玩无限消乐.RowCount)
{
if ((int)玩无限消乐.Rows[行值].Cells[列值].Tag == 数据)
{
玩无限消乐.Rows[行值].Cells[列值].Value = new Bitmap(24, 24);
玩无限消乐.Rows[行值].Cells[列值].Tag = 0;
特效递计(0, true);
}
if (++列值 >= 玩无限消乐.ColumnCount) { ++行值; 列值 = 0; }
特效值组[2] = 行值; 特效值组[3] = 列值; 特效值组[4] = 数据;
if (列值 % 11 == 0) return;
}
特效递计(特效值组[1], false);
特效值组[1] = 0;
int 列 = 0;
while (列 < 玩无限消乐.ColumnCount)
{ 待填队列.Add(new int[] { 玩无限消乐.RowCount - 1, 列 }); ++列; }
定列移动();
}