连连看课程设计(共25页).doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《连连看课程设计(共25页).doc》由会员分享,可在线阅读,更多相关《连连看课程设计(共25页).doc(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上第一章 引言1.背景游戏“连连看”顾名思义就是找出相关联的东西,这个连连看在网上基本是用在中,就是找出相同的两样东西,在一定的规则之内可以做为相关联处理。“连连看”的发展经历了从桌面游戏、三个过程。游戏“连连看”是源自的桌面小游戏,自从流入大陆以来风靡一时,也吸引众多程序员开发出多种版本的“连连看”。这其中,编写的“”以其精良的制作广受好评,这也成为顾方“阿达系列软件”的核心产品。并于2004年,取得了的计算机软件著作权登记证书。随着Flash应用的流行,网上出现了多种在线版本“连连看”。如“”、“”等,流行的“水晶连连看”以华丽界面吸引了一大批的女性玩家。2008年
2、,随着的普及和开放平台的兴起,“连连看”被引入了。“连连看”与个人空间相结合,被快速的传播,成为一款热门的,其中以开发者Jonevey在开放平台上推出的“”最为流行。网络、越来越受网民欢迎,除了玩的方法简单外(不像其他游戏还需要注册下载繁琐过程),很多游戏不乏经典。就是典型。不管走到哪个网页游戏网站,连连看游戏总是排在受玩家欢迎排名的前5位,休闲、趣味、益智是连连看玩不厌的精华,且不分男女老少、工薪白领,是一款适合大众的经典网络、单机。游戏连连看,只要将相同的两张牌用三根以内的直线连在一起就可以消除,规则简单容易上手。游戏速度节奏快,画面清晰可爱,适合细心的玩家。丰富的道具和公共模式的加入,增
3、强游戏的竞争性。多样式的地图,使玩家在各个游戏水平都可以寻找到挑战的目标,长期地保持游戏的新鲜感。该游戏由30张不同的图片组成,游戏开始将会出现30张随机组合的图片,在规则下点击两张相同的图片后图片将会消失。图片全部消完为游戏成功。游戏还将设置退出,再来一局的按钮,并实现该功能,方便用户进行操作。1.1课程设计内容(1)游戏计分功能当消去两个相同的图片后分数将增加100分。(2)退出功能该功能有一个“退出”按钮,当按下“退出”按钮后,将直接退出游戏。(3)成功完成任务时显示的 该功能有,恭喜成功,一个“再来一局”的按钮,当按下“再来一局”按钮后,图片将会重新排列,重新开始游戏。(4)游戏倒计时
4、功能在游戏界面的上方有一个倒计时的进度条,增加游戏的难度,激发玩家的挑战兴趣。 第二章 系统介绍1.连连看游戏规则1.1游戏基本规则用鼠标左键点击方块,将2个图案相同的方块用连线连接起来,连接线不多于3根直线,连接后方块就会消失。在规定的时间内将30张图片全部消除。1.2操作规则选择一个图片用鼠标左键点击,图片会变色,然后点击另一个同样图片,如果能够连线就成功消失,如果不能连线,第一次选择的图片就会失效,然后将继续寻找符合规则的图片。1.3胜利和失败把所有的图片成功消除完毕,则认为是本次游戏成功。选择图片时间是有限的,在规定的时间内,若未能将图片全部消除,则失败,提醒是否再来一局。2.游戏流程
5、图分析流程图分析如下图2.1所示: 开始鼠标点击位置的确定判断是否点击在图片方块块?判断是否已选定一个方块?选定第一个方块选定第二个方块判断是否可以抵消方块?抵消方块消除选定方块的记录结束图2.1游戏流程图此次设计所使用的语言为Java。主要应用到Swing组件,Java小程序,事件及接口等。这些接口为游戏的制作提供了便捷的条件,本系统的主要特点就是运用Swing组件和事件处理技术,进行界面的绘制,鼠标的操作,以及积分的显示等功能。这次通过连连看的设计开发将对理解Swing组件技术以及事件处理技术在游戏方面的应用起到很大的帮助作用,同时为掌握Java编程技术及二维休闲游戏设计的一般方法打下坚实
6、的基础。游戏程序设计一般都采用面向对象的设计模式,提供了一个简单的图像显示接口,利用多文档视图结构的面向对象设计模式。第三章 系统游戏设计1.系统分析1.1游戏系统需求分析主要设计目标:使用GUI设计连连看,载入图片信息,进行正确分析系统的功能,总载入30张图片,且图片信息成对出现,且可以偶数项删除,并具有计时等功能游戏中将有“退出”功能,选择退出命令后程序将终止执行,关闭窗口。还将有“再来一局”功能,选择再来一局命令后程序将对图片重新排列,重新开始游戏。该游戏还有一个时间倒计时的进度条,提醒玩家剩余的时间,增加游戏的难度。在界面的顶部有计分功能,当玩家消去图片后就会赢得相应的分数。1.2系统
7、开发及运行环境硬件平台:本游戏对硬件要求较低,基本都可以正常运行。软件平台:操作系统:Windows系列。开发工具包:JDK Version1.6.2。1.3系统功能主要要求1.系统采用图片连连看方式.界面美观,用户使用灵活,方便快捷.2.计分自动完成,提高工作效率。3.用进度条进行游戏界面的计时功能。4.可方便快捷地进行下一盘游戏,并且两盘的分数在规定的时间内会叠加起来。 5.操作员可以随时退出游戏。6.对用户输入的信息,系统进行严格的信息检验,尽可能排除人为的错误。7.系统最大限度地实现了易维护性和易操作性。8.系统运行稳定、安全可靠。2.系统总体结构连连看是基于java基本知识设置的一个
8、小游戏,最中间有连连看的主体构成连连看图片,上面有计分、时间条,下面有退出、再来一局按键。一个标准的连连看系统应该包括以下几大功结构:1、鼠标操作模块;2、图像处理模块;3、菜单模块;4、显示模块。3. 系统各模块功能介绍系统各功能模块实现的功能为鼠标操作模块:玩家在玩游戏时需要运用鼠标与游戏系统进行交互,这个模块的实现 是运用鼠标事件触发的,在连连看的游戏场景中运用鼠标进行交互的事件主要有两个,一个 是用户点击游戏场景中的图片时触发的事件。另外一种是用户点击菜单栏上的菜单按钮时说 触发的鼠标事件。当用户点击游戏场景中的图像块时就会响应鼠标的OnLButtonDown事件,然后进行相应的逻辑判
9、断。当用户点击菜单栏上的菜单命令时就会触发相应的菜单命令对应的相应的事件。图像处理模块: 程序运行后,用户通过游戏菜单的开始命令进入游戏,在这个模块里要把资源文件中的图片进行处理然后加载到游戏场景中这在程序中是通过DrawMap()方法实现的。其中用到的API函数主要是是BitBlt,他的主要功能是将某一内存块的数据传送到另一内存块,前一内存块被称为源,后一内存块被称为目标图象程序开发者使用Blit的函数在内存中将某页面上的一幅位图经过一定的变换转移到另一个页面上。菜单模块: 玩家在游戏游戏过程中随时可以通过选择不同的菜单命令来进行相应的操作,菜单的制作是通过MFC框架中多文档程序的菜单栏来添
10、加的,菜单包含一下几个部分:(1)游戏菜单中的开始、放弃和退出命令。界面显示模块: 游戏场景中界面的显示包括以下部分:游戏计分,剩余时间、游戏主场景,游戏完成提示界面。这些显示信息会随着游戏的进行而动态改变。 在连连看游戏中。整个连连看游戏的系统是在VC+6.0开发环境中进行开发的,开发过程中大量的使用了微软提供的API接口方法,减少了程序代码的编写量、提高了编程效率。第四章 系统的具体实现1.系统主要运行界面1.1运行界面运行界面如下图4.1所示: 图4.1运行界面1.2执行界面,进入游戏正常运行执行界面如下图4.2所示:图4.2执行界面1.3时间到界面时间到界面如下图4.3所示:图4.3时
11、间到界面1.4赢家界面游戏运行成功界面如下图4.4所示:图4.4游戏运行成功界面1.5进度条界面程序运行进度条如下图4.5所示:图4.5程序运行进度条2.游戏实现代码2.1主面板内所需要的组件的声明主面板内所需要的组件的声明代码如下图4.6所示:图4.6组件声明2.2填充一个矩形框,进行显示时间填充一个矩形框,进行显示时间代码如下图4.7所示: 图4.7填充矩形框显示时间2.3主面板及各组件初始化主面板及各组件初始化如下图4.8所示:图4.8主面板及各组件初始化2.4创建时间对象,每隔100毫秒刷新一次创建时间对象,每隔100毫秒刷新一次代码如下图4.9所示:图4.9创建时间对象2.5分数代码
12、。每消除一对图片,则分数加上100。代码如下图4.10所示: 图4.10 分数代码3.消除图片具体情况当点击两个按钮的图片一样时,运用消去算法来判断是否可消去,具体情况如下:3.1两次点击相同图片相邻当两次点击的相同图片相邻时,如下图4.11所示,则消去。 图4.11 点击图片相邻3.2水平方向消去算法当两次点击的相同图片如下图4.12所示,则在水平方向用循环算法for (j = 0; j this.getWidth()return true;repaint();return false; public class LianLianKan implements ActionListener J
13、Frame mainFrame; / 主面板MyPanel time;JPanel centerPanel, southPanel, northPanel; / 3个子面板JButton diamondsButton = new JButton65;/ 游戏按钮数组JButton exitButton, newlyButton; / 退出,重新开始按钮JLabel scoreLable; / 分数标签JButton firstButton, secondButton; / 分别记录两次被选中的按钮Timer timer;int grid = new int87;/ 储存游戏按钮位置static
14、 boolean pressInformation = false; / 判断是否有按钮被选中int sum=0;int x0 = 0, y0 = 0, x = 0, y = 0, fristMsg = 0, secondMsg = 0; / 游戏按钮的位置坐标int i, j, k, n;/ 消除方法控制/ =调用图片=/private static Icon icons = new ImageIcon6 * 5; /静态数组icons【】用于存放图片绝对地址private static final String imgDir = f:/meng;static tryFile dir = n
15、ew File(imgDir); File imgFiles = dir.listFiles(new FilenameFilter() /获取f:/meng文件中的图片public boolean accept(File dir, String name) return name.toLowerCase().endsWith(.jpg););for (int i = 0; i 6 * 5; i+) /获取f:/meng文件中的图片的绝对路径放在icons数组中iconsi = new ImageIcon(imgFilesi.getAbsolutePath();/System.out.print
16、ln(i+ +iconsi); catch (Exception e) e.printStackTrace();/ 异常处理public void init() /初始化面板mainFrame = new JFrame(JKJ连连看);/ 设置主面板的名称为JKJ连连看mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/ 结束窗体所在的应用程序mainFrame.setLayout(new BorderLayout(); / 设置为BorderLayout()布局scoreLable= new JLabel(0);centerPa
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 连连 课程设计 25
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内