猫和老鼠跑酷游戏
开发背景
模拟Google浏览器中离线小恐龙跑酷游戏,设置的猫和老鼠跑酷游戏。用户按空格键控制Jerry向前奔跑,Tom在后面追赶,躲避沿途中Tom设置的障碍(老鼠夹和叉子),跑的越远,得分就越高。通过Java语言完成这款小游戏。
模块设计
人物类
利用刷新帧,是游戏中的物体运动起来。
背景图片
利用两张图进行滚动,使跑酷效果更加逼真。
设置滚动速度,让两张图交替向左移动。
roll()方法就是让背景持续滚动,该方法交给游戏面板调用,每帧都让背景滚动一次。只需让两张图片的横坐标不断递减,当任何一张图片移除画面后,即立刻回到右侧最开始的地方,准备下一轮滚动。
障碍类
调用Random()函数随机创建障碍物。当jerry跳跃过障碍物,设置障碍物删除,减轻程序计算压力。
关键模块
碰撞测试
java.awt.Rectang类提供intersects(Rectangle r)方法来判断两个边界是否发生了交汇。
键盘监听
把键盘监听事件添加到主窗体对象中
计分器成绩框
计分器用一个静态的整型数组记录前三名的成绩,当打破纪录,会立即更新数组的数据。
音效设计
利用Java jdk中自带的javax.sound.sampled包中的相关类别,输入音乐流实现播放声音效果。使用的音乐文件均为WAVE格式。
实现效果
缺点和问题
- 跳跃速度有点迟缓,不够敏锐。
- 障碍物和背景图色彩相似,难以察觉。
- 弹出成绩框,不能删除界面,要重新开始才可以删除界面
- 项目相对简单
附录源代码
JumpGame