贪食蛇游戏Java程序设计.docx

上传人:b****6 文档编号:7090224 上传时间:2023-01-17 格式:DOCX 页数:8 大小:341.86KB
下载 相关 举报
贪食蛇游戏Java程序设计.docx_第1页
第1页 / 共8页
贪食蛇游戏Java程序设计.docx_第2页
第2页 / 共8页
贪食蛇游戏Java程序设计.docx_第3页
第3页 / 共8页
贪食蛇游戏Java程序设计.docx_第4页
第4页 / 共8页
贪食蛇游戏Java程序设计.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

贪食蛇游戏Java程序设计.docx

《贪食蛇游戏Java程序设计.docx》由会员分享,可在线阅读,更多相关《贪食蛇游戏Java程序设计.docx(8页珍藏版)》请在冰豆网上搜索。

贪食蛇游戏Java程序设计.docx

贪食蛇游戏贪食蛇游戏Java程序设计程序设计贪食蛇游戏Java程序设计姓名小明完成时间2014-10-31Version1.0目录一、项目目的3二、功能描述3三、功能细化3四、具体实现4五、程序调试8六、风险点分析10七、其他备注10下面附上程序文件10一、项目目的通过实现贪食蛇游戏程序设计,来回顾Java编程的一些基本方法和思想,复习一些基础语法的使用,另外,本程序设计还涉及到部分的算法,兼顾了算法的学习。

通过本程序设计,复习Java编程,打好基础。

二、功能描述1.开始游戏2.查看历史成绩3退出游戏三、功能细化1.开始游戏:

点击主界面的“开始游戏”按钮,进入游戏界面,通过方向键来控制蛇头的移动,游戏界面中随机初始化一个食物,蛇头每吃一个食物会增加一节身长,另外吃到食物后还会随机再出现一个不与蛇身重叠的食物,蛇每吃到五个食物移动速度要提升一个等级,当蛇碰到蛇身或者蛇碰到四周边界的时候,游戏结束。

2.查看历史成绩:

每进行一次有效的游戏(指不在游戏途中关闭),就会记录一次玩家的姓名和成绩,通过读写文本和排序,将历史成绩按得分从高到低排列显示在成绩排行界面中。

玩家可以直接在游戏开始前就查看之前玩家的历史成绩排行。

也可以在进行游戏后输入自己的名字,查看自己在榜中的排行。

3退出游戏点击退出游戏按钮,退出游戏窗口,结束整个程序。

四、具体实现1.各个类的介绍以及类图1)MainFrame类:

程序启动时进入的第一个界面,其包括了三个内部类:

MyActionListener,MyActionListener_che,PanelImageTest.其中,前两个类继实现ActionLiestener接口,唯一的目的是为了传参,以实现在各个窗口跳转时对前一个窗口的控制。

而PanelImageTest继承自JPanel类,是为了在主界面上设置一张背景图片。

2)GameFrame类:

在主界面中点击“开始游戏”按钮,就会实例化该游戏界面,这个类是整个游戏程序的核心,贪食蛇游戏的算法和具体实现就写在该类中。

本程序中,采用“画布”来画蛇,另MyCanvas继承Canvas类并重写其方法来实现游戏画图。

3)OverFrame类:

当在游戏界面进行游戏失败的时候,就会实例化这个类,这就是跳出来的一个提示窗,提示玩家游戏结束,并让玩家输入姓名,输入完毕后单击“确定”按钮,就会实例化ScoreFrame,即成绩排行界面,玩家可以在该界面中看到自己的成绩和排名。

另外,还实现了重新开始游戏的功能。

4)ScoreFrame类:

这是历史成绩排行的界面,可以从主界面或者游戏界面跳转过来,也可以从该界面跳转回主界面,通过读写文本以及排序,实现了保存玩家成绩并排名的功能。

5)类图:

如图4.1所示为类图结构图4.1类图2.游戏界面跳转图4.2游戏界面跳转示意图如图4.2所示,为游戏界面跳转的示意图,其中,MainFrame,GameFrame,ScoreFrame分别表示程序主界面,游戏界面,和分数排行界面。

另外OverFrame指的是游戏失败时候跳出的窗口界面,programeexit指的是结束程序运行。

3.关键代码1).GameFrame中实现蛇身增长以及蛇身跟着蛇头移动的算法2).MainFrame中实现参数传递的内部类(为在窗口跳转时控制之前窗口)3).MainFrame里面为实现添加背景图片而重写JPanel类的内部类五、程序调试1.主界面示意图如图5.1所示图5.1程序主界面2游戏界面如图5.2所示图5.2游戏界面3.游戏失败时如图5.3所示图5.3游戏失败跳出边框的界面4.历史成绩排名界面如图5.4所示图5.4成绩排行界面其中,本次游戏玩家的信息行会显示为红色。

六、风险点分析1.整个程序各个界面都是采用固定的size和location,这样当移动窗口时,界面之间的跳转就显得很突兀。

并且改变窗口大小就会破坏原来的感观。

这样设计导致不够灵活。

2.调试过程中,有时候有小概率会出现游戏屏幕闪烁,造成不愉快的用户体验,具体原因还未发现。

闪屏问题已经通过双缓存技术解决.3.成绩排行是由简单的IO流写的,由于对IO流不够熟悉,所以做得比较粗糙,不能输入中文字符,必须是英文字符否则会报错,另外可能还存在一些隐藏的尚未发现的问题。

4.游戏功能过于单一,可以设置一些其他游戏功能,例如选择游戏场景,这在后续改进的时候是可以实现的。

七、其他备注下面附上程序文件

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1