wall.cs

来自「一个可以在智能手机上运行,完全基于CF的俄罗斯方块游戏」· CS 代码 · 共 45 行

CS
45
字号
using System;

namespace FiyaSoft.DiamondGame
{
	/// <summary>
	/// 处理游戏逻辑,true为空
	/// </summary>
	public class Wall
	{
		public bool [,] Cakes=new bool[14,20];
		public Wall()
		{
			for(int i=0;i<14;i++)
				for(int j=0;j<20;j++)
					Cakes[i,j]=true;
			for(int i=0;i<14;i++)
			{
				Cakes[i,0]=false;
				Cakes[i,19]=false;
			}
			for(int j=0;j<20;j++)
			{
				Cakes[0,j]=false;
				Cakes[13,j]=false;
			}
		}
		
		//检查是否可以消行,可以返回true
		public bool CheckRoll(int j)  
		{
			for(int i=12;i>0;i--)
			{
				if(Cakes[i,j]==true)
					return false;
			}

			//消除一行的逻辑修改
			for(int line=j;line>1;line--)
				for(int i=1;i<13;i++)
					Cakes[i,line]=Cakes[i,line-1];
			return true;
		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?