欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载  

    软件技术毕业设计(论文)-J2ME俄罗斯方块游戏设计.doc

    • 资源ID:3973441       资源大小:958.50KB        全文页数:27页
    • 资源格式: DOC        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    软件技术毕业设计(论文)-J2ME俄罗斯方块游戏设计.doc

    1 毕业设计总结 俄罗斯方块游戏 院 (系) 信息工程与艺术设计系 专 业 软件技术 学生姓名 学生学号 指导教师 提交时间 2011 年 12 月 2 日 山东劳动职业技术学院信息工程与艺术设计系毕业设计总结 第 2 页 共 24 页 目目 录录 摘摘 要要 I I 第一章第一章 绪论绪论 1 1 第二章第二章 J2MEJ2ME 相关知识相关知识 2 2 2.1 J2ME 的概念 2 2.2 J2ME 体系结构介绍 2 2.2.1 JVM 3 2.2.2 J2ME 配置简介 3 2.2.3 MIDP(MOBILEINFORMATIONDEVICEPROFILE)移动信息设备简表 3 2.3 J2ME 手机编程的常用类 4 2.3.1 DISPLAY类.4 2.3.2 CANVAS类4 2.3.3 GRAPHICS类 4 2.3.4 RMS 记录管理系统 .4 2.4 MIDLET应用程序的生命周期 .5 第三章第三章 俄罗斯方块游戏设计与制作俄罗斯方块游戏设计与制作 7 7 3.1 游戏的具体设计流程 .7 3.1.1 俄罗斯方块游戏简述 .7 3.1.2 游戏操作流程 .7 3.1.3 系统设计思想 .8 3.1.4 系统设计主要功能 10 3.2 游戏代码分析 11 图 6 游戏开始界面11 开始游戏界面部分程序代码:11 结结 论论 2323 致谢致谢 2424 参考文献参考文献 2424 第 I 页 共 24 页 摘摘 要要 随着计算机技术的发展,手机游戏已经成为游戏行业的重要组成部分。同样也可以 说是成为人们日常生活中不可或缺的部分。手机游戏具有很高的经济价值,是一项很值 得探索与研究的领域。 “俄罗斯方块”是一款非常普及而且经典的益智类游戏,它以其操 作简单,上手容易等特点倍受玩家的青睐。而本文介绍的就是在 J2ME 技术下利用 eclipse 开发工具配合 java 虚拟机在电脑端实现俄罗斯方块手机游戏的开发 关键词:J2ME JAVA 移动设备 手机游戏 山东劳动职业技术学院毕业设计总结 第 1 页 共 24 页 第一章第一章 绪论绪论 游戏作为人们日常生活的一个重要的娱乐项目,也带动了巨大的游戏相关产业市场 的发展。游戏平台从游戏机、电视游戏,到 pc 游戏,到手机游戏。随着手机的日益普及, 人们对手机的娱乐功能的需求也相应增强,尤其是近几年手机 2D、3D 技术的日益成熟, 大大地提高了手机游戏的娱乐性、操作性和方便性等多方面的性能。而基于手机平台的 手机游戏也就拥有了巨大的市场空间,随着 3g 的开通和应用,手机游戏必将迎来新的一 轮游戏热潮! J2ME 在游戏开发方面的优势,由它开发的各种软件在手机上大规模的应用将会刮起 一阵势不可挡的革命潮流。下面在本篇文章中就将详细的介绍 J2ME 这一技术在手机游戏 制作方面的具体过程和应用。 山东劳动职业技术学院毕业设计总结 第 2 页 共 24 页 第二章第二章 J2MEJ2ME 相关知识相关知识 2.12.1 J2MEJ2ME 的概念的概念 J2ME 的全称是 Java2 Micro Edition(J2ME)Java2 技术微型版,与 J2SE、J2EE 一样都是有美国 SUM 微系统公司提出的 JAVA 技术规范。 J2ME 是为了能够开发运行在小型设备、独立设备、互联移动设备、嵌入式设备上的 JAVA 应用程序而被提出的。J2ME 是建立在一个由概要描述、配置、JAVA 虚拟机和操作系 统等部分组成的标准架构之上的,这些内容共同组成了完整的 J2ME 实时运行环境。它的 技术核心是由一个 JAVA 虚拟机( JVM )及一套适合运行在上述设备环境上的 API 接口 构成。 J2ME 在 1999 年的 JavaOne 开发人员大会上初次亮相,它的目标是面向智能无线设备 和小型计算设备的开发人员,这些开发人员需要在他们的产品中整合跨平台的能力。 开发 Java ME 程序一般不需要特别的开发工具, 开发者只需要装上 Java SDK 及下载 免费的 Sun Java Wireless Toolkit 2.xx 系列开发报,就可以开始编写 Java ME 程式, 编译及测试, 此外目前主要的 IDE(Eclipse 及 NetBeans)都支持 Java ME 的开发,个别 的手机开发商如 Nokia 、Sony Ericsson、摩托罗拉、Android 系统 都有自己的 SDK, 供开发者在开发出兼容于他们的平台的程序。 2.22.2 J2MEJ2ME 体系结构介绍体系结构介绍 J2ME 的体系可划分 JVM、配置、API 信息类库和简表。如图 1 所示,其中 JVM,配置 和简表构成了 J2ME 运行环境。对于各个层次的详细解释和功能如下: 山东劳动职业技术学院毕业设计总结 第 3 页 共 24 页 图 1 J2ME 体系结构 2.2.12.2.1 JVMJVM 在 J2ME 中提供了 2 中 JVM。由于 JVM 是 java 代码运行时必须的,只有任何设备上有 了 JVM 才能改很好的解释“一次编译,到处运行”的关键技术。那么在嵌入式或移动设 备中也需要 JVM 作为操作系统和 java 应用程序间的接口。但是由于内存的限制,嵌入式 设备的 JVM 也要特殊提供。J2ME 中提供的 JVM 分为 CVM 和 KVM,是 JVM 的缩减版,KVM 比 CVM 功能稍弱。CVMCompactVirtualMachine,最初是这种解释的,但是后来对于 C 没有 任何意义了。只是 CVM 虚拟机主要运行在存储量较大的嵌入式设备,比如可视电话.POS 收款机等。KVM 是最小运行时环境的一部分,也就是用于 CPU 和内存较小的设备,这里的 K 是千字节的意思。KVM 主要用于移动电话,个人数字助理(PAD)等小型设备。 2.2.22.2.2 J2MEJ2ME 配置简介配置简介 当前提供的 J2ME 配置有两类,CDC 和 CLDC。CDC(ConnectionDeviceConfiguration)连接设备配置主要用于存储量较大,内 存 2MB 以上的设备中,大多用 CVM 虚拟机。其用户接口较多。网络带宽有限,所以有很 多不同的简表。而其最大的特点就是支持浮点数。包含了所有 CLDC 中定义的类和接口。 CLDC(ConnectionLimitedDeviceConfiguration)有限连接设备配置。主要用于小型的 资源较小的设备中,针对内存小于 512Kb 的嵌入式系统。采用 KVM 虚拟机。其特点是很 多 J2SE 的类和接口没有实现,最大的特点就是不支持浮点数。比如银行的 POS 机,支持 浮点数,内存较大,肯定是 CDC 类的设备。而个人移动电话内存小,肯定不支持浮点数。 用的就是 KVM 虚拟机。 2.2.32.2.3 MIDPMIDP(MobileInformationDeviceProfileMobileInformationDeviceProfile)移动信息设备简表)移动信息设备简表 这里主要针对的是 CLDC 设备。包含 3 个生命周期和事件处理等机制。Paused 状态: 程序处于暂停状态,方法:pauseApp();Actived 状态:程序处于运行活动状态。方法 startApp()Destroy 状态:程序运行销毁结束前的状态。DestroyApp();MIDP 包含其他事 件处理状态和机制。 山东劳动职业技术学院毕业设计总结 第 4 页 共 24 页 2.32.3 J2MEJ2ME 手机编程的常用类手机编程的常用类 2.3.12.3.1 DisplayDisplay 类类 Display 类代表了系统显示屏和输入设备的管理器,包含用来获取设备属性的方 法,以及要求在设备上显示对象的方法,其他处理设备的方法主要应用在 Canvas 对象。 Display 类直接从所有的祖先类 Object 继承而来。 2.3.22.3.2 CanvasCanvas 类类 为了能有程序开发人员控制接口的外观和行为,需要使用大量的初级用户接口类, 尤其在游戏程序中,几乎完全依赖的就是 Canvas 抽象类进行绘图。从程序开发的观点看, Canvas 类可与高级 Screen 类交互,程序可在需要时在 Canvas 中掺入高级类的组件。 Canvas 提供了键盘事件、指点杆事件(如果设备支持) ,并定义了允许将键盘按键映射 为游戏控制键的函数。键盘事件由键代码指定,但这样控制游戏会导致缺乏通用性,并 不是每个设备的键盘布局都适合游戏的操作。应当将键代码转换为游戏键的代码,以便 硬件开发商能定义他们自己的游戏键布局。 2.3.32.3.3 GraphicsGraphics 类类 Graphics 是图形处理的基础类,提供了简单的 2D 绘图功能。使用 Graphics 类 可以在屏幕上绘制图片、线条、文字等多种低级的界面。它具有 24 位深度色彩的绘制 能力,以三原色分别各占一个字节表示其颜色。程序只能在 paint() 函数中使用 Graphics 绘制, GameCanvas 可调用 getGraphics()函数直接绘制在缓冲区上,可以在 任何时间请求传输到前台。其对象会被传给 Canvas 的 paint()函数,以便最终显示。 2.3.42.3.4 RMSRMS 记录管理系统记录管理系统 移动信息设备框架(Mobile Information Device Profile)和 移动 Java 应用程 序的平台 为 MIDP 应用程序提供一种跨多个调用持久存储数据的机制。这种持久存储机 制可以被视为一种简单的面向记录的数据库模型,被称为记录管理系统(record management system(RMS) ) 。通过这种机制,MIDlet 能够持久存储数据,并在以后检索 数据。在面向记录的方法中,J2ME RMS 由多个记录存储构成。 可以将每个记录存储想像成一个记录集合,它将跨多个 MIDlet 调用持久存在。设 山东劳动职业技术学院毕业设计总结 第 5 页 共 24 页 备平台负责在平台正常使用的整个过程(包括重新启动、换电池等)中,尽全力维护 MIDlet 的记录存储的完整性。 记录存储在与平台相关的位置(比如非易失性设备存储器)创建,这些位置不直接 公开给 MIDlet。RMS 类调用特定于平台的本机代码,这种本机代码使用标准 OS 数据管 理器函数来执行实际的数据库操作。 记录存储实现确保所有单个的记录存储操作都是原子的、同步的以及序列化的,因 此多个访问将不会出现数据毁坏。记录存储被盖上时间戳来指示它上次被修改的时间。 记录存储还维护版本(version) ,它是一个整数,修改记录存储内容的操作每发生一次, 这个数加一。版本和时间戳对于同步目的很有用。 当 MIDlet 使用多个线程访问一个记录存储时,协调该访问是 MIDlet 的责任;如 果它不能这样做,可能出现无法意料的结果。同样,如果一个平台使用试图同时访问记 录存储的多个线程执行记录存储的同步,那么对 MIDlet 及其同步引擎之间的记录存储 实施排外访问是平台的责任。 记录存储中的每个记录是一个字节数组,并且有唯一的整数标识符。 2.42.4 MIDletMIDlet 应用程序的生命周期应用程序的生命周期 理解 J2ME 的体系结构并不像想象的那么容易,我们觉得读更多的资料帮助也不大, 我们直接迈向 J2ME 开发也许会对你理解 J2ME 平台体系结构这个重要的概念有所帮助。 在 MIDP 中定义了一种新的应用程序模型 MIDlet,它是被 Application Management Software(AMS)管理的。AMS 负责 MIDlet 的安装、下载、运行和删除等操作。在被 AMS 管理的同时,MIDlet 可以和应用管理软件通信通知应用管理软件自己状态的变化,通常 是通过方法 notifyDestroyed()和 notifyPaused()实现的 MIDlet 有三个状态,分别是 pause、active 和 destroyed。在启动一个 MIDlet 的时 候,应用管理软件会首先创建一个 MIDlet 实例并使得他处于 pause 状态,当 startApp() 方法被调用的时候 MIDlet 进入 active 状态,也就是所说的运行状态。在 active 状态调 用 destroyApp(boolean unconditional)或者 pauseApp()方法可以使得 MIDlet 进入 destroyed 或者 pause 状态。值得一提的是 destroyApp(boolean unconditional)方法, 事实上,当 destroyApp()方法被调用的时候,AMS 通知 MIDlet 进入 destroyed 状态。在 destroyed 状态的 MIDlet 必须释放了所有的资源,并且保存了数据。如果 unconditional 为 false 的时候,MIDlet 可以在接到通知后抛出 MIDletStateChangeException 而保持 山东劳动职业技术学院毕业设计总结 第 6 页 共 24 页 在当前状态,如果设置为 true 的话,则必须立即进入 destroyed 状态。图 2 说明了 MIDlet 状态改变情况: 图 2 MIDlet 生命周期 山东劳动职业技术学院毕业设计总结 第 7 页 共 24 页 第三章第三章 俄罗斯方块游戏设计与制作俄罗斯方块游戏设计与制作 3.13.1 游戏的具体设计流程游戏的具体设计流程 3.1.13.1.1 俄罗斯方块游戏简述俄罗斯方块游戏简述 俄罗斯方块是个老幼皆宜的小游戏,它是由四块正方形的色块组成,然后存储在一 个数组的四个元素中,由计算机随机产生七种不同形状的方块,然后玩家可以根据键盘 的四个方向键控制翻转、向左、向右和向下的操作来堆叠成各种不同的形状。 (控制键的 实现是由键盘的方向键的事件处理实现) 3.1.23.1.2 游戏操作流程游戏操作流程 本游戏的操作流程非常简单,用户启动 MIDlet 后,进入游戏运行界面,选择“帮助” 进入游戏帮助界面,选择“退出游戏”则退出整个游戏。在游戏运行界面,当用户想暂 停游戏时,按下#按钮,游戏就暂停了,在暂停的情况下按#按钮,游戏继续运行。 在游戏结束界面按下“最高分”按钮进入最高分界面任何时候点击 退出按钮,游戏 MIDlet 都会终止。如图 3 所示: 山东劳动职业技术学院毕业设计总结 第 8 页 共 24 页 图 3 游戏框架 3.1.33.1.3 系统设计思想系统设计思想 MIDP 的游戏设计,本质上就是用一个线程或者定时器重绘事件,用线程和用户输入 改变游戏状态。这个俄罗斯方块也不例外,当启动 MIDlet 以后,就立即生成一个重绘线 程,该线程每隔几 ms 就重新绘制一次屏幕。当然重绘时有一些优化措施,并不是屏幕上 所有的像素都需要重绘,而是有所选择。比如游戏画布上那些已经固定下来的下坠物 (下坠物有 7 种,由 4 个小砖块组成,可以上下左右旋转变形)就不需要重绘。游戏画 布是一个 CommandListener,可以接收用户键盘输入命令:控制下坠物的左移、右移、加 速下落、变形旋转动作。 山东劳动职业技术学院毕业设计总结 第 9 页 共 24 页 图 4 游戏控制流程 整个游戏的控制流程体现在游戏画布的 paint()方法里,paint()根据当前的游戏 状态,绘制出当时的游戏画面。而暂停画面的绘制,是通过设立标志,让 paint ()无需 真正的执行重绘动作。对于游戏处于运行状态的画面绘制,则需要在下坠物当前位置绘 制下坠物。在绘制下坠物之前,判断下坠物是否还能下坠,如果能下坠就让它下落一格, 再进行绘制,如果下坠物不能下坠,则把下坠物固定下来,同时检查游戏画布上下坠物 当前下面所有的行,看是否能进行删行动作,如果需要进行删行动作,则清楚游戏画布 上被删行的数据,再把删行之上的所有行都下移一行,然后再初始化一个新的下坠物。 如果不需要删除行,则判断游戏是否处于结束状态,如果是处于结束状态,则设置游戏 状态为 GAME_OVER 状态,这样画布在下一次重绘时就给出游戏结束的画面。如果不是处 下坠物能否下坠 下坠物下 坠一格 在当前位置绘 制下坠物 固定下坠物 是否需要删除行 重绘游戏地图 初始化一个新 的下坠物 游戏是否结束 绘制游戏结束画面 绘制新 下坠物 游戏处于运行状态 是 是 否 否 否 是 游戏处于暂停状态游戏处于结束状态 结束游戏 执行空操作 山东劳动职业技术学院毕业设计总结 第 10 页 共 24 页 于 GAME_OVER 状态,则绘制新下坠物,然后判断下坠物能否下坠,重复以上动作。 3.1.43.1.4 系统设计主要功能系统设计主要功能 从游戏的基本玩法出发,主要就是俄罗斯方块的形状和旋转,我们在设计中在一个 图片框中构造了一个 4*4 的网状小块,由这些小块组合成新的形状,每四个小块连接在 一起就可以构造出一种造型,本游戏总共设计了 7 种造型,每种造型又可以通过旋转而 变化出 4 种形状,利用随机函数在一个预览窗体中提前展示形状供用户参考,然后将展 示的形状复制到游戏窗体中进行摆放,在游戏窗体中用户就可以使用键盘的方向键来控 制方块的运动,然后利用递归语句对每一行进行判断,如果有某行的方块是满的,则消 除这行的方块,并且使上面的方块自由下落,其中,方块向下的速度是由时钟控件控制 的,在游戏中,用户也可以使用向下键加快下落速度,定义一个变量,对消除的函数进 行记录,最后就可以得出用户的分数,用判断语句对得分进行判断,当达到一定的积分 时游戏难度就会增加。 俄罗斯方块游戏设计的主要步骤包括以下 5 个方面: 1. 游戏界面的设计,以及游戏方块的造型 游戏界面分两大部分,左侧为游戏容器,为游戏运行提供空间;右侧用来显示得分、 游戏难度及下一个下坠物。 游戏方块本质上为 16 个小砖块组成的正方形,一共有七种,如“田”字形、 “L”字 形等。每种方块一共有四种旋转变化,程序中是用 16 进制表示的这些方块,这些用 16 进制表示的方块可以换算成用一个 4×4 的二维数组来存储每种方块的一种状态。在有色 砖块出现的位置,值为 1,而只有背景颜色,无需绘制的位置,值为 0。如图 5 所示为长 条形: 图 5 方块模型 2. 俄罗斯游戏方块的旋转和运动控制 该游戏方块的运动由键盘的方向键控制,左键表示让方块向左移动,右键表示让方 块向右移动,向下的方向键让方块加速下落,上键及中间键实现游戏方块的旋转变化。 3. 俄罗斯游戏方块的颜色选择 山东劳动职业技术学院毕业设计总结 第 11 页 共 24 页 该游戏中的 4 种方块都是固定的颜色,每种方块一种颜色。 4. 俄罗斯方块的自动消行功能和计分功能 游戏中当方块填满一行时便可以消行,每消去一行分数增加 1,同时消去的行数越多, 分数增长的越快。 5. 游戏的自动升级功能 该游戏设置的游戏等级是自动增加的。当玩家达到一定的分数时,游戏等级上升, 当然游戏难度也会上升 山东劳动职业技术学院毕业设计总结 第 12 页 共 24 页 3.23.2 游戏代码分析游戏代码分析 图 6 游戏开始界面 开始游戏界面部分程序代码: public GameScreen(RussiaBoxMIDlet midlet) this.midlet = midlet; / 获取屏幕大小 screenWidth = getWidth(); screenHeight = getHeight(); 山东劳动职业技术学院毕业设计总结 第 13 页 共 24 页 / 添加屏幕命令 exitCommand = newnew Command(“退出“, Command.EXIT, 1); newGameCommand = newnew Command(“开始“, Command.SCREEN, 2); addCommand(exitCommand); addCommand(newGameCommand); / 侦听命令按键 setCommandListener(this); / 装载位图片段 try fangkuai = Image.createImage(“/fangkuai.png“); catch (Exception e) /* (非 Javadoc) * see javax.microedition.lcdui.CommandListener#commandAction(javax.microedition.lcd ui.Command, javax.microedition.lcdui.Displayable) */ public voidvoid commandAction(Command arg0, Displayable arg1) if (arg0 = exitCommand) timer.cancel(); isGameOver = truetrue; try / 退出 midlet.quit(); catch (MIDletStateChangeException e) 山东劳动职业技术学院毕业设计总结 第 14 页 共 24 页 / TODO 自动生成 catch 块 e.printStackTrace(); else ifif (arg0 = newGameCommand) / 开始游戏 initialize(); 山东劳动职业技术学院毕业设计总结 第 15 页 共 24 页 图 7 游戏运行中界面 private voidvoid initialize() / 初始化数据 for (i = 0; i = 0 /* * authorauthor Administrator * * TODOTODO 要更改此生成的类型注释的模板,请转至 * 窗口 首选项 Java 代码样式 代码模板 */ publicpublic classclass Square publicpublic intint ps_x = newnew intint4; publicpublic intint ps_y = newnew intint4; publicpublic intint type; 山东劳动职业技术学院毕业设计总结 第 17 页 共 24 页 图 8 游戏结束界面 游戏结束界面全部代码: import java.util.TimerTask; import javax.microedition.lcdui.Font; import javax.microedition.lcdui.Graphics; public class Thinking extends TimerTask private static final int WHITE = 0x00FFFFFF; 山东劳动职业技术学院毕业设计总结 第 18 页 共 24 页 private static final int BLACK = 0x00000000; private int i = 0; private int j = 0; public GameScreen gameScreen; public Thinking(GameScreen screen) this.gameScreen = screen; /* (非 Javadoc) * see java.util.TimerTask#run() */ public void run() / 是否不能再往下落了 for (i = 0; i = 0; i-) / y shaft for (j = 0; j = 0; i-) / 消去这一行 if (flagi = true) gameScreen.Score = gameScreen.Score + 100; for (j = 0; j = 0; i-) / 这行没有消去,进行下落处理 if (flagi = false) int temp = i + 1; int offset = 0; while (temp gameScreen.SQUARE_AMOUNT) if (flagtemp = true) offset+; temp+; for (j = 0; j gameScreen.SQUARE_AMOUNT; j+) if (gameScreen.IsFilledji = true) int ptx = j * 山东劳动职业技术学院毕业设计总结 第 22 页 共 24 页 gameScreen.UNIT_SIZE; int pty = i * gameScreen.UNIT_SIZE; / 白色清空画布 gameScreen.graph.setColor(WHITE); / 擦除上次停留位置 gameScreen.graph.fillRect(ptx, pty, gameScreen.UNIT_SIZE, gameScreen.UNIT_SIZE); gameScreen.graph.drawImage(gameScreen.fangkuai, ptx, pty + offset * gameScreen.UNIT_SIZE, 0); gameScreen.IsFilledji = false; gameScreen.IsFilledji + offset = true; / 产生新的方块组合 gameScreen.isNextOne = true; gameScreen.repaint(); return; / 擦除背景 gameScreen.erasebackground(); 山东劳动职业技术学院毕业设计总结 第 23 页 共 24 页 / 移动方块 for (i = 0; i 4; i+) gameScreen.sq.ps_yi = gameScreen.sq.ps_yi + 1; gameScreen.graph.drawImage(gameScreen.fangkuai,gameScreen.sq.ps_xi * gameScreen.UNIT_SIZE, gameScreen.sq.ps_yi * gameScreen.UNIT_SIZE, 0); / 没有落到底时不产生新的方块组合 gameScreen.isNextOne = false; gameScreen.repaint(); 结结 论论 本论文从分析、设计到实现,揭示了一个手机俄罗斯方块游戏开发的一般过程。本 文主要介绍了使用低级界面函数如 Canvas 等,进行基本的游戏开发,使用这些基本的知 识可以全面的熟悉和了解游戏构造的基本原理,俄罗斯方块手机游戏是手机游戏代表作 中最为典型的一个,并且实现起来并不复杂,对系统的掌握、J2ME 开发的流程也很有作 用。通过研究俄罗斯方块游戏的设计和实现过程,也是为以后构造自己的游戏引擎做最 好的基石铺垫。 毕业设计是对大学所学知识的一次全面检验,通过本次毕业设计使我了解到理论与 实践结合的重要性,同时也看到自己的不足。在以后的人生道路上,要不断探索求知, 不断自我完善,使自己成为一名合格的 IT 人才。 山东劳动职业技术学院毕业设计总结 第 24 页 共 24 页 致谢致谢 在论文结束之际,我要对我的指导老师表示衷心的感谢。在整个论文写作过程中, 我始终得到了吕树红老师的悉心指导。她一丝不苟的工作态度和对学生的认真负责的态 度使我受益匪浅。通过这一阶段的努力,我的毕业论文终于完成了,这意味着大学生活 即将结束。在大学阶段,我在学习上和思想上都得到了极大的提高,这除了自身的努力 外,与各位老师、同学和朋友的关心、支持和鼓励是分不开的。 在本论文的写作过程中,陈老师倾注了大量的心血,从选题到开题报告,从写作提 纲,到一遍又一遍地指出论文中的具体问题,严格把关,循循善诱,在此我表示衷心感 谢。同时我还要感谢在我学习期间给我极大关心和支持的各位老师以及关心我的同学和 朋友。 写作毕业论文是一次系统学习的过程,毕业论文的完成,同样也意味着新的学习生 活的开始。感谢所有任课老师和所有同学在这三年来给自己的指导和帮助,是他们教会 了我专业知识,教会了我如何学习,教会了我如何做人。正是由于他们,我才能在各方 面取得明显的进步,在此向他们表示我由衷的谢意,并祝所有的老师培养出越来越多的 优秀人才,桃李满天下! 参考文献参考文献 1. 朱海华,卢颖.基于 J2ME 的手机游戏系统的实现.北京:中国电力出版社, 2005 2陈小玉,杨新锋.基于 J2ME 的 Java 手机游戏开发技巧.电脑编程技巧与维护, 2006 3. 汪永松.J2ME 手机高级编程.北京:机械工业出版社,2010 4. 王勇,周必水.基于 J2ME 的手机游戏程序的几个实现技巧.计算机时代,2009 5. 张晓蕾.J2ME 手机游戏设计案例教程.北京:人民邮电出版社,2010 6. 温尚书.J2ME 无线通信实用案例教程.北京: 清华大学出版社,2009

    注意事项

    本文(软件技术毕业设计(论文)-J2ME俄罗斯方块游戏设计.doc)为本站会员(小小飞)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开