软件092、093实训题目一小猪吃豆游戏.docVIP

软件092、093实训题目一小猪吃豆游戏.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
软件092、093实训题目一小猪吃豆游戏

软件092、093实训题目一:小猪吃豆游戏 开发工具要求:jcreate 3.5或以上 参考:java帮助文档,tutorial文档 知识: 程序主框架,事件发生与处理模型,时间日期类及时间格式化输出、图形绘制接口(类)及各类绘图成员函数、窗体的重绘机制、进程及线程的初步概念。 要求:完成游戏的基本内容,满分为60分,完成基本和扩展内容,满分为100分。 一、小猪吃豆游戏简述 小猪吃豆的游戏已经是一个经典之作了,而经历时间流逝,其也有不同版本的改变, 1.游戏过程: (1)基本内容:首先界面上会出现多个小豆和计时器,豆的数量会随着游戏的级别升高而变多。小猪可以向上、下、左和右四方向移动,吃豆时会发出一种声音,每吃一个豆计一分,当豆被全部吃完时,显示所用时间,以及所得分数,用于排名。 (2)扩展内容:当你操控小猪吃豆时,会四处游走的森林动物,如马、羊和鸡等,碰到它们,小猪会发出惨叫,一局中如果碰到三次,则小猪会被吃掉。抵御这些动物的办法一个是跑;第二个是小猪可以吃大力丸(当小猪吃完10个豆以后,在界面中会有少数大力丸出现,但会不定时/点,且2秒后会消失),即当小猪吃完10个豆,并且又吃了大力丸时,身体会变大颜色也会变表示其功力变大,可以吃掉森林的动物,但大力丸只能有一次效用,也就是说小猪吃完一个动物后,其功力恢复到以前。一个大力丸可以吃掉鸡,二个大力丸则可吃掉羊,三个大力丸才能吃马。 2.游戏升级规则: (1)初级:豆子有20个,若有扩展内容,则有一种森林动物——三只鸡到处游走,大力丸最多会出现2个。 (2)中级:豆子有30个,若有扩展内容,则有二种森林动物——二只鸡、一只羊到处游走,大力丸最多会出现5个。 (3)高级:豆子有40个,若有扩展内容,则有三种森林动物——三只鸡、二只羊、一匹马到处游走,大力丸最多会出现8个。 二、设计要点: 1.这个游戏中包括三个部分:一是界面固定部分(主界面框架),二是界面变动部分(游戏呈现),三是游戏处理部分(游戏数据处理)。第一部分主要用于主界面显示,菜单显示等;第三部分是游戏主体部分,用游戏结构数据描述游戏的状态,玩家每完成一步,则程序修改游戏数据,判断游戏是否结束。根据游戏数据的改变来绘制游戏界面(第二部分),所以,第二部分是随着第三部分的游戏进行而变化,每一次变化是通过清除原图并重画完成的。因此,关键是游戏过程的逻辑设计,另外,Java技术是以事件驱动的编程技术,游戏的过程也是由多个事件驱动的过程。 2.游戏中的类:主界面类,游戏处理类。 界面类负责显示主窗体,包括设置级别的选择框、显示得分的标签、开始及暂停按钮等,游戏过程呈现,包括游戏元素绘制,监听和处理玩家操作键盘所产生的键盘事件,在事件处理过程中调用游戏处理类中的方法。 游戏处理类负责数据初始化,数据变化处理(如动物四个方向移动的实现方法),以游戏进程的控制(如游戏结束判断的方法等)。 3.游戏中的线程:游戏中包括声音、动作、计时等,需要采用多线程,包括游戏界面绘制线程,计时器线程,声音线程,森林动物出现的线程。 三、算法 1.了解坐标 Y Y X (X,Y) x y 0 2.移动 设小猪坐标为(x0,y0) 向左移动s像素:坐标改为(x0-s,y0) 向右移动s像素:坐标改为(x0+s,y0) 向上移动t像素:坐标改为(x0,y0-t) 向下移动t像素:坐标改为(x0,y0+t) 当移动至窗体边缘时,则不可再移动,即每次移动前需要判断是否到窗边缘。 如向左:If x=x0-s0 then x=0 向右:If x=x0+sframe.width then x=frame.width 3.绘制图形 当玩家操作某个方向键时,重新绘制图形,即清除原有图形,再次在新位置重新绘制图形,算法描述: (1)监听键盘事件 (2)若有移动事件(如单击向上键) (3)进行事件处理:调用游戏处理类中的向上移动方法,判断是否为窗体边缘,若不是将物体根据距离增量调整其坐标,否则只调整为Y坐标为窗框上边 (4)调用重画方法,由(3)所给出的坐标处,重新绘制物体图形 4.吃豆 (1)计时器开始计时 (2)通过上下左右键,移动小猪 (3)当小猪图形与豆图形有重叠时,则认为小猪吃了豆,此时,将豆图形显示状态改为不可显示 (4)累计吃豆数量,当所吃豆数量达到总数时,则游戏结束转(5),否则转(3) (5)显示吃豆所用时长,并列出排名 5.与森林动物之间的搏杀 (1)在小猪出现的同时,森林动物可以在任意位置出现,并追赶小猪,即向小猪所在位置移动 (2)玩家操作键盘向向反方向移动小猪,以保证小猪不被其它动物靠近,尽量在远离其它动物的范围内吃豆, (3)若小猪被其它动物碰到,累计碰到次数,若为3,则小猪被吃掉,游戏结束,显示游戏失败信息。 (3)当吃豆数

文档评论(0)

139****3928 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档