欢迎来到天天文库
浏览记录
ID:35635648
大小:289.50 KB
页数:9页
时间:2019-04-04
《VB课程设计(论文)—俄罗斯方块》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、VB课程设计(论文)题目:俄罗斯方块专业名称:电子信息工程技术姓名:xxx学号:08104150xx班级:08自动化技术指导教师:xxx(2011届)2010-12-309一、前言visualbasic继承了basic语言易学易用的特点〖本文来自论文路上,www.lw63.com,专业毕业设计〗特别适合于初学者学习windows系统编程。随着21世纪信息社会的到来,计算机在人们的工作和生活中的深入,要求我们越来越多地与计算机打交道,为了使用户在繁忙的日程工作中得到放松,于是出现了各种各样的休闲软件,如聊天工具,游戏等等。于是我们小组着手设计开始一个这样的游
2、戏软件。通过这学期来VisualBasic的学习,我初步掌握了VisualBasic语言的最基本的知识,于是在化希耀张兵等老师的指导下动手用VisualBasic编写俄罗斯方块游戏。无可争议,《俄罗斯方块》是有史以来最伟大的游戏之一。它是永恒的娱乐经典,但它实际上又和那些传统的经典娱乐方式不同,因为它的本质是电子化的,所以它的确属于现代产物。《俄罗斯方块》举世闻名的游戏性,在该游戏新鲜出炉时就显得非常直观。某些与坠落的玩具碎片和它们的形状有关的东西,使得哪怕新手也会很自然地企图把它们排列起来,并加以适当组合,就好似《俄罗斯方块》触动了我们某些内在的感官,使
3、得哪怕是我们当中最杂乱无章的人也要把事情整理妥当。在曾经发布过的所有游戏中,《俄罗斯方块》还被认为是仅有的一个能够真正吸引广泛人群的作品。方块的造型在旋转的时候存在一个公式,当然首先要判断是否满足旋转的要求,以上是一个长条型由横着变成竖立状态的旋转,以它的造型中的第三个小方块n(3)为中心旋转,这样,在开始运动的时候,长条形要发生旋转最少要运动到第三行,才能由横着变成竖立状态,游戏区图形框中第三行的第一个方块的编号为20,所以长条造型的第一个小方块的编号n(0)必须要大于20。同样,长条型方块在下落到底部的时候也有限制。如果长条下落到最后一行也将无法由横着
4、变成竖立状态。二、如何实现方块的运动和自动消除满行的方块我们的这个俄罗斯方块游戏主要是利用command控件的visible属性完成效果的,其实在游戏区图形框可以看成是由许多的command小方块组成,方块运动的过程就是造型里方块显示或者隐藏,就像现在的霓虹灯效果一样,由时钟控件控制visible属性改变的速度,上一层的消失,下一层的显示,这样,从视觉效果可以看到方块的下落运动效果。方块在下落的过程中会自动判断每一行方块的visible属性,如果全部为true时,就会将这一行小方块的visible属性全部变成false,在将上面的小方块向下移动,利用for
5、语句进行循环判断,将所有这样情况的行改变小方块visible属性。当有多行同时出现这样情况时使用递归调用,实现连续消行。具体程序代码如下:Fori=190To10Step-10Ifcmdfang(i).Visible=TrueAnd_cmdfang(i+1).Visible=TrueAnd_cmdfang(i+2).Visible=TrueAnd_cmdfang(i+3).Visible=TrueAnd_cmdfang(i+4).Visible=TrueAnd_cmdfang(i+5).Visible=TrueAnd_cmdfang(i+6).Visibl
6、e=TrueAnd_9cmdfang(i+7).Visible=TrueAnd_cmdfang(i+8).Visible=TrueAnd_cmdfang(i+9).Visible=TrueThenForj=i+4ToiStep-1t=1cmdfang(j).Visible=Falsecmdfang(2*i+9-j).Visible=FalseFork=1To4000DoEventsNextt=0Nextlinenum=linenum+1Forj=i-1To0Step-1Ifcmdfang(j).Visible=TrueThencmdfang(j).Visi
7、ble=Falsecmdfang(j+10).Visible=TrueEndIfNextclearline'为了实现连消数行,这里使用递归调用EndIfNext三、游戏速度和游戏级别自由选择游戏速度的自由选择无非就是改变时钟控件的频率,我们在菜单中添加了选择速度的功能,还有添加了考验功能,将欲览窗中的方块造型隐藏,给玩家提高了难度,如果你不愿意接受考验也可以点击显示还原成原来状态。游戏级别的自由选择是让用户选择游戏开始时候,游戏区底部出现一定行数的随机方块,同样给玩家增加了难度,功能代码如下:Fori=19To20-Val(txthard.Text)Ste
8、p-1Forj=i*10Toi*10+9IfRnd>=0.5The
此文档下载收益归作者所有