VB设计俄罗斯方块论文_第1页
VB设计俄罗斯方块论文_第2页
VB设计俄罗斯方块论文_第3页
VB设计俄罗斯方块论文_第4页
VB设计俄罗斯方块论文_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、塔里木大学信息工程学院课程设计第 1 页前前 言言visual basic 继承了 basic 语言易学易用的特点,特别适合于初学者学习 windows 系统编程。随着 21 世纪信息社会的到来,计算机在人们的工作和生活中的深入,要求我们越来越多地与计算机打交道,为了使用户在繁忙的日程工作中得到放松,于是出现了各种各样的休闲软件,如聊天工具,游戏等等。于是我们小组着手设计开始一个这样的游戏软件。通过这学期来 Visual Basic 的学习,我初步掌握了 Visual Basic 语言的最基本的知识,于是在化希耀张兵等老师的指导下动手用 Visual Basic 编写俄罗斯方块游戏。无可争议,

2、 俄罗斯方块是有史以来最伟大的游戏之一。它是永恒的娱乐经典,但它实际上又和那些传统的经典娱乐方式不同,因为它的本质是电子化的,所以它的确属于现代产物。 俄罗斯方块举世闻名的游戏性,在该游戏新鲜出炉时就显得非常直观。某些与坠落的玩具碎片和它们的形状有关的东西,使得哪怕新手也会很自然地企图把它们排列起来,并加以适当组合,就好似俄罗斯方块触动了我们某些内在的感官,使得哪怕是我们当中最杂乱无章的人也要把事情整理妥当。 在曾经发布过的所有游戏中, 俄罗斯方块还被认为是仅有的一个能够真正吸引广泛人群的作品。某些批评家也许会声称, 俄罗斯方块要比过去二十年间出现的任何东西都要浪费人们的时间。至于我们,则要欣

3、然提名它为 GameSpot 评选出的历史上最伟大游戏之一。为了怀念经典,也为了能够给大多的计算机用户在工作之余找到一个休闲、娱乐的一个方式,我们小组开始着手用 VB 语言开发一个经典的俄罗斯方块游戏。工程概况工程概况1.1 项目名称俄罗斯方块游戏1.2 设计平台VB 全称 Visual Basic,它是以 Basic 语言作为其基本语言的一种可视化编程工具。Vb 是 microsoft 公司于 1991 年退出的 windows 应用程序开发工具 visual 意思是“可视化的” 。在它刚推出来时,自身还存在一些缺陷,功能也相对少一些。但是经过多年的开发研究。最近 microsoft 公司又

4、推出了 VB6.0 版本VB6.0 运行环境:硬件,要求 486 以上的处理器、16MB 以上内存,50MB 以上的硬盘,cd-rom 驱动器,鼠标。软件:要求 windows 95 以上版本。1.3 程序设计思想游戏是用来给大家娱乐的,所以要能在使用的过程中给大家带来快乐,消除大家的疲劳,所以我们在游戏中添加了漂亮的场景和动听的音乐,设置了过关升级的功能,激发大家的娱乐激情。从游戏的基本玩法出发,主要就是俄罗斯方块的形状和旋转,我们在设计中在一个图片框中构造了一个 4*4 的网状小块,由这些小块组合成新的形状,每四个小块连接在一起就可以构造出一种造型,因此我们总共设计了 7 中造型,每种造型

5、又可以通过旋转而变化出 2 到 4 种形状,利用随机函数在一个预览窗体中提前展示形状供用户参考,然后将展示塔里木大学信息工程学院课程设计第 2 页的形状复制到游戏窗体中进行摆放,在游戏窗体中用户就可以使用键盘的方向键来控制方块的运动,然后利用递归语句对每一行进行判断,如果有某行的方块是满的,则消除这行的方块,并且使上面的方块自由下落,其中,方块向下的速度是有时钟控件控制的,在游戏中,用户也可以使用向下键加快下落速度,定义一个变量,对消除的函数进行记录,最后就可以得出用户的分数,用 if 语句对分数判断,达到一定的积分就可以升级到下一个档次。俄罗斯方块游戏设计的主要步骤为以下 10 个方面:(1

6、)游戏界面的设计。(2)俄罗斯方块的造型。(3)俄罗斯方块的旋转。(4)俄罗斯方块的运动情况(包括向左,向右和向下) 。(5)俄罗斯方块的自动消行功能。(6)游戏级别的自由选择。(7)游戏速度的自由选择。(8)游戏得分的计算。(9)游戏菜单选项的设计及功能实现。(10)游戏的背景音乐。1.4 运用的控件和主要对象我们在设计过程中主要用到的控件有:command 控件,image 控件,picture 控件,label 控件,timer 控件,text 控件,windows media player 控件等等。1.5 主要实现的功能我们开发的俄罗斯方块游戏,主要实现了以下几种功能:1.可以灵活控

7、制方块在图形框中运动。2.游戏过程中方块可以自由旋转。3.当某一行的方块排列满时,将自动将这一行方块消除,然后将上面所有方块向下移动,可以支持连续消行。4.游戏前可以选择游戏的速度和游戏的等级,游戏速度既为方块下落速度,游戏等级为初始游戏时在基层随机生成一定行数的无规律方块,生成的行数由你来选择,每行至少产生 5 个以上的无规律方块,这样增加了游戏难度,对于游戏高手来说,无疑不是一个新的挑战。5.游戏的得分支持积分,并且按照公式:得分 = 原来分数+ 100 * (2 同时消除的行数-1) 这样,你同一时间消除的行数越多,你的得分也就越高,当游戏积分到了一定时可以自动升级,这个升级指速度升级。

8、 6.游戏中提供了一个漂亮的场景和动听的音乐,给你带来无限激情。1.6 开发人员与分工组长李虎同学所做工作如下: (1)俄罗斯方块的旋转。 (2)俄罗斯方块的运动情况。 (3)俄罗斯方块的自动消行功能。 (4)游戏得分的计算。塔里木大学信息工程学院课程设计第 3 页 (5)游戏菜单选项的设计及功能实现。副组长王志伟同学所做工作如下: (1)游戏界面的设计。 (2)俄罗斯方块的造型。 (3)游戏级别的自由选择。 (4)游戏速度的自由选择。 (5)游戏的背景音乐。 正文正文2.1 游戏设计的具体实现在我们两个人共同努力下,此次设计,终于能够圆满完成。由于时间的紧促,在设计中,也许会有一些考虑不周之

9、处,但其功能已经能够满足大多用户的需求,相信假以时日,一定能做出一个更经典,更完美的俄罗斯方块游戏,下面我们将对每一步的具体如何实现展示给大家。2.1.1 游戏界面的设计和背景音乐及特效的实现俄罗斯方块游戏主要由两个界面构成,登陆界面和开始游戏界面。游戏的背景音乐是由一段代码调用系统播放器 Windows Player 播放背景音乐,由于本次设计主要是针对游戏如何设计的,所以在这里就不对播放背景音乐的功能做介绍了。2.1.2 俄罗斯方块的造型相信朋友们都玩过俄罗斯方块,对这个游戏的玩法和方块形状都比较熟悉。我们这个游戏只选择了最基本的 7 中造型,包括长条型,正方型,正 S 型,反 S 型,正

10、 7 型,反 7型,T 型。如果需要我们可以添加更多的造型。将游戏界面的游戏区图片框分割成 10*20的小块,每个小块放置一个 command 控件,预览区图片框按同样比例分割成 4*4 的小块,同样有 command 控件构成,我们可以把预览区图片框看作是从游戏区图片框中选取的一个部分,游戏区的小方块编号和预览区编号如下图: 012345678990919293949596979899 游戏区编号 预览区编号 利用 Select 将方块的 7 中造型列出,比如长条型的设计,在欲览区中分别有 和 5 四个方块构成两中形态,用数组为: m(0) = 3: m(1)

11、 = 4: m(2) = 5: m(3) = 6: situation2 = 0m(0) = 5: m(1) = 15: m(2) = 25: m(3) = 35: situation2 = 1将它的形状编号为 0 和 1,在后面方便调用,其他的方块造型同样的方法。2.1.3 俄罗斯方块的旋转俄罗斯方块的旋转主要将方块的位置加以变换得到的,例如上述范例,长条型有两中样式,根据小方块的编号变动来实现整个造型的旋转,比如:If n(0) - 18 = 2 And n(3) + 9 = 0.5 Then cmdfang(j).Visible = True Next Next可以根据你选择的难度系数在

12、底层的每一行随机产生超过半数(即 5 个以上)以上的小方块,这样适合喜欢高难度的玩家。2.1.6 游戏得分的计算和游戏菜单的编辑游戏得分的计算主要是根据消除的行数来决定的,当然每一次同时消除的行数不一样,每一行的得分也不一样,如果你每次消除的行数为 1,则最后得分是 100 分,如果同时消除 2 行,则最后得分是 300 分,同时消除 3 行,得分为 700 分,同时消除 4 行,得分为1500 分,这由公式:得分 = 原来分数+ 100 * (2 同时消除的行数-1)。游戏的编辑,读者可以参照下面的功能介绍。2.2 游戏功能的介绍文件 F-开始 F1:开始游戏。 继续 F2:继续游戏。 暂停

13、 F3:暂时停止游戏,点击继续的时候可以继续游戏。 退出 Ctrl+Q:退出游戏。设置-选择游戏级别。 选择游戏速度。考验-显示 F5:显示欲览区方块。 隐藏 F6:隐藏欲览区方块。帮助-操作提示以及版本信息和作者资料。塔里木大学信息工程学院课程设计第 6 页用户界面具体如图: 图登陆界面 图游戏界面 图菜单编辑界面 图游戏帮助界面 有关说明有关说明经过两个多星期的设计和开发,俄罗斯方块游戏已经成功。其功能基本符合用户需求,能够完成游戏的控制,方块的变换以及消层等功能。并提供游戏设置,对于一些技术性比较过硬的玩家,可以调游戏级别、以及游戏速度,使得玩家能够充分的发挥竞技游戏的特色,可以不断的挑

14、战自我,挑战极限。3.1 游戏设计中的不足之处但是由于课程设计时间较短,所以该游戏还有许多不尽如人意的地方,比如方块类型太少,退出游戏不能存储进度等多方面问题。这些都有待进一步改善,我们在游戏中还可塔里木大学信息工程学院课程设计第 7 页以更换背景音乐,以适合不同的玩家,在每通过一关可以给玩家播放一段 flash,吸引玩家去挑战极限,不断提高玩家的兴趣,相信在以后的制作过程中我们将给大家带来一个更新功能更全面的游戏。3.2 VB 与 C 语言之间的不同之处我们这个小游戏也可以用 C 语言来实现,在程序的编程上没有 VB 语言方便实用,C 语言和 VB 语言之间存在很多的共同点,虽然语法方面有点

15、差异,但是在编程思路上完全一样,VB 能够实现很多 C#不能做到的功能,如 When 语句、Optional 参数、局部 Static 变量、对象实例访问静态方法、Handles 绑定事件、On Error 处理异常、Object 直接后期绑定等等。VB 和 C#语言,编译出来的是同样的 CIL,但为什么 VB 支持很多有趣的特性呢。我们一起来探究一下。3.2.1 局部静态变量VB 支持用 Static 关键字声明局部变量,这样在过程结束的时候可以保持变量的数值:Public Sub Test1() StaticStatic i i AsAs IntegerInteger i += 1 实现一

16、个过程调用计数器End Sub我们实现了一个简单的过程计数器。每调用一次 Test,计数器的数值就增加 1。其实还有很多情况我们希望保持变量的数值。而 C#的 static 是不能用在过程内部的。因此要实现过程计数器,我们必须声明一个类级别的变量。这样做明显不如 VB 好。因为无法防止其他过程修改计数器变量。这就和对象封装一个道理,本来应该是一个方法的局部变量,现在我要被迫把它独立出来,显然是不好的设计。那么 VB 是怎么生成局部静态变量的呢?将上述代码返汇编,我们可以清楚地看到在 VB 生成的 CIL 中,i 不是作为局部变量,而是作为类的 Field 出现的: .field private

17、 specialname int32 $STATIC$Test1$2001$i也就是说,i 被改名作为一个类的字段,但被冠以 specialname。在代码中试图访问$STATIC$Test1$2001$i 是不可能的,因为它不是一个有效的标识符。但是在 IL 中,将这个变量加一的代码却与一般的类字段完全一样,是通过 ldfld 加载的。我觉得这个方法十分聪明,把静态变量变成生命周期一样的类字段,但是又由编译器来控制访问的权限,让它成为一个局部变量。同时也解释了 VB 为什么要用两个不同的关键字来声明静态变量Static 和 Shared。由于局部静态变量的实质是类的字段,所以它和真正的局部变

18、量还是有所不同的。比如在多线程条件下,对局部静态变量的访问就和访问字段相同。3.2.2 Handles 和 WithEventsVB 除了可以用 C#那样的方法来处理事件响应以外,还有从 VB5 继承下来的独特的事件处理方式WithEvents。我喜欢称这种事件处理方式为静态的事件处理,书写响应事件的方法时就已经决定该方法响应的是哪一个事件,而 C#则是在代码中绑定事件的。VB 中 WithEvents 静态方法是非常有用的,它可以显著增强代码可读性,同时也让 VB.net 中的事件处理非常方便,不像C#那样离开了窗体设计器就必须手工绑定事件。3.2.3 类型转换运算符在 Visual Bas

19、ic 2005 中将加入一个新的运算符TryCast,相当于 C#的 as 运算符。我一直希望 VB 有这样一个运算符。VB 目前的类型转换运算符主要有 CType 和DirectCast。他们的用法几乎一样。我详细比较了一下这两个运算符,得出以下结论:塔里木大学信息工程学院课程设计第 8 页1.在转换成引用类型时,两者没有什么区别,都是直接调用 castclass 指令,除非重载了类型转换运算符 CType。DirectCast 运算符是不能重载的。2.转换成值类型时,CType 会调用 VB 指定的类型转换函数(如果有的话) ,比如将String 转换为 Int32 时,就会自动调用。3.

20、2.4 默认属性和属性参数在原先的 VB6 里,有一项奇特的功能默认属性。在 VB6 中,对象的名称可以直接表示该对象的默认属性。3.2.5 可选参数和按名传递VB 从 4.0 开始支持“可选参数”这一特性。就是说,函数或子程序的参数有些是可选的,调用的时候可以不输入。其实 VB 从 1.0 开始就有一些函数带有可选参数,只不过到了4.0 才让用户自己开发这样的过程。在 VB4 里,可选参数可以不带默认值,而在 VB 里,如果使用可选参数,则必须带有默认值。在调用的时候,VB 若发现参数被省略,则自动读取.param 部分的默认值,并显式传递给过程。这一部分完全由编译器处理,而且没有任何性能损

21、失,和手工传递所有参数是完全一样的。至于按名传递,VB 会自动调整参数的顺序,其结果与传统方式的传递也没有任何的不同。这说明我们可以放心地使用这项便利。而且带有可选参数的过程拿到 C#中,顶多变成不可选参数,也不会造成什么其他的麻烦。 PS.很多 COM 组件都使用了默认参数,而且有些过程的参数列表非常长,在 VB 里可以轻松地处理它们,而在 C#中经常让开发者传参数传到吐血。致谢致谢在本次课程设计中,我从指导老师化希耀和张兵身上学到了很多东西。老师认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我收益匪浅。他无论在理论上还是在实践中,都给与我很大的帮助,使我得到不少的提高这对于我以后的

22、工作和学习都有一种巨大的帮助,感谢他耐心的辅导。另外,在游戏开发过程中许多同学也给于我们很大的帮助,帮助解决了不少的难点,使得游戏能及时开发完成,在此谢谢各位对此次设计的帮助。参考文献参考文献:1龚沛曾,陆慰民,杨志强.Vsual Basic 程序设计教程.高等教育出版社出版。2刘新民,蔡琼,白糠生.Vsual Basic 6.0 程序设计.清华大学出版社出版。3唐凯军,汤惠莉.VB6 编程 80 例上手.山东电子音像出版社。4卢毅.Vsual Basic 实例教程.科学出版社出版。5赵欣胜,亢慧娟,刘晟宏.Vsual Basic 经典范例 50 讲.科学出版社出版。塔里木大学信息工程学院课程

23、设计第 9 页附件:附件:Private Sub hidefang(a As Integer) 定义使方块不可见的过程 Select Case a Case 0 a0 使游戏区方块不可见 cmdfang(n(0).Visible = False cmdfang(n(1).Visible = False cmdfang(n(2).Visible = False cmdfang(n(3).Visible = False Case 1 a1 使预览区方块不可见 cmdfangnext(m(0).Visible = False cmdfangnext(m(1).Visible = False cmdf

24、angnext(m(2).Visible = False cmdfangnext(m(3).Visible = False End SelectEnd SubPrivate Sub showfang(a As Integer) 定义使方块可见的过程 Select Case a Case 0 a0 使游戏区方块可见 cmdfang(n(0).Visible = True cmdfang(n(1).Visible = True cmdfang(n(2).Visible = True cmdfang(n(3).Visible = True Case 1 a1 使预览区方块不可见 cmdfangnex

25、t(m(0).Visible = True cmdfangnext(m(1).Visible = True cmdfangnext(m(2).Visible = True cmdfangnext(m(3).Visible = True End SelectEnd SubPrivate Sub clearline() 定义消除整行的过程 For i = 190 To 10 Step -10 If cmdfang(i).Visible = True And _ cmdfang(i + 1).Visible = True And _ cmdfang(i + 2).Visible = True And

26、 _ cmdfang(i + 3).Visible = True And _ cmdfang(i + 4).Visible = True And _ cmdfang(i + 5).Visible = True And _ cmdfang(i + 6).Visible = True And _ cmdfang(i + 7).Visible = True And _ cmdfang(i + 8).Visible = True And _塔里木大学信息工程学院课程设计第 10 页 cmdfang(i + 9).Visible = True Then For j = i + 4 To i Step -

27、1 t = 1 cmdfang(j).Visible = False cmdfang(2 * i + 9 - j).Visible = False For k = 1 To 4000 DoEvents Next t = 0 Next linenum = linenum + 1 For j = i - 1 To 0 Step -1 If cmdfang(j).Visible = True Then cmdfang(j).Visible = False cmdfang(j + 10).Visible = True End If Next clearline 为了实现连消数行,这里使用递归调用 En

28、d If NextEnd SubPrivate Function downable() As Boolean 自定义函数,确定方块是否能下降 If n(0) 190 And n(1) 190 And n(2) 190 And n(3) 190 Then If cmdfang(n(0) + 10).Visible = False And _ cmdfang(n(1) + 10).Visible = False And _ cmdfang(n(2) + 10).Visible = False And _ cmdfang(n(3) + 10).Visible = False Then downabl

29、e = True Else: downable = False End If Else: downable = False End IfEnd FunctionPrivate Function leftable() As Boolean 自定义函数,确定方块是否能左移If n(0) Mod 10 0 And n(1) Mod 10 0 And n(2) Mod 10 0 And n(3) Mod 10 0Then If cmdfang(n(0) - 1).Visible = False And _ cmdfang(n(1) - 1).Visible = False And _ cmdfang(

30、n(2) - 1).Visible = False And _ cmdfang(n(3) - 1).Visible = False Then leftable = True Else: leftable = False End If塔里木大学信息工程学院课程设计第 11 页 Else: leftable = False End IfEnd FunctionPrivate Function rightable() As Boolean 自定义函数,确定方块是否能右移 If n(0) Mod 10 9 And n(1) Mod 10 9 And n(2) Mod 10 9 And n(3) Mod

31、 10 9Then If cmdfang(n(0) + 1).Visible = False And _ cmdfang(n(1) + 1).Visible = False And _ cmdfang(n(2) + 1).Visible = False And _ cmdfang(n(3) + 1).Visible = False Then rightable = True Else: rightable = False End If Else: rightable = False End IfEnd Function 塔里木大学信息工程学院课程设计第 12 页目录目录前前 言言.1工程概况工

32、程概况.11.1 项目名称.11.2 设计平台.11.3 程序设计思想.11.4 运用的控件和主要对象.21.5 主要实现的功能.21.6 开发人员与分工.2正文正文.32.1 游戏设计的具体实现.32.1.1 游戏界面的设计和背景音乐及特效的实现.32.1.2 俄罗斯方块的造型.32.1.3 俄罗斯方块的旋转.32.1.4 如何实现方块的运动和自动消除满行的方块.42.1.5 游戏速度和游戏级别自由选择.52.1.6 游戏得分的计算和游戏菜单的编辑.52.2 游戏功能的介绍.5有关说明有关说明.63.1 游戏设计中的不足之处.63.2 VB 与 C 语言之间的不同之处.73.2.1 局部静态

33、变量.73.2.2 Handles 和 WithEvents.73.2.3 类型转换运算符.73.2.4 默认属性和属性参数.83.2.5 可选参数和按名传递.8致谢致谢.8参考文献:参考文献:.8附件:附件:.9塔里木大学信息工程学院课程设计第 13 页VB 游戏设计制作游戏设计制作-制作俄罗斯方块的设计与实现制作俄罗斯方块的设计与实现时间:2010-10-13 23:49来源:未知 作者:admin 我要投稿 目 录 1.课程大作业目的 . 1 1.1 课程大作业设计的目的 . 1 1.2 VB 在实际生活的应用 . 1 2.课程大作业题目描客服咨询,三七毕业设计论文网竭诚为您服务,本站永

34、久域名: 目目 录录 1.课程大作业目的课程大作业目的. 11.1 课程大作业设计的目的. 11.2 VB 在实际生活的应用. 1 2.课程大作业题目描述和要求课程大作业题目描述和要求. 12.1 俄罗斯方块的题目描述. 12.2 俄罗斯方块设计思想. 1 3.课程大作业报告内容课程大作业报告内容. 23.1 界面设计. 33.2 俄罗斯方块的功能实现. 3 4.总结总结. 6 1.课程大作业目的课程大作业目的1.2 VB 课程大作业设计的目的本课程设计以程序设计简明教程课程为基础,目的是进一步培养学生综合应用 VB 的各种编程知识和技塔里木大学信息工程学院课程设计第 14 页巧进行程序设计的

35、能力。通过课程设计,学生能达到具备设计功能较为复杂的 Windows 应用程序的能力。同时,通过课程设计,培养学生自主学习和独立创新的精神,是人才培养体系中极为重要的一环1.2 VB 在实际生活中的应用Visual Basic(简称 VB)程序设计语言的基本概念和语法结构以及常用控件的使用,并通过大量的例子介绍 VB 程序设计的方法和技巧,内容包括:VB 程序设计基础、对象及 VB 应用程序的建立、数据的输入与输出、基本的控制结构、数组和过程的程序设计、常用控件的使用、界面设计、图形操作、文件、数据库技术等.在这些内容的讲解中,坚持语言为程序设计服务的原则,注重实用性. 在教学的安排上,采用由

36、浅到深、循序渐进的结构,做到通俗易懂,既有针对初学者的基本知识的介绍,也有针对已经掌握 VB 程序基本设计方法的学生对高层次内容的要求,将程序设计语言、可视化的面向对象编程技术、上机训练有机地融为一体.突出 VB 的基本语法、编程方法的训练,让学生学会分析问题并快速掌握面向对象的程序、界面设计、数据库技术的设计技巧,培养学生的动手能力和开发应用程序的能力 2.课程大作业题目描述和要求课程大作业题目描述和要求2.1 俄罗斯方块的题目的描述俄罗斯方块的题目的描述 1. 运行游戏时.界面随机的产生不同形状的方块,游戏者通过自己的操作使方块进行合理的堆积.如果每层达到饱合状态的时候会自动消除.然后游戏

37、有规则的进行加分.分数达到一定的阶段.游戏的级别也会越来越高.然后方块下降的速度也会随之慢慢加快.以迎合游戏者的挑战,达到最加有趣的游戏! 2.2 俄罗斯方块的设计思想俄罗斯方块的设计思想 游戏是用来给大家娱乐的,所以要能在使用的过程中给大家带来快乐,消除大家的疲劳,所以我们在游戏中添加了漂亮的场景和动听的音乐,设置了过关升级的功能,激发大家的娱乐激情。从游戏的基本玩法出发,主要就是俄罗斯方块的形状和旋转,我们在设计中在一个图片框中构造了一个 4*4的网状小块,由这些小块组合成新的形状,每四个小块连接在一起就可以构造出一种造型,因此我们总共设计了 7 中造型,每种造型又可以通过旋转而变化出 2

38、 到 4 种形状,利用随机函数在一个欲览窗体中提前展示形状供用户参考,然后将展示的形状复制到游戏窗体中进行摆放,在游戏窗体中用户就可以使用键盘的方向键来控制方块的运动,然后利用递归语句对每一行进行判断,如果有某行的方块是满的,则消除这行的方块,并且使上面的方块自由下落,其中,方块向下的速度是有时钟控件控制的,在游戏中,用户也可以使用向下键加快下落速度,定义一个变量,对消除的函数进行记录,最后就可以得出用户的分数,用 if 语句对分数判断,达到一定的积分就可以升级到下一个档次。俄罗斯方块游戏设计的主要步骤为以下几个方面:(1)游戏界面的设计。(2)俄罗斯方块的造型。(3)俄罗斯方块的旋转。(4)

39、俄罗斯方块的运动情况(包括向左,向右和向下) 。(5)俄罗斯方块的自动消行功能。(6)游戏级别的自由选择。(7)游戏速度的自由选择。(8)游戏得分的计算。塔里木大学信息工程学院课程设计第 15 页(9)游戏菜单选项的设计及功能实现。 3.课程大作业报告内容课程大作业报告内容 3.1 俄罗斯方块的界面设计俄罗斯方块的界面设计界面是以自己的照片为背景然后一个游戏方框和一个游戏辅助方框,再加上一些游戏所需的开始、暂停、退出等按钮 3.2 俄罗斯方块的功能的实现俄罗斯方块的功能的实现1)Enabled = 0 False Height = 480 Left = 4680 MouseIcon = 方块.

40、frx:BF74 MousePointer = 99 Custom Picture = 方块.frx:C3B6 ToolTipText = 续继 CTRL+J Top = 2475 Visible = 0 False Width = 480 End以上的代码来实现继续功能2)Begin VB.Image Image9 Height = 480 Left = 5880 MouseIcon = 方块.frx:B960 MousePointer = 99 Custom Picture = 方块.frx:BC6A ToolTipText = 退出 CTRL+X Top = 2475 Width = 4

41、80以上的程序代码实现退出功能3)Private Sub Image3_Click()OPE_Click End Sub以上的程序代码实现“开始”功能4)Private Sub Image8_Click()Gotog_ClickEnd Sub以上的程序代码实现“暂停/继续”功能5)Private Sub Image7_Click()ENDG_Click塔里木大学信息工程学院课程设计第 16 页End Sub以上的程序代码实现“停止”功能6)Private Sub Image9_Click()Exite_ClickEnd Sub以上的程序代码实现“退出”功能7)Private Sub Image5_Click()If jB 1 ThenImage6.Enabled = TrueImage6.Visible = True减.Enabled = True减.Visible = TrueElse

温馨提示

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

评论

0/150

提交评论