cocos2dx gaf 修改源码,让其默认播放声音

flash 有播放声音时,需要手动设置一个delgate.

可是我的客户端用的cocos js,为了图省事,直接修改源码

mark一下

以下补丁..

------------ frameworks/runtime-src/Classes/gafplayer/GAFAsset.cpp ------------
index e6c8ddf..0c75313 100644
@@ -11,7 +11,7 @@
 #include "GAFLoader.h"

 #include "json/document.h"
-
+#include "AudioEngine.h"
 NS_GAF_BEGIN

 //static float  _desiredCsf = 1.f;
@@ -97,6 +97,15 @@ GAFAsset* GAFAsset::create(const std::string& gafFilePath,GAFTextureLoadDelegat
     if (ret && ret->initWithGAFFile(gafFilePath,delegate,customLoader))
     {
         ret->autorelease();
+ //delgate sound
+ ret->setSoundDelegate([ret](GAFSoundInfo* sound,int32_t repeat,GAFSoundInfo::SyncEvent syncEvent){
+ std::string path = ret->getGAFFileName();
+ int slashPos = path.find_last_of("/");
+ path = path.substr(0,slashPos + 1);
+ path.append(sound->source);
+
+ cocos2d::experimental::AudioEngine::play2d(path,repeat == -1);
+ });
         return ret;
     }
     CC_SAFE_RELEASE(ret);

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...