Java实训报告greenfoot游戏制作.doc
- 文档编号:1203501
- 上传时间:2022-10-18
- 格式:DOC
- 页数:14
- 大小:271KB
Java实训报告greenfoot游戏制作.doc
《Java实训报告greenfoot游戏制作.doc》由会员分享,可在线阅读,更多相关《Java实训报告greenfoot游戏制作.doc(14页珍藏版)》请在冰豆网上搜索。
《Java实训报告》
——Greenfoot游戏程序设计
班级:
微应1211
成员:
胡文亚
吴桐
安徽水利水电职业技术学院
第一部分
1.1设计目的 2
1.2设计要求 2
1.3实现功能 2
1.4界面设计 3
第二部分
2.1开发平台 3
2.2环境搭配 4
第三部分
3.1Space代码 4
3.2Obstacle代码 6
3.3SmoothMover代码 7
3.4Body代码 11
第四部分心得体会
第一部分
1.1设计目的
Greenfoot是针对那些想让自己熟悉如何使用JAVA的人而设计的,是一个功能完整的开发环境,可以使用Java方便地编写游戏和进行模拟。
我们设计的是一款简单易操作的游戏,我们希望能通过自己的所学知识把它分析开来,真正的了解它的本质。
虽然我们的编程能力不是很强,但是我们组有信心,通过本学期对JAVA语言程序设计的学习,经过老师对greenfoot软件的介绍及实际举例、耐心的讲解,我们可以试着用greenfoot来制作简单的小游戏了,虽然不娴熟还有待提高,但是一些技术含量较低的小游戏还是很容易让我们掌握的。
此次游戏程序设计的目的,主要是通过greenfoot来制作游戏来更好的掌握java语言。
通过greenfoot这个平台,熟习greenfoot在制作游戏方面所需要的技巧,将自己的游戏尽可能多的运用所学到的技术,并且将在平时java课程上面学到的知识付诸于实践,并从实践和实际的项目中提高自己的编程能力。
找出自己的不足之处进行弥补。
1.2设计要求:
这次实训任务的课程设计的要求是选择greenfoot软件作为我们游戏编程的平台。
因为我们平时学习的就是java语言,而greenfoot便是一个以Java语言为基础的游戏开发平台,所以在编程的过程中能够提高效率,也让我对java语言和greenfoot之间衔接的关系有了更深了解,同样,也让我更加熟习了这个游戏开发平台的环境。
1.3实现功能
此款《疯狂之音》游戏的设计思路就是解放双手的弹奏,通过向空白处随意放入不同颜色、不同大小的球,当球下落和上升时触碰到黄色板块会触发出不同的音调,当多个声音同时出现时能够准确的分辨出来。
就成为了一首自己创作的优美神曲,并给大家带来娱乐,为听者增加不少乐趣。
1.4界面设计
第二部分
2.1开发平台
greenfoot是一个以Java语言为基础的游戏开发平台,编程的过程中能够提高效率,而且对象的可视化和对象的交互性比较清晰。
2.2环境配置
1、计算机的环境变量需要设置,计算机需要安装JDK版本为1.6。
由于greenfoot需要绑定JDK。
2、greenfoot的安装,需要到官网上下载正确的greenfoot版本,安装后需要测试时候可以使用,是否与JDK绑定。
第三部分
3.1Space代码
importgreenfoot.*;//(World,Actor,GreenfootImage,GreenfootandMouseInfo)
importjava.awt.Color;
publicclassSpaceextendsWorld{
privateString[]soundFiles={"2c","2d","2e","2f","2g","2a","2b","3c","3d","3e","3f","3g","3a","3b"};//十四个声音档
/**
*对于类空间对象的构造函数。
*/
publicSpace(){
super(960,620,1);
createObstacles();
randomBodies(5);//初始球的数量
}
/**
*创建一个排在我们的世界中的障碍。
*/
publicvoidcreateObstacles(){
inti=0;
while(i addObject(newObstacle(soundFiles[i]+".wav"),80+i*60,310);//声音资源文件 i++; } } /** *创建一个给定的宇宙中的物体的数量。 每一个身体都有一个随机的初始状态(size大小,mass集中,direction方向,speed速度,color颜色,location位置).//世界里创建了一个给定的数量的球,每个球都有一个随机的初始状态 */ publicvoidrandomBodies(intnumber){ while(number>0){ intsize=20+Greenfoot.getRandomNumber(30);//从一组数据中随机取出一定数量的随机数 doublemass=size*7.0; intdirection=Greenfoot.getRandomNumber(360);//方向 doublespeed=Greenfoot.getRandomNumber(150)/100.0;//速度 intx=Greenfoot.getRandomNumber(getWidth());//取宽度 inty=Greenfoot.getRandomNumber(getHeight());//取长度 intr=Greenfoot.getRandomNumber(255); intg=Greenfoot.getRandomNumber(255); intb=Greenfoot.getRandomNumber(255); addObject(newBody(size,mass,newVector(direction,speed),newColor(r,g,b)),x,y); number--; } } } 3.2Obstacle代码 importgreenfoot.*;//(World,Actor,GreenfootImage,GreenfootandMouseInfo) publicclassObstacleextendsActor{ privateStringsound; privatebooleantouched=false; /** *创建一个具有相关的声音文件的一个障碍。 */ publicObstacle(StringsoundFile){ sound=soundFile;//声音档 } /** *每一次循环,检查是否被击中。 如果我们发挥我们的声音。 */ publicvoidact() { Actorbody=getOneIntersectingObject(Body.class); if(touched&&body==null)//不用触碰 { touched=false; setImage("block.png"); } elseif(! touched&&body! =null){//暂时的触碰 touched=true; setImage("block-light.png"); Greenfoot.playSound(sound);//播放声音 } } publicvoidplaySound(){ Greenfoot.playSound(sound); } } 3.3SmoothMover代码 importgreenfoot.*;//(World,Actor,GreenfootImage,andGreenfoot) /** *一个变化的一个Actor,保持精确的位置(使用双打的坐标而不是整数)。 它还保持当*前的运动矢量的运动形式。 */ publicabstractclassSmoothMoverextendsActor{ privateVectormovement; privatedoubleexactX; privatedoubleexactY; publicSmoothMover(){ this(newVector()); } /** *创造新事物以给定的速度初始化的 */ publicSmoothMover(Vectormovement){ this.movement=movement; } /** *在当前的运动方向移动 */ publicvoidmove(){ exactX=exactX+movement.getX(); exactY=exactY+movement.getY(); super.setLocation((int)exactX,(int)exactY); } /** *设置位置使用精确坐标(double) */ publicvoidsetLocation(doublex,doubley){ exactX=x; exactY=y; super.setLocation((int)x,(int)y); } /** *设置的位置。 重新定义标准的Greenfoot方法来确定 *确切的坐标更新同步 */ publicvoidsetLocation(intx,inty){ exactX=x; exactY=y; super.setLocation(x,y); } /** *返回确切的x */ publicdoublegetExactX(){ returnexactX; } /** *Returntheex
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 报告 greenfoot 游戏 制作