java课程设计报告拼图游戏.docx

上传人:b****3 文档编号:2070388 上传时间:2022-10-26 格式:DOCX 页数:24 大小:1.47MB
下载 相关 举报
java课程设计报告拼图游戏.docx_第1页
第1页 / 共24页
java课程设计报告拼图游戏.docx_第2页
第2页 / 共24页
java课程设计报告拼图游戏.docx_第3页
第3页 / 共24页
java课程设计报告拼图游戏.docx_第4页
第4页 / 共24页
java课程设计报告拼图游戏.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

java课程设计报告拼图游戏.docx

《java课程设计报告拼图游戏.docx》由会员分享,可在线阅读,更多相关《java课程设计报告拼图游戏.docx(24页珍藏版)》请在冰豆网上搜索。

java课程设计报告拼图游戏.docx

java课程设计报告拼图游戏

1、题目.............................................................................................3

2、任务..............................................................................................3

3、要求...............................................................................................3

三、概要设计..............................................................................4

1、功能分析.......................................................................................4

2、界面初始化...................................................................................4

3、事件处理

(1)鼠标事件.............................................................4

4、事件处理

(2)键盘事件.............................................................5

5、状态判断.......................................................................................5

6、程序流程图...................................................................................5

1、.html代码设计............................................................................6

2、.java代码设计............................................................................6

第一个大图的拼图界面..........................................................................19

第一个拼图全图预览..............................................................................19

第二个大图的拼图界面..........................................................................20

第二个拼图全图预览..............................................................................20

第三个大图的拼图界面..........................................................................21

第三个拼图全图预览..............................................................................21

 

一、题目介绍

1、题目:

拼图游戏设计

2、任务:

利用java的图形用户界面设计,设计一个拼图游戏界面,能够实现基本的游戏功能。

3、要求:

(1)游戏者可以选择不同的图片。

(2)按完成的时间计算成绩。

(3)记录拼图完成的总步数。

二、需求分析

拼图游戏是一个简单的小程序,游戏规则如下:

将一张大图打散成9张小图,然后在游戏里任意挑8张图,贴在3行3列的矩阵中的任意位置。

通过鼠标或键盘的方向键移动打乱的8张图片,让其复原成原来的顺序,玩家就胜利了,游戏就结束了。

在游戏结束之后,算出玩家的得分。

三、概要设计

1、功能分析

由于要计算游戏的时间,需要引入线程,通过实现Runnable接口和创建Thread类来实现线程的功能。

使用多线程机制来计算时间的流逝。

引入AWT绘图包,实现图片的绘制。

引入事件处理机制,要求对鼠标事件,键盘事件进行相应,实现移动图片,预览全图等功能。

按键“Y”实现临时的原图整体预览。

按键“1或者2或者3”实现大图选择、

2、界面初始化

调用publicvoidinit()通过接收html数据,加载三张源图片,安装媒体监视器和鼠标键盘监听器,实现界面初始化;

调用publicvoidinitData()将加载的一张大图分割成九个随机分布的小图部分;

调用publicvoidpaint(Graphicsg)划分提示信息区域和拼图区域;

3、事件处理

(1)鼠标事件

调用publicvoidmouseClicked(MouseEvente)方法实现鼠标事件处理。

调用PublicintdirectionCanMove(intnCol,intnRow)方法检测那个方向没有拼图而可以向之移动。

调用publicvoidmove(intnCol,intnRow,intnDirection)方法实现鼠标激活拼图移动。

(2)键盘事件

调用publicvoidkeyPressed(KeyEvente)方法实现键盘事件处理。

调用publicvoidinitImageAgain(intnImgNo)方法实现重新加载另一张大图。

调用publicbooleanmove(intnDirection)方法实现判断指定拼图是否可以往方向nDirection移动。

4、状态判断

动过调用publicvoidcheckStatus()方法来

检测拼图状态,判断是否拼图成功,确定游戏是否结束。

5、附加功能

调用publicvoidrun()方法,给游戏过程添加计时进程。

6、程序流程图

四、详细设计

1、编写.html代码

</p><p>拼图游戏</p><p>

拼图游戏


这是一个拼图游戏。

玩家应该将打散的小图拼成一张大图。


玩家可以通过鼠标和键盘来移动小图,移动的次数和拼成

一张大图所化费的时间作为游戏得分的依据。


成绩=1000-时间(秒)-移动步数*10

按F1键重新开始该游戏,按Y健可以预览整个的图片


--param标签NumOfImgparam的标签表示有多少张图片

剩下的param标签为每张图的名字

-->

2、

1、界面设计和附加功能

importjava.applet.*;

importjava.awt.*;

importjava.awt.event.*;

import.*;

publicclasspintuextendsAppletimplementsMouseListener,KeyListener,Runnable

{

Image[]m_Image=newImage[9];

//9个用来装入每个拼图的图片对象

Imagem_ImgAll;

//总的大图片

intm_nImageNo[][]=newint[3][3];

////标志现在各个拼图的排列情况

finalintNO_IMAGE=-1;

//此位置没有拼图,表示空白拼图

finalintIMAGE_WIDTH=120;

//每张拼图的宽

finalintIMAGE_HEIGHT=120;

////每张拼图的高

finalintDIRECTION_UP=1;

finalintDIRECTION_DOWN=2;

finalintDIRECTION_LEFT=3;

finalintDIRECTION_RIGHT=4;

finalintDIRECTION_NONE=-1;

finalintDELTAX=120;

//标志提示信息区的宽度

booleanbWantStartNewGame=false;

//游戏是否结束,是否需要开始新游戏

intnStep=0;

//已经走的步数

intnTime=0;

//已经玩过的时间,以秒为单位

ThreadthTimer;

//计时器线程

intnScore=0;

//玩家所得的分数

intm_nNumOfImg=0;

//拼图底图所使用的图片的个数

Stringm_sImgName[]=newString[9];

//记录拼图底图的名字

booleanbOnShowAll=false;

//预览的开关

AudioClipm_audioClip1,m_audioClip2;

//装载要播放的声音对象

publicvoidinit()/

{

Stringparam=getParameter("NumOfImg");

try

{

m_nNumOfImg=Integer.parseInt(param);

}

catch(Exceptione)

{

m_nNumOfImg=1;

System.out.println("Can'tconverttheparam'snametoint.");

}

for(inti=0;i

{

m_sImgName[i]=getParameter("Image"+(i+1))+".jpg";

//用字符串数组m_sImgName分别保存三个大图及其规范命名:

p

System.out.println(m_sImgName[i]);

}

System.out.println(param);

MediaTrackermediaTracker=newMediaTracker(this);

//为这个拼图界面设置一个监视器

m_ImgAll=getImage(getDocumentBase(),"img/"+m_sImgName[0]);

//从装载总的大图片

mediaTracker

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

当前位置:首页 > 求职职场 > 简历

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

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