java小游戏设计

java小游戏设计

ID:36440229

大小:165.50 KB

页数:9页

时间:2019-05-10

java小游戏设计_第1页
java小游戏设计_第2页
java小游戏设计_第3页
java小游戏设计_第4页
java小游戏设计_第5页
资源描述:

《java小游戏设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、华北科技学院计算机系综合性实验报告华北科技学院计算机学院综合性实验实验报告课程名称JAVA程序设计实验学期2014至2015学年第1学期学生所在院部计算机学院年级专业班级学生姓名学号任课教师实验成绩计算机学院制第8页华北科技学院计算机系综合性实验报告《Java程序设计》课程综合性实验报告开课实验室:基础四2016年11月28日实验题目基于java的拼图游戏一、实验目的程序使用Eclipse集成开发环境完成,熟悉并掌握在Eclipse开发环境下编写Java程序。二、设备与环境硬件:多媒体计算机软件:Windows系列操作系统、JDK开发包、Eclipse开发环境三、实

2、验内容及要求1.实验要求使用Javaswing编程实现拼图游戏。游戏功能是将一幅图片分割成5*5的规则小图片,游戏开始时将25个小图片随机摆放,玩家能够参考原图拼接出正确的图片。游戏规则:在25个小图片中有一个为空白图片,玩家可以单击和空白小图片相邻的任一个小图片(上、下、左、右均可),即可将单击的小图片与空白小图片交换位置。通过有限次的移动,即可将随机分布的小图片恢复成原图的样式。2.实验内容(1)各类及主要成员函数的功能:java源代码及其功能序号类名主要功能1GreedSnake该类为程序入口,含有main方法。2SnakeControl实现控制运行等总体要求

3、,实现方向键控制蛇的方向,空格键控制游戏暂停或继续,还有分数等。3SnakeModel该类实现蛇的结构和具体运动,如判断食物是否和怎样被吃掉及判断后的动作。4Node该类实现组成蛇身的单位-食物。5SnakeView该类实现画板功能,用黑色画蛇身,红色画食物。(2)具体代码及实现如下:①程序入口主方法://第一部分publicclassGreedSnake{//建立主类GreeSnakepublicstaticvoidmain(String[]args){SnakeModelmodel=newSnakeModel(20,30);//初始化蛇出现的位置SnakeCon

4、trolcontrol=newSnakeControl(model);第8页华北科技学院计算机系综合性实验报告SnakeViewview=newSnakeView(model,control);//添加一个观察者,让view成为model的观察者model.addObserver(view);(newThread(model)).start();}}②实现对蛇身的控制要求://第二部分//游戏的Model类,负责所有游戏相关数据及运行classSnakeControlimplementsKeyListener{//SnakeControl实现接口KeyListene

5、r,键盘监听SnakeModelmodel;publicSnakeControl(SnakeModelmodel){this.model=model;}publicvoidkeyPressed(KeyEvente){intkeyCode=e.getKeyCode();if(model.running){//运行状态下,处理的按键switch(keyCode){caseKeyEvent.VK_UP:model.changeDirection(SnakeModel.UP);break;caseKeyEvent.VK_DOWN:model.changeDirection(

6、SnakeModel.DOWN);break;caseKeyEvent.VK_LEFT:model.changeDirection(SnakeModel.LEFT);break;caseKeyEvent.VK_RIGHT:model.changeDirection(SnakeModel.RIGHT);break;caseKeyEvent.VK_ADD:caseKeyEvent.VK_PAGE_UP://向上翻加速model.speedUp();break;caseKeyEvent.VK_SUBTRACT:caseKeyEvent.VK_PAGE_DOWN://减速m

7、odel.speedDown();break;caseKeyEvent.VK_SPACE:caseKeyEvent.VK_P:model.changePauseState();//暂停进入睡眠状态break;default:}}//任何情况下处理的按键,按键导致重新启动游戏if(keyCode==KeyEvent.VK_R

8、

9、keyCode==KeyEvent.VK_S

10、

11、keyCode==KeyEvent.VK_ENTER){model.reset();}}publicvoidkeyReleased(KeyEvente){}publicvoidkeyTyped

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。