Hi,
I have some languages specific textures, for (es, en , ru, etc…) and I want it to change the language use by the application on the fly. It is possible with cocos2d-html5?
I have a loader function that loads the language required on startup, and I can call it everytime I need to change the resources, but the second time the textures doesn’t work.
Is anything I can do to change ES textures to EN or other languages on the fly? this is the method I use to load the textures on the fly
cargaMenu: function(){
var res;
var res2;
switch(_lang){
case "da":
res = [ { src:JS.Langs.MENU_LANG_DA } ];
res2 = JS.Langs.MENU_LANG_DA;
break;
case "de":
res = [ { src:JS.Langs.MENU_LANG_DE } ];
res2 = JS.Langs.MENU_LANG_DE;
break;
case "en":
res = [ { src:JS.Langs.MENU_LANG_EN } ];
res2 = JS.Langs.MENU_LANG_EN;
break;
case "es":
res = [ { src:JS.Langs.MENU_LANG_ES } ];
res2 = JS.Langs.MENU_LANG_ES;
break;
case "fr":
res = [ { src:JS.Langs.MENU_LANG_FR } ];
res2 = JS.Langs.MENU_LANG_FR;
break;
case "it":
res = [ { src:JS.Langs.MENU_LANG_IT } ];
res2 = JS.Langs.MENU_LANG_IT;
break;
case "jp":
res = [ { src:JS.Langs.MENU_LANG_JA } ];
res2 = JS.Langs.MENU_LANG_JA;
break;
case "nl":
res = [ { src:JS.Langs.MENU_LANG_NL } ];
res2 = JS.Langs.MENU_LANG_NL;
break;
case "pt":
res = [ { src:JS.Langs.MENU_LANG_PT } ];
res2 = JS.Langs.MENU_LANG_PT;
break;
case "ru":
res = [ { src:JS.Langs.MENU_LANG_RU } ];
res2 = JS.Langs.MENU_LANG_RU;
break;
case "tr":
res = [ { src:JS.Langs.MENU_LANG_TR } ];
res2 = JS.Langs.MENU_LANG_TR;
break;
case "zh":
res = [ { src:JS.Langs.MENU_LANG_ZH } ];
res2 = JS.Langs.MENU_LANG_ZH;
break;
default:
res = [ { src:JS.Langs.MENU_LANG_EN } ];
res2 = JS.Langs.MENU_LANG_EN;
}
//load resources
cc.LoaderScene.preload(res, function () {
JSLog("Cargado lenguaje "+_lang);
cc.SpriteFrameCache.getInstance().addSpriteFrames(res2);
// initialize director
var director = cc.Director.getInstance();
director.replaceScene(new MenuScene());
}, this);