往链点点通共享资源,了解更多请登录www.WL566.com
Vb课程设计
题 目 贪吃蛇小游戏
学生姓名 张翠翠
专 业 计算机信息管理
班 级 086111
学 号 08611130
任课老师 丁木华
东 华 理 工 大 学 高 等 职 业 技 术 学 院
二 0 一 0 年 六 月
一 背景
蛇——传说中的圣灵之物,仰头为神、俯首为魔。蛇是月亮国膜拜的神,月亮国的子民们都认为蛇是万能的主宰派来保护他们的守护者。这里有蟒蛇、布袋蛇、响尾蛇、白火蛇、眼镜蛇、魔鬼蛇、机器蛇、水蛇、小龙、橡皮蛇等等各种各样的蛇。蛇在这个岛屿就像空气一样自然的出现在各个角落,有些还成为居民的宠物,陪伴孩子长大,和年轻人一起去探险,守护着散步的老人。 古老月亮国是一个与世隔绝的岛国,善良的人民世世代代生活在这片远离浮躁的世界里,过着与世无争的生活享受着他们的幸福和美满。这里有人们赖以生存的茂密的森林、荒凉的沙漠、寒冷的冰川和广阔的大海也有狂暴的火山和神秘的古代遗址。在善良的女娲神保佑下,人们的生活安宁平静。为了答谢女娲的庇佑,每年月亮国的国民都会举办一个守护蛇大赛,大家都会拿出自己最强、最炫、最快、最稀有的蛇来参加比赛,获得第一名的人将得到国王的特别嘉奖。所以国民一生都在不停的收集各种稀奇古怪的蛇,或者不断的培养更有威力的蛇。在这奇幻的大陆上,在每一片土地都布满着魔法和冒险。勇士们,快带上自己的守护蛇,去和守护蛇一起变的更加强壮、迅猛,去异界寻找那传说中的与众不同的蛇,去神秘的天界去寻找月亮岛的秘密……那将是怎么的一个神奇的经历呢?我们一起去见证那份不可思议的历程吧!
贪吃蛇这款游戏,是利用VB编写的一个软件,在窗体里的任意角落出现青蛙,游戏者通过↑↓← →控制贪吃蛇,吃掉一个青蛙,蛇身长长一格,分数相应的增加,游戏界面有两个按钮,开始和难度选择键。
本款游戏益智,有趣,可以锻炼游戏者的瞬间反应能力,熟悉↑↓← →。
一、设计目的
1. 综合Visual Basic相关知识制作简单的可视化应用程序
2. 灵活对程序代码进行利用,修改和编写;
3. 熟练将Visual Basic所学知识和其它知识相结合
二 功能描述
1、 运行
运行时有登陆的界面:开始游戏和难度选择,点击开始键开始游戏,点击难度选择选择难度。
2、 出现青蛙
进入游戏后,界面会出现贪吃蛇和青蛙,电脑随机安排青蛙的位置,吃掉后,青蛙出现在其他的位置。电脑随机安排青蛙的位置。
3、 分数
青蛙出现后用↑↓←→控制贪吃蛇,吃掉一个青蛙,蛇身长长一格,分数相应的增加点中加一分,没吃不加分。
4、 游戏评分
游戏结束后,会弹出一个评分表,电脑会根据游戏者控制贪吃蛇吃掉的青蛙积分,每个十分。
二、概要设计(模块
图)
三 程序代码
Public beibei As Integer
Public baobao As Boolean
Sub Frog()
x = Int(26 * Rnd)
y = Int(20 * Rnd)
imgFrog.Left = 360 * x
imgFrog.Top = 360 * y
End Sub
Private Sub cmdOption_Click()
Form2.Show
End Sub
Private Sub cmdStart_Click()
Timer1.Enabled = True
lbl_gameover.Visible = False
lbl_Show.Visible = False
lbl_Num.Visible = False
cmdStart.Enabled = False
cmdOption.Enabled = False
beibei= 3
If Img.UBound > 5 Then
For i = 6 To Img.UBound
Unload Img(i)
Next i
End If
Img(0).Left = 6840
Img(0).Top = 720
For i = 1 To 5
Img(i).Left = Img(i - 1).Left + 360
Img(i).Top = Img(i - 1).Top
Next i
For i = 0 To 5
Img(i).Stretch = True
Img(i).Visible = True
Next i
imgFrog.Left = 4320
imgFrog.Top = 2880
Set Img(0).Picture = LoadResPicture("al", 0)
End Sub
Private Sub Form_Load()
Set Img(0).Picture = LoadResPicture("al", 0)
For i = 1 To 5
Set Img(i).Picture = LoadResPicture("bb", 0)
Next i
lbl_gameover.Visible = False
lbl_Show.Visible = False
lbl_Num.Visible = False
beibei = 3
Timer1.Interval = Form2.hs.Value
End Sub
Private Sub Timer1_Timer()
If beibei= 1 Then
Call Change
Img(0).Top = Img(0).Top - 360
ElseIf beibei = 2 Then
Call Change
Img(0).Top = Img(0).Top + 360
ElseIf beibei = 3 Then
Call Change
Img(0).Left = Img(0).Left - 360
ElseIf beibei = 4 Then
Call Change
Img(0).Left = Img(0).Left + 360
End If
If Img(0).Left = imgFrog.Left And Img(0).Top =
imgFrog.Top Then
Do
Baobao = True
Call Frog
For i = 0 To Img.UBound
If imgFrog.Left = Img(i).Left And imgFrog.Top = Img(i).Top Then
haha = False
Exit For
End If
Next i
Loop While baobao = False
Load Img(Img.UBound + 1)
Set Img(Img.UBound).Picture = LoadResPicture("bb", 0)
Img(Img.UBound).Stretch = True
If Img(Img.UBound - 1).Left - Img(Img.UBound - 2).Left = 360 Then
Img(Img.UBound).Left = Img(Img.UBound - 1).Left + 360
Img(Img.UBound).Top = Img(Img.UBound - 1).Top
ElseIf Img(Img.UBound - 1).Left - Img(Img.UBound - 2).Left = -360 Then
Img(Img.UBound).Left = Img(Img.UBound - 1).Left - 360
Img(Img.UBound).Top = Img(Img.UBound - 1).Top
ElseIf Img(Img.UBound - 1).Top - Img(Img.UBound - 2).Top = 360 Then
Img(Img.UBound).Top = Img(Img.UBound - 1).Top + 360
Img(Img.UBound).Left = Img(Img.UBound - 1).Left
ElseIf Img(Img.UBound - 1).Top - Img(Img.UBound - 2).Top = -360 Then
Img(Img.UBound).Top = Img(Img.UBound - 1).Top - 360
Img(Img.UBound).Left = Img(Img.UBound - 1).Left
End If
Img(Img.UBound).Visible = True
End If
If Img(0).Left < 0 Or Img(0).Left > Pic_grass.Width - 360 Or Img(0).Top < 0 Or Img(0).Top > Pic_grass.Height - 360 Then
Timer1.Enabled = False
lbl_gameover.Visible = True
lbl_Show.Visible = True
lbl_Num.Visible = True
lbl_Num.Caption = Img.UBound - 5
cmdStart.Enabled = True
cmdOption.Enabled = True
End If
For i = 1 To Img.UBound
If Img(0).Left = Img(i).Left And Img(0).Top = Img(i).Top Then
Timer1.Enabled = False
lbl_gameover.Visible = True
lbl_Show.Visible = True
lbl_Num.Visible = True
lbl_Num.Caption = Img.UBound - 5
cmdStart.Enabled = True
cmdOption.Enabled = True
End If
Next i
End Sub
Sub Change()
For i = Img.UBound To 1 Step -1
Img(i).Left = Img(i - 1).Left
Img(i).Top = Img(i - 1).Top
Next i
End Sub
Private Sub Pic_grass_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 38 Then
Set Img(0).Picture = LoadResPicture("au", 0)
Beibei = 1
ElseIf KeyCode = 40 Then
Set Img(0).Picture = LoadResPicture("ad", 0)
Beibei = 2
ElseIf KeyCode = 37 Then
Set Img(0).Picture = LoadResPicture("al", 0)
Beibei = 3
ElseIf KeyCode = 39 Then
Set Img(0).Picture = LoadResPicture("ar", 0)
Beibei= 4
End If
End Sub
四 运行界面
五 小结
一 存在的不足
1没有暂停键
2不能退出。
二·
课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。
通过了这一周的VB课程设计,我学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次自己做一个程序,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。通过这次课程设计之后,一定把以前所学过的知识重新温故。
程序设计师需要大量的时间去动手练习才能体验到她的内涵,同时还需要用心去投入,时间和感情花下去之后,的确慢慢的感受到有所收获了,而却也噶据我到了一点点的乐趣了。可能是一个良性循环的开始吧,相信以后会做的更好的。
这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,但是在老师和同学的帮助下终于解决。在此向老师还有给过我帮助的同学们表示忠心的感谢!
七.参考文献
Visual Basic 程序设计教程(6.0版)
往链点点通共享资源
-----------------------------
说明
-----------------------------
该资源由往链点点通搜索于网络公开资源,仅供网友浏览阅读,请勿用于商业用途;
往链点点通,是免费的新一代电脑管理、网络应用桌面软件。
通过简洁清爽并可随意切换的两种窗口操作界面,构建了用户、电脑、互联网之间顺畅的入口平台。为用户管理电脑、智能办公、快捷上网、玩转应用(如 游戏,),提供全方位一站式的服务。让用户只需通过往链点点通,就能便捷到达信息时代的各个角落。真正实现一键直达,点点就通。
往链快搜索:无论是搜索硬盘资源、查找网络资源,还是追踪热门应用,都能享受前所未所的快速度。如本地文件搜索,千万文件,零秒呈现;如网络搜索,只需输入一次关键词,便能同步打开百度、google等多个搜索引擎的结果页;
往链优应用:与某些软件相比,往链点点通追求绿色无广告的体验,精选最优质的网络应用,为用户提供纯净实在的生活、工作、学习、娱乐、休闲应用空间。
往链点点通,让您用windows的使用习惯享受苹果的操作体验!
查看和分享更多优质资源,请进入www.WL566.com 下载往链点点通,找到您的一切网络所需!
往链网址导航大全 www.www321.com
往链点点通,让您无障碍畅游网络世界!
顶头的时间初始,
弹出评分窗口
将顶头的时间初始化。
评分
再开始
游戏开始
退出运行
开始运行
程序运行界面