1 / 8
文档名称:

俄罗斯方块思路.doc

格式:doc   页数:8页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

俄罗斯方块思路.doc

上传人:yzhfg888 2016/6/30 文件大小:0 KB

下载得到文件列表

俄罗斯方块思路.doc

相关文档

文档介绍

文档介绍:以下是我过去做俄罗斯方块的全部思路,虽说每种语言实现的方式不一样,但是制作的思路是大体一样的俄罗斯方块的思路界面的搭建:游戏区域 panel 控件下一个方块的提示显示区域: panel 控件其他控件有 button,label,textBox 等等游戏实现的主要步骤: 方块的动态生成方块的移动方块的变化当每一行填满的时候方块的清除清除后方块的排列方块动态生成的思路以及运用的知识点: PictureBox p=new PictureBox();// 动态生成方块 =20;// 设置方块的属性,对于其他方块必须的属性根据个人要求设置 =20; 不同方块的生成:由小方块拼接而成方块的移动: 当方块的下一个移动区域为空的时候,可以容许方块向下移动, 如果条件不成立,就停止方块移动注意:没个方块的向下移动的情况都不相同,只需要根据每个方块的向下移动的可行区域进行判断,如果方块可以往下移动,就容许移动。方块的左右移动判断方块最的左边和右边的方块的坐标+左右移动的位置(像素) y移动条件:如果移动的区域为空的时候,就移动方块,否则不移动方块注意:左右移动的最大区域不可以超过游戏区域,可以根据不同的判断来限定方块越界的问题方块的直接向下移动: 只需要加快方块的移动速度就可以达到这个效果方块的变化两种长方形的变化条件判断区域:变化范围=长方形的长*长方形的长的区域如果变化范围条件都为空的时候,就变化其它方块的变化条件: 主要思路:判断要变化方块,变化后的区域是否为空, 并且方块变化区域范围是否成立注意:方块变化时的条件,不要忘记如果方块已经停止移动的时候,方块就不再容许变化判断方块如何为填满: 可以根据不同的方法来限定:只需要判断当 Y坐标一行都为方块的时候, 说明这一行方块已经填满,那么就可以清除这一行方块清除后的效果: 清除这一行以上的方块的位置都需要往下移动一行, 根据消除行数来判断向下移动的位置建议:可以将每一个小方块保存在 List<> 集合中, 清除时候可以根据填满一行的下标和对象进行删除: 对于游戏等级和游戏加分制度可以根据不同的需求来进行设置, 最后希望这个方案能给你带来思路,能给你带来帮助,祝愿能早日完成! 个人代码提供以及实现步骤: The First Point 运用二维数组定义整个游戏界面,定义数组 Int[,] arr=new int[21,12]; 界面赋值 For(int i=0;i<22;i++) { For(int j=0;j<12;j++) { If( i==20 || j==0 || j==11) Arr[i,j]=-2;// 代表障碍 Else Arr[i,j]=-1;// 代表空格} } ■□□□□□□□□■■□□□□□□□□■■□□□□□□□□■■□□□□□□□□■■□□□□□□□□■■□□□□□□□□■■□□□□□□□□■■□□□□□□□□■■□□□□□□□□■■■■■■■■■■■地图大小为 200 * 400 数组赋值后,值为-1的地方相对于地图界面的空白区域 The Second Point //动态生成方块( ■■■■) //定义方块集合 list<PictureBox> ls=new list<PictureBox>(); PictureBox one =new pictureBox(