网站大量收购闲置独家精品文档,联系QQ:2885784924
  1. 1、本文档共18页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java游戏要点

《JAVA程序设计》 课程设计报告 题  目: 连连看游戏的设计与实现 姓 名: 学 号: 班 级: 指导教师: 完成时间 2014年6月 成 绩: 数学与信息技术学院 20年 2需求分析和总体设计 对选题系统进行需求分析和设计思路概述,并给出系统功能结构及数据库设计。 2.1需求分析与设计思路 2.1.1关键技术说明 1.游戏界面的绘制。 drawRoundRect方法绘制圆角矩形,fillArc方法在圆角矩形中填充椭圆,drawLine方法绘制两个连通后的矩形位置的线条 2.游戏算法的设计,判断两个块之间的连通型。先判断两个是否相同。相同的话在用checkPathR第一次有哪些信誉好的足球投注网站的块与目标块的索引相同,代表连通,返回成功Java.awt.* 所有组件容器的包 java.awt.event.* 所有事件类Java.until.* 包叫做实用包(Utilities),提供了各种不同实用功能的类 表2-2 Main 文件 作用(方法入口,连通性计算) void main 搭建主框架,建立鼠标、窗口的事件监听 窗口的事件监听windowActivated 方法 将 Window 设置为活动 Window 时调用windowClosed方法 因对窗口调用 dispose 而将其关闭时调用 windowClosing方法 用户试图从窗口的系统菜单中关闭窗口时调用 windowDeactivated方法 当 Window 不再是活动 Window 时调用 windowDeiconified 窗口从最小化状态变为正常状态时调用 windowIconified方法 窗口从正常状态变为最小化状态时调用 windowOpened方法 窗口首次变为可见时调用。 mouseClicked //点击鼠标响应事件 mouseEntered 是鼠标刚进入组件的时候调用(只调用一次) mouseExited 是鼠标在组件上移动的时候调用(只要鼠标没有离开组件,一直调用) mousePressed 鼠标按下时响应事件 void draw 绘制矩形框然后在矩形框中填充椭圆 两个连通矩形的位置画连接线void updata 连通消除矩形后及时更新键面, 2.2系统功能结构 对系统实现功能进行说明,分析系统功能结构,画出系统功能结构图,如图2-1所示。 详细设计 给出系统的数据库设计,并对所完成的模块的具体实现进行说明,包括模块实现原理、实现效果、关键代码说明,模块分层结构和调用关系等。 3.1总体模块实现 3.1.1实现原理 通过递归方法,判断连通性,用栈方式存储连通路径。 3.1.2分层结构及调用关系说明 判断用户鼠标是否点击入游戏区域:是,则继续判断;否,则返回失败(界面上显示无效果)。 判断用户鼠标是否点击在未消除的块上(首块):是,则白色框变红,然后继续判断;否,则返回失败(界面上显示无效果)。 判断用户鼠标是否点击在为可消除的块上(目标块):是,则白色框变红,然后继续判断;否,则返回失败(界面上显示无效果)。 判断两个块之间的连通性(逐块有哪些信誉好的足球投注网站): 当前块能够连通(为空块),则继续有哪些信誉好的足球投注网站、先向上,向下,向左,向右转向:转向小于两次,则返回成功;转向大于两次,则返回失败。 当前快不能够连通(为未消除的块),则返回失败。 3.1.3关键代码分析 连连看判断连通性: public class Main { static boolean isRunning = true; static int[] tiles = new int[14 * 14]; static VectorInteger command_list = new VectorInteger(); //Vector是集合,集合是自动增加的数组才用[]来声明空间。而集合不需要声明空间static LinkedListAnimation animation_list = new LinkedListAnimation();//LinkedList是通过节点直接彼此连接来实现的。 static int selected = -1; //定义selected赋初值-1 static boolean checkPath(int index0,int index1,StackInteger path)//对路径的有哪些信誉好的足球投注网站(第一个块,目标块,存放路径) { if (tiles[index0] != tiles[index1]) return false;//如果这两个块的类型不是一样的,返回失败。 path.push(index0);//成功的话,将第一个块的索引暂时保存在栈中 retu

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档