游戏程序设计报告_第1页
游戏程序设计报告_第2页
游戏程序设计报告_第3页
游戏程序设计报告_第4页
游戏程序设计报告_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

上海上海 xxxxx 游戏程序设计游戏程序设计 题题 目目: : 小鸡历险记 学学 号:号: 2008xxxx 姓姓 名:名: xxxx 院院 系:系: 计算机与信息工程学院 专业年级:专业年级: 软件工程 2008 级 1 2011 年年 6 月月 3 日日 第一章第一章 引言引言.1 1.1 研究背景.1 第二章第二章 需求分析与系统设计需求分析与系统设计.2 2.1 设计目的.2 2.2 设计要求.3 2.3 实现功能.3 2.4 界面设计.4 2.5 详细设计.4 2.6 结构模块.6 第三章第三章 开发平台及开发技术开发平台及开发技术.6 3.1 J2ME 基础知识.6 3.2 开发工具和环境搭配.6 3.2.1 开发工具 .6 3.2.2 环境搭配 .7 第四章第四章 模块具体实现以及主要动画触发解释模块具体实现以及主要动画触发解释.7 4.1 key 代码.7 4.2 electricity 代码.9 第五章第五章 心得体会心得体会.11 2 第一章第一章 引言引言 1.1 研究背景研究背景 Green foot 是针对那些想让自己熟悉如何使用 JAVA 的人而设计的,是一个 功能完整的开发环境,可以使用 Java 方便地编写游戏和进行模拟。它还可以被 用来作为 Java 语言的教程,以及设计网络游戏,可以实用于所有年龄段的用户, 而不仅仅是初学者。最主要的是 Green foot 和 BlueJ 系统一样,对任何用途 都是免费的。这个系统以及它的文档可以重新发布而不需要任何费用 ,为使用 和学习 JAVA 的朋友提供了一个很好的环境。 Greenfoot 可以认为是一个用 java 语言创建二维图形程序的框架和 IDE 的 结合体,很适合初学者使用。Greenfoot 支持 java 的全部特性,它特别适合练 习可视化组件的编程。在 Greenfoot 中,对象的可视化和对象的交互性是关键。 在 Greenfoot 的帮助之下一些软件游戏的开发变得很简单。我这次开发 的是一款益智类的游戏。 我希望通过自己的所学知识把它剖析开来,真正的 了解它的本质和精髓。虽然我的编程能力不是很强,但是我有信心,在这次学 习中我将从实践和实际的项目中提高自己的编程能力。 第二章第二章 需求分析与系统设计需求分析与系统设计 2.1 设计目的设计目的 通过本学期对游戏程序的研究,我们掌握了运用greenfoot 来制作游 戏的技术,虽然不娴熟还有待提高,但是一些技术含量较低的小游戏还是很 容易让我们掌握的。 此次游戏程序设计的目的,主要是通过greenfoot 来制作游戏来更好 的掌握 java 语言。通过 greenfoot 这个平台,熟习 greenfoot 在制作游戏 方面所需要的技巧,将自己的游戏尽可能多的运用所学到的技术,并且将在 3 平时 java 课程上面学到的知识付诸于实践,并从实际操作中,找出自己的 不足之处进行弥补。 每一次的课程设计,都是一次小小的软件工程,所以需要我们用百分百 的的态度来对待。对于小一点的程序,我们一个人足以应付,但是这并不是 说我们可以单独一个人为所欲为,其实质应该是通过课程设计来锻炼自己独 立自主的能力。而对于那些相对于麻烦的程序,就需要两个或者多个人来共 同完成,这便需要他们的协作能力,这样对他们以后进入软件公司发展有了 更多的基础。 2.2 设计要求设计要求 这次课程设计的要求并不像以往那么紧,老师让我们可以通过多个平台 和系统来制作游戏,包括电脑游戏和手机游戏,从sun 公司的手机开发平 台 WTK,到谷歌的安卓操作系统,只要我们喜好哪一个,并有能力完成就可 以了。 所以,这次我选择了 greenfoot 作为我游戏编程的平台。因为我平时 学习的就是 java 语言,而 greenfoot 便是一个已 Java 语言为基础的游戏 开发平台,所以,在编程的过程中不仅提高了效率,也让我对java 语言和 greenfoot 之间衔接的关系有了更深了理解,同样,也让我更加熟习了这个 游戏开发平台的环境。 2.3 实现功能实现功能 此次我的课程设计的游戏名称为: “小鸡历险记 ”。通过名字,我们 就可以看出,这是一个益智类的游戏。它的由来,是我根据超级玛丽的灵感 而生的。 超级玛丽这个游戏就是一个结合控制和脑力与一体的游戏,充分缓解玩 家的心情,让玩家在娱乐中找到成功。我的这游戏,玩家控制的便是一个类 似于超级玛丽的一个任务,他是以一个小鸡的模型组成的,具有一定的生命 值,一般都为 3。 4 接下来便是像超级玛丽这个游戏一样,在游戏中会出现一些移动的物体 和火球,这些便是敌人,玩家要按上、下、左、右,控制小鸡的方向。如果 躲闪不及时,便回减去一滴血,从而生命值便会减一个。随着关数的增加, 过关的难度也会随之增加。 这个游戏的特别之处: :可以选择不同的难度来挑战相同的关卡,以次增加游戏的可玩性; :没有死亡模式,这样可以让玩家通过多次的尝试之后来完成任务。 :有 BOSS 模式,玩家可以尝试击败 BOSS 来进入下一个关卡,增加 游戏的可玩性。 2.4 界面设计界面设计 这个程序是一个益智类的游戏,包括躲避敌人、杀死敌人。是一个单机 游戏,同一时刻只能有一位玩家进行游戏。 如如图图 1 1 5 2.5 详细设计详细设计 系统流程图: 游戏开局出现如图 1,然后进行难度的选择,再是关卡的选择,然后就可 以游戏了,如果失败那就继续游戏,直到成功为止。如果一直没有成功,上诉 循环过程。虽然是一直循环下去的,但是只要修改一下程序就可以修改。 6 2.62.6 结构模块结构模块 第三章 开发平台及开发技术 3.1 J2ME 基础知识 Green foot 是针对那些想让自己熟悉如何使用JAVA 的人而设计的 是 一个功能完整的开发环境,可以使用Java 方便地编写游戏和进行模拟。它 还可以被用来作为 Java 语言的教程,以及设计网络游戏,可以实用于所有 年龄段的用户,而不仅仅是初学者 最主要的是 Green foot 和 BlueJ 系统一样,对任何用途都是免费的。这 个系统以及它的文档可以重新发布而不需要任何费用 ,为使用和学习 JAVA 的朋友提供了一个很好的环境 . 3.2 开发工具和环境搭配 3.2.1 开发工具开发工具 Greenfoot 可以认为是一个用 java 语言创建二维图形程序的框架和 IDE 的结合体,很适合初学者使用。 Greenfoot 支持 java 的全部特性,它特别适 7 合练习可视化组件的编程。在 Greenfoot 中,对象的可视化和对象的交互性 是关键。 如果你知道 BlueJ 和 Microworld 这两个框架的话, Greenfoot 可以看作 他们的结合。 这个框架可以用来实现基于二维网格的很多程序。 greenfoot 的框架负 责两部分工作:简便的产生对象的图形化显示,按照模拟的路线运行。为了 实现这些功能, Greenfoot 框架提供了一个 GreenfootObject 基类,其他任何 想实现可视化的类都要继承他。必须执行的两个最重要的方法是: getImage()返回对象的图形, act()将在模拟路线中调用。 3.2.2 环境搭配环境搭配 (1) 计算机的环境变量需要设置,计算机需要安装 JDK 版本为 1.6。由于 GREEN FOOT 需要绑定 JDK。 (2) Green Foot 的安装,需要到官网上下载正确的 Green Foot 版本,安装后需要 测试时候可以使用,是否与 JDK 绑定。 第四章第四章 模块具体实现以及主要模块具体实现以及主要动画触发解释动画触发解释 4.1 key 代码代码 public class key extends Actor boolean bpickedup = false; boolean bremoved = false; private myWorld mworld; public void addedToWorld(World world) mworld = (myWorld) world; public void act() if (bremoved) return; findplayer(); picked(); private void findplayer() if (bpickedup) return; /if its already picked up then dont bother player neb = (player) getOneIntersectingObject(player.class); if (neb != null) 8 Greenfoot.playSound(keycollect.wav); bpickedup = true; private void findenemy() getOneObjectAtOffset(0,8,enemy.class); enemy mutantleg = (enemy) getOneIntersectingObject(enemy.class); if (mutantleg != null mutantleg.ys = -3; mutantleg.knockmeout(); Greenfoot.playSound(kick.wav); getWorld().addObject(new effect(), mutantleg.getX(),mutantleg.getY()- 8); 介绍 Key 这个类:首先这个类必须是继承 Actor 这个父类的,然后是 Finddoor 这个方法,先是一个判断:如果有 Key 则开门,反之则不开门,有 Key 方可进 入下一关卡。玩家必须拿到钥匙之后方可进入下一个关卡。 9 4.2 electricity 代码代码 public class electricity extends hazard boolean bRemoved = false; float xs, ys; int health = 22; float xx, yy; public electricity(boolean noeffect) xs = 0.1f * (float) (Greenfoot.getRandomNumber(16)- Greenfoot.getRandomNumber(16) ); ys = 0.1f * (float) (Greenfoot.getRandomNumber(16)- Greenfoot.getRandomNumber(16) ); health = 13; public electricity() xs = 0.1f * (float) (Greenfoot.getRandomNumber(40)- Greenfoot.getRandomNumber(40) ); ys = 0.1f * (float) (Greenfoot.getRandomNumber(40)- Greenfoot.getRandomNumber(40) ); public void addedToWorld(World world) yy = getY(); xx = getX(); 10 public void act() if (bRemoved) return; huntplayer(); xx += xs; yy += ys; setLocation( (int) xx,(int)yy); setRotation(Greenfoot.getRandomNumber(360); health-; if (health = 0) removeme(); private void removeme() if (bRemoved) return; bRemoved = true; getWorld().removeObject(this); 11 敌人自动寻找玩家,进行一些无规则的运动,如在攻击范围之内就会触发 electric 这 个类,敌人就会变化成后者这个形态,玩家要做的就是远离敌人攻击状态。 第五章第五章 心得体会心得体会 通过一个学期对 greenfoot 的学习,我基本掌握了 greenfoot 的比较 基础的编程方法。因为 greenfoot 是已 java 语言为基础的游戏制作平台, 其所有的语言标准和 java 的没有什么本质的不同,所以,通过以往对 java 的学习和认识,真正的操作起来,并不是很难着手。只要看了老师以前 给的那些视频,我觉得 greenfoot 这个软

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论