timestamp = e.timestamp;
}
public void onAccuracyChanged(Sensor s, int accuracy) { }
};
sensorMgr.registerListener(lsn, sensor,
SensorManager.SENSOR_DELAY_GAME);
7.6 背景音乐模块实现
背景音乐的播放使用Adnroid自带的MediaPlayer,首先要初始化一些数据并取得系统音频服务。
public void initSounds(Context context) {
soundPool = new SoundPool(25, AudioManager.STREAM_MUSIC, 100);
soundPoolMap = new HashMap<Integer, Integer>();
AudioManager mgr = (AudioManager) context
.getSystemService(Context.AUDIO_SERVICE);
streamVolume = mgr.getStreamVolume(AudioManager.STREAM_MUSIC);
}
当需要播放音频时,指定向MediaPlayer指定要播放的音频以及循环模式,就可以播放。
public void play(int sound, int uLoop) {
soundPool.play(soundPoolMap.get(sound), streamVolume, streamVolume, 1,
uLoop, 1f);
}
如此,便可在游戏中以不间断方式播放背景音乐,在恰当的时候播放各种音效,例如当选择一张卡片时应播放的音效,成功消除两张卡片时的音效等。
8 结论
本课题的任务——基于Android平台的连连看手机游戏——已经设计并实现,功能上实现了开题报告中所列的所有要求功能,从地图生成算法、难度控制到蓝牙对战、道具等功能均圆满完成并可正常工作。
经过简单测试发现本游戏软件可以正常工作,并且当初设计的测试项目也都得以通过。例如当关卡较小时地图只用到全部规模的部分,对于可能出现的下标越界异常做了一些随机测试,发现得到了很好的处理。
每次在遇到困难的时候,我也得到了同学的帮助,共同商量相关专业问题,这种交流对于即将面临毕业的我们来说是一次很有意义的经历,大学四年都一起走过了,在最后我们可以聚在一起讨论学习,研究专业问题,进而更好的了解我们每个人的兴趣之所在,明确我们的人生理想,进而在今后的生活和工作中更好的发挥自己的优势,学好自己选择的这项专业技术,让自己在这条路上的明天会更好。
本课题尚存不足。首先是UI的设计实现,由于时间的关系,并没有过多地去设计UI,只是完成了满足功能需要的UI,也没有过多华丽的装饰。
如果有时间对课题尚存的不足之处进行进一步的工作,将会使课题成效更好。
之前我也曾设想过制作安卓吃豆人游戏,吃豆人设计结构如图8.1所示:
游戏输赢智能判断 逻辑判断模块 怪物人工智能追踪玩家逻辑
玩家场景碰撞逻辑
背景音效处理
吃豆人结构 音效处理模块 吃豆子音效处理
输赢音效处理地图绘制
场景控制模块 玩家交互控制
怪物追踪控制
图8.1 吃豆人设计结构图
但在怪物人工智能模块的算法上没有任何经验,无法实现怪物智能追踪玩家的功能,在场景碰撞模块也出现了很多问题,经常出现明明吃到了豆确无法判定成功的情况。最后无奈之下智能放弃了吃豆人游戏的制作,重新选择了连连看这种相对算法简单不涉及场景碰撞的游戏,但我希望在今后的学习能够日益完善自己的编程能力,最终完成吃豆人游戏。 Android安卓手机游戏连连看设计(10):http://www.751com.cn/jisuanji/lunwen_3518.html