射击游戏设计报告

上传人:dao****ing 文档编号:90879234 上传时间:2022-05-16 格式:DOC 页数:4 大小:51KB
收藏 版权申诉 举报 下载
射击游戏设计报告_第1页
第1页 / 共4页
射击游戏设计报告_第2页
第2页 / 共4页
射击游戏设计报告_第3页
第3页 / 共4页
资源描述:

《射击游戏设计报告》由会员分享,可在线阅读,更多相关《射击游戏设计报告(4页珍藏版)》请在装配图网上搜索。

1、 射击游戏设计报告(VB) 编号:38射击游戏设计报告学院:土木工程 班级:测绘C111班 学号:117536 姓名:冯子帆 成绩_一、 设计思路1、要达到的目的 培养学生综合利用VB语言进行程序设计,解决实际问题的能力。2.基本要求用鼠标点击随机出现的靶子,打中不同区域,得分不同。用两个Label控件分别显示点击次数和得分。3.创新要求在基本要求达到后,进行创新设计,创新方向提示如下:增加难度选项,改变靶子出现的频率;细化计分等级,从圆心到最外圈分10-1分;增加对战模式,允许两人游戏,分别显示成绩;其他你能够想到或者希望实现的功能。3.关键问题的解决(1) 问题描述点击“开始”,靶子在窗体

2、上随机出现,用鼠标点击,击中靶心得10分,击中中间的7分,击中外圈的5分,没有击中得0分。每次点击后,显示成绩和点击次数。(2)问题的解决方案设计程序界面。主窗体如上图。窗体左侧画一个Frame控件,然后在上创建一个Shape控件数组(3个同心圆),Height属性取不同值(半径不同)。在右侧画一个Frame控件,在其内部添加2个Label控件,显示成绩和点击次数。在其下添加一个“开始”按钮和“退出”按钮。分析程序构成在Timer事件里,随机产生最外圈圆的坐标,把最外圈圆移位到新位置,内部两个圆与最外圈圆的相对位置在程序启动时记录到全局数组里,保持与外圈圆的同步移动。鼠标点击点的坐标与圆心坐标

3、的距离Distance小于最小半径的10分。编写代码鼠标点击点的坐标与圆心坐标的距离:Distance = Int(Sqr(Y - (Shape1(0).Top + Shape1(0).Height 2) 2 + (X - (Shape1(0).Left + Shape1(0).Width 2) 2)得分计算: If Distance Shape1(2).Height 2 Then Score = Score + 10 ElseIf Distance Shape1(1).Height 2 Then Score = Score + 7 ElseIf Distance Shape1(1).Heig

4、ht 2 Then Score = Score + 5 Else Score = Score + 0 End If(3)主要技术问题的描述本题技术重点:3个同心圆的同步移动以及把其移动范围限制在Frame框架内。二、模块之间的调用关系,或程序流程图 CommandLabelFrame 主程序开始按钮结束按钮Label1ShapeLabel2Frame1Frame2三个同心圆位置及移动调用Frame1靶子随机出现结束游戏设计次数得分确定打靶区域存放label三、部分程序关键源代码及注释Dim number As Integer, score As Single, distance As Inte

5、gerPrivate Sub command1_click() number = 0 Timer1.Enabled = True 控件的enabled属性 End SubPrivate Sub frame1_mousedown(button As Integer, shift As Integer, x As Single, y As Single)根据鼠标点击点的坐标与圆心坐标的距离确定得分distance = Int(Sqr(y - (Shape1(2).Top + Shape1(2).Height 2) 2 + (x - (Shape1(2).Left + Shape1(2).Width

6、 2) 2)If distance Shape1(0).Height 2 Then score = score + 10 ElseIf distance Shape1(1).Height 2 Then score = score + 7 ElseIf distance Shape1(1).Height 2 Then score = score + 5 Else score = score + 0 End Ifnumber = number + 1End SubPrivate Sub timer1_timer()设计frame的大小及位置w = Rnd * (Frame1.Width - 240

7、0)h = Rnd * (Frame1.Height - 2400)设置内部两个圆与最外圈圆的相对位置,并保持同步移动 Shape1(2).Top = h Shape1(2).Left = w Shape1(1).Top = h + 180 Shape1(1).Left = w + 180 Shape1(0).Top = h + 360 Shape1(0).Left = w +360 记录射击次数和分数 Text1.Text = number Text2.Text = score End SubPrivate Sub command2_click()End 退出End Sub四、设计方案的完善

8、及目前存在的问题1设计方案要完善的地方界面的美观设置程序代码的编写2. 目前存在的问题没有创新设计对timer事件不够熟悉设计时间不够五、本次设计的收获及心得体会 经过半年的vb学习,我并没有很好的掌握一些比较难的编程语言。Vb设计对我来说还是一个比较大的问题,经过这次的设计,我得到的不只是知识的升华,更是心灵上的洗礼。以下是我在设计中遇到的问题、困难及心得。“射击游戏”看上去不是一道特别复杂的题,主要涉及Shape控件数组、Frame控件等知识,要求用鼠标点击随机出现的靶子,打中不同区域,得分不同。用两个Label控件分别显示点击次数和得分。其中,在设计这些程序的时候,设计“3个同心圆的同步

9、移动以及把其移动范围限制在Frame框架内”难住了我,我有点沮丧,设计不出来。后经过翻阅资料书、问同学写出来了。另外,我对timer事件不是特别熟悉,不太会用,经过查阅资料、翻书,对其有了深层了解,这次设计让我对vb编程有了新的认识,只要用心vb不是很难。完成之后我很有成就感,当然有开心也有苦恼。另外,我觉得学校给的课设时间太短了,好多选择比较难一点题目的同学不能很好的完成,加上学校机房的设备不够好等一系列问题同学们不能很好的发挥。我觉得学校如果分组进行课设会对同学们更有帮助,毕竟快期末考试了。当然,收获是最大的。在课设过程中,我学会了淡定、学会了戒骄戒躁、学会了独立完成作业。更加提高了vb语言编程能力,收获颇多。六、对该题目和VB设计的意见和建议1. 对该题目的意见和建议该题目是C类题,相对比较简单,代码不足100行,符合大部分学生的能力。创新设计的内容很好,利于提高学生的能力。意见:有些创新设计可以加到基本要求里,这样可以更好的提高同学们的动手动脑能力。2对本次设计的意见和建议 设计时间不够充足,加上学校机房的设备不够先进,部分学生不能很好的完成题目,不能充分发挥能力。建议学校可以给多一点时间,让选题难的同学有时间做出来。另外,课设时间不太合理,临近期末考试,建议学校换种方法考察同学们的课设能力,课设可以分组进行,让同一组同学共同完成一个比较难的课题。

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!