




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
枣 庄 学 院信息科学与工程学院课程设计任务书 题目: 俄罗斯方块游戏的设计与实现 学 号: * 姓 名: * 专 业: 计算机应用技术 课 程: J2ME手机应用开发 指导教师: * 职称: 讲师 完成时间: 2012年5月-2012年6月*学院计算机科学与工程学院制 2012年6月24日课程设计任务书及成绩评定课程设计的任务和具体要求 根据所学内容,开发一款俄罗斯方块小游戏。开始制作游戏时,主要要解决的问题有以下几个方面:游戏如何设置整个游戏的界面;游戏开始后,如何控制游戏中方块下落的速度,玩家控制方块左右移动的边界等;判断方块是否到达底部或者顶到上面等. 要求思路清晰,结构严谨。指导教师签字: 、 日期: 指导教师评语成绩: 指导教师签字: 日期: 课程设计所需软件、硬件等 (1)硬件环境处理器:800MHz以上CPU或是更高。内存:128MB(建议 196MB)。硬盘空间:20MB。(2)软件环境操作系统:Windows 98 或是Windows 2000/Windows NT Server 4.0。开发工具:eclipse-SR2-win32J2ME Wireless Toolkit 2.2课程设计进度计划起至日期工作内容备注2012.5.105.302012.6.16.122012.6.136.24 确定课题收集资料整理资料与课题设计课程设计的实现参考文献、资料索引序号文献、资料名称编著者出版单位1. 万辉 王军 编著. 基于Eclipse 环境的J2ME应用程序开发 .北京.清华大学出版社.2. 龚剑 等. 程序天下 J2ME手机游戏开发详解.电子工业出版社.3. 杨光 孙丹 等. J2ME程序设计教程.清华大学出版社.目 录1 无线网络技术概论设计题目及具体要求1.1 题目需求11.2实现环境及工具简介 11.2.1 开发环境11.2.2 运行环境12 总体设计说明书2.1 界面设计模块22.2 系统功能模块32.3类模块设计 33 详细设计与实现 3.1主框架模块(这里只列出了几个重要的数据) 43.2 游戏中方块模块 63.3 游戏结束界面模块 74 设计小结81设计题目及具体要求1.1 题目需求俄罗斯方块(Tetris, 俄文:)是一款风靡全球的电视游戏机和掌上游戏机游戏,它由俄罗斯人阿列克谢帕基特诺夫发明,故得此名。俄罗斯方块的基本规则是移动、旋转和摆放游戏自动输出的各种方块,使之排列成完整的一行或多行并且消除得分。由于上手简单、老少皆宜,从而家喻户晓,风靡世界。开始制作游戏时,主要要解决的问题有以下几个方面:游戏如何设置整个游戏的界面;游戏开始后,如何控制游戏中方块下落的速度,玩家控制方块左右移动的边界等;判断方块是否到达底部或者顶到上面等. 设计该游戏仅供学习、研究之用,应用目标是让使用该软件的用户能够在闲暇之时放松一下自己。设计该游戏是因为对手机游戏的喜爱,以及对俄罗斯方块游戏中的了解,所以就产生了自己模仿一个的想法。由于本软件是模仿其他类似软件开发的,所以只能供学习、研究之用。1.2实现环境及工具简介1.2.1 开发环境 (1)硬件环境处理器:800MHz以上CPU或是更高。内存:128MB(建议 196MB)。硬盘空间:20MB。 (2)软件环境操作系统:Windows 98 或是Windows 2000/Windows NT Server 4.0。开发工具:eclipse-SR2-win32J2ME Wireless Toolkit 2.21.2.2 运行环境Nokia(诺基亚) Nokia Developers Suite 支持 J2ME平台的手机。Motorola(摩托罗拉)支持的J2ME平台的手机。其他支持J2ME平台的手机等。2总体设计2.1 界面设计模块主要有两个界面:难度选择,游戏开始等菜单界面实现,游戏正式开始的界面。截图如下: 开始等菜单界面 游戏运行界面 游戏结束界面2.2 系统功能模块 系统功能模块设计俄罗斯方块游戏系统游戏主框架游戏菜单设计游戏逻辑设计游戏界面2.3类模块设计因为J2ME平台有一个专门为游戏设计的类GameCanvas,所以游戏场景类继承了GameCanvas类。类图如下:游戏场景类GameCanvas类MIDlet类游戏方块类游戏结束界面类3 详细设计与实现3.1主框架模块(这里只列出了几个重要的数据)类 名属 性方 法备 注TetricCanvasPublic TetrisCanvas tetrisCanvas游戏主程序Private Scene scene游戏背景方块场景private FlashUI flashUI游戏结束界面Block next,move方块类public class TetricCanvas extends GameCanvas implements CommandListener,RunnableCommand quit = null;Command start = null;Command pause = null;Scene scene = null;Block next = null,move;private FlashUI flashUI = null;public TetrisCanvas tetrisCanvas;private Display display;protected TetricCanvas(TetrisCanvas canvas) super(false);tetrisCanvas = canvas;public void init() display = Display.getDisplay(tetrisCanvas);start = new Command(开始,Command.EXIT,1);pause = new Command(暂停,Command.EXIT,2);quit = new Command(退出,Command.OK,2);addCommand(quit);addCommand(start);setCommandListener(this);scene = new Scene();display.setCurrent(this);public void run() /游戏线程while(state = RUN) if(state = RUN)System.out.println(Runing);try Thread.sleep(800);/下落延迟 catch (InterruptedException e) e.printStackTrace();if(move.move(0,1) /是否可以下落elseif(move.isTop()/方块到顶部了,游戏结束 repaint();scene.setState(move.xj, move.yj); /更新scene方块即背景方块scene.updateMetrix();/更新数据即每行方块的记录move.nextMove(next);/ 把预备方块设置成当前的方块next = new Block(scene);/申请一个新的方块做预备if(scene.cut()repaint();repaint();/whilepublic void commandAction(Command c, Displayable d) /游戏消息响应private void quit()/ 游戏退出public void paint(Graphics g) /绘图protected void keyPressed(int keyCode)/玩家按键响应3.2 游戏中方块模块类 名属 性方 法备 注Blockprivate Scene scene游戏背景方块场景public class Block int x;int y;private Scene scene;private static int blockX=0,1,2,3,0,1,1,2,2,1,1,0,1,1,2,2,0,0,1,2,2,2,1,0,0,1,1,2; private static int blockY=0,0,0,0,0,0,1,1,0,0,1,1,0,1,0,1,0,1,1,1,0,1,1,1,0,0, 1,0;public Block(Scene s)public boolean move(int offsetX,int offsetY) /移动测试public boolean rotate() /方块旋转public boolean isFalled() /是否下落到底部public void nextMove(Block next) public boolean isTop() /检测是否到达顶部3.3 游戏结束界面模块类 名属 性方 法备 注FlashUIPrivate TetricCanvas tetriccanvas游戏主程序private Image image结束游戏图片 public class FlashUI extends Canvas implements CommandListenerCommand quit = null;Command start = null;TetricCanvas tetriccanvas;private int width;private int height;private Image image = null;public FlashUI(TetricCanvas canvas) tetriccanvas = canvas;image = createImage(/gameover.png);start = new Command(再来一局,Command.EXIT,1);quit = new Command(退出游戏,Command.OK,2);addCommand(quit);addCommand(start);setCommandListener(this);public Image createImage(String name) /图片加载protected void paint(Graphics g) /绘图片public void commandAction(Command c, Displayable d) /游戏按键响应4 设计小结以上介绍了俄罗斯游戏的设计及代码实现,游戏中使用了线程来进行计时循环。由于游戏比较粗糙,这个程序还有需要改进的地方,如添加声音,开始画面等。收获:通过这次做俄罗斯方块游戏,让我更深刻的了解了j2me程序的过程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- ccs变更点管理办法
- 贵州国省道管理办法
- 中央厨房运作管理办法
- 财务公司管理办法讲解
- 维保修工作管理办法
- 规范课程实施管理办法
- 试验室操作管理办法
- 装修消费管理办法细则
- 苏水基建设管理办法
- 中国收养儿童管理办法
- DB65-T 4773-2024 生物安全实验室消毒技术指南
- 人教版PEP四年级英语上册Unit-1-My-classroom课件
- Starter知识点清单(含默写)2024-2025学年牛津上海版英语六年级上册
- 2024年新北师大版七年级上册数学全册课件(新版教材)
- 《新媒体运营》全套教学课件
- 1安全生产关键节点清单及核查内容清单
- 2024-2029年中国金枪鱼行业市场发展分析及发展趋势与投资前景研究报告
- 抖音火花合同电子版获取教程
- HYT 0318-2021 填海项目竣工海域使用验收测量规范
- 高中历史知识竞赛省公开课一等奖全国示范课微课金奖课件
- 燃气管道保护方案(雨污分流二标)
评论
0/150
提交评论