. .
《高级语言程序设计(2)》
课程设计任务书
题 目 学生姓名 图片连连看游戏程序 学号 专业班级 设 计 内 容 与 要 求 【问题描述】 图片连连看游戏是利用java图形用户界面设计而设计的图片连连看游戏界面。它的游戏规则就是选择一对内容相同的图案进行连线,但此连线不能穿跨其他图案。连线的转折点不能多于两个,如果符合规定则消除此对图案。如果游戏找不到可连接消除的图案,可以通过鼠标点击重列按钮让它重新排列图案,也可以通过鼠标重新开始新的游戏,时间结束后游戏自动结束,还可以通过鼠标退出游戏。 【软件功能】 1 利用awt实现良好的游戏界面,游戏界面尽可能美观。 2 游戏开始时,能产生随机数字和随机位置以及限制的时间。 3 在按动鼠标和键盘时,游戏能玩起来,即能响应鼠标事件。 4 能消去满足条件的含有相同数字的图片。 5 能重列图片顺序。 6 能选择退出游戏和重新再来一局。 【基本要求】 1 用二维数组存放游戏按钮的位置坐标。 2 用二维数组存放随机位置。 3 调用按钮方法将图片添加到游戏按钮上。 4 要求用户界面采用图形用户界面,响应鼠标事件。 5 利用awt实现良好的GUI界。 6 用GridLayout类以矩形网格形式和BorderLayout类以界面布局形式对容器中的组件进行布局。 7 源程序中要有充分的注释,报告中要有详细的流程图和文字材料。 8 运行的结果以及图形用户界面要进行屏幕拷贝,插入报告中。 【提交成果】 1“《高级语言程序设计(2)》课程设计任务书”和“《高级语言程序设计(2)》课程设计报告”打印件各一份; 2 先将上面两项内容的word文档,通过电子邮件交到指导教师,待许可后,打印装袋。 2012 年 12 月 24 日 至 2012 年12月 30 日 2012年 12 月 22 日 2012 年 12月 22 日 2012年 12 月 25 日 起止时间 指导教师签名 系(教研室)主任签名 学生签名 word版本
《高级语言程序设计(2)》课程设计报告
专业: 班级: 学号:
姓名: 完成日期: 指导教师
一、程序设计说明书 【设计题目】
图片连连看游戏程序 【问题描述】
图片连连看游戏是利用java图形用户界面设计而设计的图片连连看游戏界
面。它的游戏规则就是选择一对内容相同的图案进行连线,但此连线不能穿跨其他图案。连线的转折点不能多于两个,如果符合规定则消除此对图案。如果游戏找不到可连接消除的图案,可以通过鼠标点击重列按钮让它重新排列图案,也可以通过鼠标重新开始新的游戏,时间结束后游戏自动结束,还可以通过鼠标退出游戏。
【软件功能】
1 利用awt实现良好的游戏界面,游戏界面尽可能美观。
2 游戏开始时,能产生随机数字和随机位置以及限制的时间。
3 在按动鼠标和键盘时,游戏能玩起来,即能响应鼠标事件。 4 能消去满足条件的含有相同数字的图片。 5 能重列图片顺序。
6 能选择退出游戏和重新再来一局。
【算法思想】
在检验两个图片能否消掉的时候,要让两个图片同时满足两个条件才行,就是两者配对并且连线成功。
分 3 种情况:这三种情况都需要三个检测,这三个检测分别检测一条直路经。这样就会有三条路经。若这三条路经上都是空按钮,那么就刚好是三种直线(两个转弯点)把两个按钮连接起来了。
(1)、相邻
(2)、若不相邻的先在第一个按钮的同行找一个空按钮。1.找到后看第二个按钮横向到这个空按钮所在的列是否有按钮。2.没有的话再看第一个按钮到与它同行的那个空按钮之间是否有按钮。3.没有的话,再从与第一个按钮同行的那个空按钮竖向到与第二个按钮的同行看是否有按钮。没有的话路经就通了可以消了.
(3)、若(2)失败后,再在第一个按钮的同列找一个空按钮。1.找到后看第二个按钮竖向到这个空按钮所在的行是否有按钮 2.没有的话,再看第一个按钮到与它同列的那个空按钮之间是否有按钮。3.没有的话,再从与第一个按钮同列的那个空按钮横向到与第二个按钮同列看是否有按钮。没有的话路经就通了,可以消了。
若以上三步都失败,说明这两个按钮不可以消去 两图能相连的所有情况:
. .
(1)(2)(3)
(6)(5)(4)
【类的设计】
图片连连看游戏程序中只有一个类,类名为LianLianKan,该类实现了接口
ActionListener;该类总共有十三个方法,他们的功能分别是:init()初始化;createImgBtn()传进两个String类型的参数,返回带有数字和图片的按钮;randomBuild(),产生十五对随机的数字;fraction()计算得分;reload()将游戏按钮重列;estimateEven()传进两个int型和一个JButton型的三个参数(分别是击中的按钮位置坐标和按钮),选中按钮信息的存储与操作;xiao()消去符合游戏规则的相同的两个按钮;linePassOne()在第一按钮同行有空按钮的条件下判断第二转折点出现的情况;rowPassOne()在第一按钮同列有空按钮的条件下判断第二转折点出现的情况;remove()将相同的两个按钮消去;actionPerformed()实现按钮事件的监听;timerDemo()时间提示;main()主方法; 【用户界面】
word版本
【程序技巧】
1.程序采用图形用户界面,简单大方,且易于操作;
2.连连看图片采用大家熟悉的图片,能激起玩家的游戏兴趣; 3. 游戏功能较为齐全,可实现退出、重列和下一局的功能,重列功能可对游戏中剩余的图片进行重新排列,使游戏继续进行,下一局功能可以使游戏重新开始
4. 游戏具有倒计时功能,能够控制游戏时限,使游戏具有一定难度,倒计时结束时显示“game over”
5.游戏可以统计玩家的游戏得分
【模块划分及调用关系】
根据对连连看游戏的分析,该游戏可分化为三个模块:算法模块、界面显示模块、菜单控制模块。 调用关系:
相关推荐: