@Cocos2d-x3.x实现播放游戏音效与手机震动(2016.12.1更新)
Cocos2d-x中振动的实现和SimpleAudioEngine声音的播放等类似,都算为一种简单的音效播放,只不过震动音效需要自己添加具体定义才能调用,具体添加以及调用方法如下:
1.调用的类中先包含头文件:
#include"SimpleAudioEngine.h"
2.播放音效与背景音乐:
//播放音效CocosDenshion::SimpleAudioEngine::getInstance()->playEffect("menu_bg.mp3");
// 背景音乐 CocosDenshion::SimpleAudioEngine::getInstance()->playBackgroundMusic("menu_bg.mp3",true);
但是SimpleAudioEngine默认没有振动函数vibrate()的定义,需要开发者自行添加,具体如下:
找到SimpleAudioEngine的.h头文件(可以通过按住command然后点任意一个有SimpleAudioEngine的地方跳到):
command同时点击其他已经定义的任意一个函数跳到SimpleAudioEngine的.m文件里实现vibrate的实现函数,实现代码如下:
//播放振动 void SimpleAudioEngine::vibrate() { AudioServicesPlaySystemSound(kSystemSoundID_Vibrate); }
3.震动调用:
之后就可以在需要的地方调用自己定义的振动函数实现手机振动了:
//手机振动(cocos2dx 2.x) SimpleAudioEngine::sharedEngine()->vibrate();(已弃用)
// 震动 CocosDenshion::SimpleAudioEngine::getInstance()->vibrate();