俄罗斯方块课程设计_第1页
俄罗斯方块课程设计_第2页
俄罗斯方块课程设计_第3页
俄罗斯方块课程设计_第4页
俄罗斯方块课程设计_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程设计报告标题介绍:“俄罗斯方块”是一款非常经典和流行的视频游戏机和手持游戏机。玩家不仅可以感受到游戏中的乐趣,还可以提供一个展示他们高超技能的地方。这个游戏有很多变体,但是一般的玩法是一样的。这个主题需要编译电脑版的俄罗斯方块。标题要求:当“开始”键被按下时,游戏开始,在此期间玩家可以选择“暂停”和“继续”。积木可以在一定范围内上下左右移动,并且可以根据玩家的指令旋转方向,以便更好的组合积木。当每一行都用正方形填充时,一行将被自动擦除,当多行都用正方形填充时,所有行都将被擦除。删除的行越多,分数越高。一旦盒子到达顶部,游戏自动结束。此外,玩家可以根据自己的级别选择游戏的难度。难度越高,速度

2、越快;难度越低,速度越慢。解决方案:这个主题涉及很多VB知识使用的模块:数组、变量命名、菜单编辑器、绘图、键盘事件处理、定时器控制、多模块编程、文本文件读写等。使用的主要控件有:命令控件、图像控件、图片控件、标签控件、定时器控件、文本控件、windows media player控件等主要实现的功能:1.它可以灵活地控制图形框中块的移动。2.这个正方形在游戏中可以自由旋转。3.当一行中的方块已满时,该行中的方块将被自动消除,然后上面的所有方块将被下移,这可以支持连续消除。4.在游戏开始之前,你可以选择游戏的速度和游戏的级别。游戏的速度是积木的下落速度,游戏的级别是在最初的游戏中,在基层随机生成

3、一定数量的不规则积木。生成的行数由您决定,每行至少生成五个不规则块,这增加了游戏的难度。对于游戏大师来说,这无疑不是一个新的挑战。5.游戏的分数支持积分,并且根据公式:得分=原始得分100 *(同时淘汰2行-1)这样,你同时删除的行数越多,你的分数就会越高。当游戏分数达到一定水平时,可以自动升级。这种升级是指速度升级主要步骤如下:(1)游戏界面的设计。(2)俄罗斯方块的形状。(3)俄罗斯方块的旋转。(4)俄罗斯方块的运动(包括左、右、下)。(5)俄罗斯方块的自动擦除功能。(6)游戏级别的自由选择。(7)游戏速度的自由选择。(8)游戏分数的计算。(9)游戏菜单选项的设计和功能实现。分析与总体设计

4、:正方形旋转时有一个公式。当然,我们必须首先判断它是否符合轮换的要求。上面是一个长条从水平到垂直的旋转。我们围绕它形状的第三个小正方形n(3)旋转。这样,在运动开始时,长条必须旋转到至少第三行,然后才能从水平变为垂直。游戏区域图形框中第三行的第一行。同样,矩形块落到底部的时间也有限制。如果长条落在最后一行,它不会从水平变为垂直。如何实现方块的移动和自动消除整排方块:我们的俄罗斯方块游戏主要是利用命令控制的可见属性来完成效果。事实上,在游戏区域中,图形框可以被视为由许多命令小方块组成,而方块移动的过程就是在建模中显示或隐藏方块。就像现在的霓虹效果一样,时钟控制控制改变可见属性的速度、前一层的消失

5、和下一层的显示,这样就可以从视觉效果中看到方块的下落运动效果。在箱子下落的过程中,自动判断每行箱子的可见属性。如果全部为真,则该行小框的所有可见属性都将更改为假。向下移动小框,使用for语句进行循环判断,并为所有这样的行更改小框的可见属性。连续消线:当多行同时出现时,使用递归调用实现连续消线。游戏速度和游戏级别的自由选择游戏速度选择:改变时钟控制的频率。我们在菜单中增加了速度选择功能和测试功能,这样可以隐藏窗口中的方框形状进行查看,增加了玩家的难度。如果您不愿意接受测试,您可以单击显示器并将其恢复到原始状态。游戏级别的自由选择是让用户在游戏开始时选择游戏区域底部有一定行数的随机框,这也增加了玩

6、家的难度游戏分数的计算和游戏菜单的编辑:游戏分数的计算主要取决于被删除的行数。当然,同时淘汰的行数每次都不一样,每一行的分数也不一样。如果每次淘汰的行数为1,则最终得分为100分。如果同时淘汰2条线路,最终得分为300分,同时淘汰3条线路,得分为700分,同时淘汰4条线路,得分为1500分。效果非常成问题:游戏本身可以运行,可以带来游戏的轻松和愉悦,但是界面粗糙,缺乏美感,游戏菜单编辑器需要改进经验:这次编辑俄罗斯方块的VB程序,我们可以更好的了解这个游戏的设计思想和运行程序,从中学习到很多VB知识,比如如何设置菜单编辑器,如何设计和制作两个或者更多的表单,以及对一些控件和数组的应用有更深的理

7、解。VB程序:(1)定义生成块数组和删除行数组;私有n(3),m(3)为整数私人情况,情况2,行号,t为整数为了生成正方形,定义使每个小正方形可见和不可见的过程:私有子隐藏方(作为整数)选择案例a案例0cmdfang(n(0)。可见=假cmdfang(n(1)。可见=假cmdfang(n(2)。可见=假cmdfang(n(3)。可见=假案例1cmdfangnext(m(0)。可见=假cmdfangnext(m(1)。可见=假cmdfangnext(m(2)。可见=假cmdfangnext(m(3)。可见=假结束选择末端接头私有子显示方(作为整数)选择案例案例0cmdfang(n(0)。可见=真

8、cmdfang(n(1)。可见=真cmdfang(n(2)。可见=真cmdfang(n(3)。可见=真案例1cmdfangnext(m(0)。可见=真cmdfangnext(m(1)。可见=真cmdfangnext(m(2)。可见=真cmdfangnext(m(3)。可见=真结束选择末端接头(3)实现消除一行(实现连续消除行,并使用递归):私有子clearline()对于i=190至10,步骤10如果cmdfang(i)。可见=真和ucmdfang(i 1)。可见=真和ucmdfang(i 2)。可见=真和ucmd Fang(I)3 .可见=真和ucmd Fang(I)4 .可见=真和ucmd

9、 Fang(I)5 .可见=真和ucmd Fang(I)6 .可见=真和ucmd Fang(I)7 .可见=真和ucmd Fang(I 8)4 .可见=真和ucmd Fang(I)9 .可见=真对于j=i 4至i步骤-1t=1(j)10 .可见=假cmdfang(2 * i 9 - j ).可见=假对于k=1至4000DoEvents然后t=0然后linenum=linenum 1对于j=i - 1至0步骤1If cmdfang(j).可见=真(j)10 .可见=假cmdfang(j 10 ).可见=真结束如果然后clearline结束如果然后末端接头定义方块能否下降,左移和右移:私有函数可降

10、级()为布尔值如果n(0) 190和n(1) 190和n(2) 190和n(3) 190,那么如果cmdfang(n(0) 10).可见=假且ucmdfang(n(1) 10 ).可见=假且ucmdfang(n(2) 10 ).可见=假且ucmdfang(n(3) 10 ).可见=假那么向下=真其他向下=假结束如果其他向下=假结束如果结束功能私有函数左()为布尔值如果n(0) Mod 10 0和n(1) Mod 10 0和n(2) Mod 10 0和n(3) Mod 10 0,则如果cmdfang(n(0) - 1).可见=假且ucmdfang(n(1) - 1).可见=假且ucmdfang(n(2) - 1).可见=假

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论