2015-02-23 56 views
0

在Cocos2d(android)我尝试在playEffect运行时关闭背景音量,而不是在playEffect结束后重新启动它。我有这样的代码:SimpleAudioEngine,背景音量减小playEffect然后备份

auto audio = SimpleAudioEngine::getInstance(); 

audio->playBackgroundMusic("sound/abc-theme.mp3", true); 

audio->setBackgroundMusicVolume(0.1); 

audio->playEffect("sound/airplane.mp3", false, 1.0f, 1.0f, 1.0f); 

audio->setBackgroundMusicVolume(1); 

的问题是,我不知道我怎么才能playEffect结束,这段代码“立即”设置背景音乐1.我怎么会放卷上背景音乐,以0.1的时间PlayEffect。

回答

0

我已经做了这样的

const float Delay=1.0f; 
this->runAction(Sequence::create(DelayTime::create(Delay),CallFunc::create(CC_CALLBACK_0(ABC::bgVolumeUp, this)),nullptr)); 

和功能

void ABC::bgVolumeUp(){ 

audio->setBackgroundMusicVolume(1); 

} 

基本上它类似的Pankaj建议。他给了我这个方法的想法。

1
auto audio = SimpleAudioEngine::getInstance(); 

audio->playBackgroundMusic("sound/abc-theme.mp3", true); 

audio->setBackgroundMusicVolume(0.1); 

audio->playEffect("sound/airplane.mp3", false, 1.0f, 1.0f, 1.0f); 

this->scheduleOnce(schedule_selector(LoadingScene::loadingCallBack), 1.0f); 

创建一个功能

void ClassName::loadingCallBack(){ 

audio->setBackgroundMusicVolume(1); 

}