第一范文网 - 专业文章范例文档资料分享平台

基于java的吃豆子小游戏开发-毕设论文

来源:用户分享 时间:2025/5/28 17:52:28 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

常州大学本科生毕业设计(论文)

游戏音乐算法流程图

背景音乐播放控制的算法流程如图5-4所示: 开始 背景音乐播放控制线程 否 是否处在 是否接受到 暂停状态 恢复信息 是 否 是 播放背景音乐 接受到停止信息

结束

图5-4 背景音乐播放控制流程图

第 20 页 共41页

20

5.4

常州大学本科生毕业设计(论文)

6详细设计

6.1主界面设计

由于这个程序的界面并不是很复杂,所以用到的控件也不多,主要核心内容还是后台的代码设计。根据数组元素值,来显示图片。

①色彩上:总结人们的视觉习惯和色彩对眼睛的健康影响,决定对于画布采用黑色背景,神秘而大方;左边的控制区中墙体采用类似砖头的颜色的图片,配合左边纯黑的背景,是的空间显得更大更有立体感。

②功能上:背景就是窗体,右侧是一个groupbox[18]控件,用来显示生命值和得分情况, 游戏主界面截图,如图6-1所示:

图6-1开始界面

游戏主界面的程序,代码如下:

public class Packman extends JApplet implements KeyListener, ActionListener{ private Ticker t;//定义了一个ticker的对象t

private Image offScreenImage;//定义了一个图片对象offScreenImage //定义吃豆者

private Player player; //定义四个敌人

private Enemy Red, Cyan, Pink, Orange; private int health, Scores; //健康值与分数 private boolean gameover; //游戏是否结束

第 21 页 共41页

21

常州大学本科生毕业设计(论文)

private boolean gameStarted; //游戏是否开始 private int alarmTime;//敌人失去反抗的时间 private boolean alarm;//是否失去反抗能力 private boolean UP_TYPED, DOWN_TYPED, LEFT_TYPED, RIGHT_TYPED;//是否能够向上,向下,向左,向右 private Image[] WALL; //定义墙 private AudioClip[] SOUND;//定义音乐 private Wall[] wall;//定义墙的数组 private Gold[] gold; //定义豆子的数组 private int gameFlow;

private boolean levelComplete;//是否升级

g.setColor(Color.white);//设置颜色为白色 g.drawString(\生命: \ g.drawString(\积分: \ if(!gameStarted){//游戏没开始

g.setColor(Color.cyan);//绘制开始这几个字的颜色 g.drawString(\ 按空格开始\ 153, 273);

}

if(gameover && gameFlow > 100){ g.setColor(Color.red); g.drawString(\游戏结束\ 179, 238); } }

public void keyPressed(KeyEvent e)//定义一个键盘输入 if(e.getKeyCode() == KeyEvent.VK_SPACE){ SOUND[6].play(); gameStarted = true; //点击“空格”,游戏开始 }

if(e.getKeyCode() == KeyEvent.VK_UP){

player.ChangeDirection(0); //点击方向键,执行相应的操作 UP_TYPED = true;

DOWN_TYPED = false; LEFT_TYPED = false;

RIGHT_TYPED = false;

第 22 页 共41页

22

常州大学本科生毕业设计(论文)

}

if(e.getKeyCode() == KeyEvent.VK_DOWN){ player.ChangeDirection(1); UP_TYPED = false; DOWN_TYPED = true; LEFT_TYPED = false; RIGHT_TYPED = false; }

if(e.getKeyCode() == KeyEvent.VK_LEFT ){ player.ChangeDirection(2); UP_TYPED = false; DOWN_TYPED = false; LEFT_TYPED = true; RIGHT_TYPED = false; }

if(e.getKeyCode() == KeyEvent.VK_RIGHT){ player.ChangeDirection(3); UP_TYPED = false; DOWN_TYPED = false;

LEFT_TYPED = false; RIGHT_TYPED = true; } }

public void keyReleased(KeyEvent e){} public void keyTyped(KeyEvent e){} public void update(Graphics g) { Graphics offScreenGraphics; if (offScreenImage == null) {

offScreenImage = createImage(545, 482); //返回创建一幅用于双缓冲的、可在屏幕外绘制的图像。

//如果组件是不可显示的,则返回值可能为 null。 }

offScreenGraphics = offScreenImage.getGraphics();

offScreenGraphics.setColor(Color.white); offScreenGraphics.fillRect(0, 0, 545, 482);

第 23 页 共41页

23

基于java的吃豆子小游戏开发-毕设论文.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c5copw2tedu4bptb11x4w7g2499ip7300moe_7.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top