SamsaraGame/assets/Script/game/SetRoleTitleUIMgr.js

70 lines
2.4 KiB
JavaScript
Raw Permalink Normal View History

2025-04-24 17:03:28 +08:00
let PanelName = 'SetRoleTitlePanel';
let GameDefine = require('./GameDefine');
const { default: SKDataUtil } = require('../ts/gear_2.3.4/util/SKDataUtil');
class SetRoleTitleUIMgr{
initTitles(data) {
this.roleData = data;
let roleTitles = JSON.parse(data.titles);
let tempList = SKDataUtil.clone(GameDefine.RoleTitleList);
this.roleTitles = [];
for(let i=0; i<roleTitles.length; i++) {
for(let j=0; j<tempList.length; j++){
if(roleTitles[i].titleid == tempList[j].id){
this.roleTitles.push(tempList[j]);
break;
}
}
}
}
showTitleList(){
let data = this.roleData;
this.mainUI = cc.find('Canvas');
let setRoleTitlePanel = this.mainUI.getChildByName(PanelName);
if(setRoleTitlePanel){
let panellogic = setRoleTitlePanel.getComponent('SetRoleTitleUI');
panellogic.initScrollViewTitle(data);
}else{
cc.loader.loadRes("Prefabs/SetRoleTitleUI", (err, prefab) => {
let setRoleTitlePanel = cc.instantiate(prefab);
if (setRoleTitlePanel) {
setRoleTitlePanel.name = PanelName;
setRoleTitlePanel.parent = this.mainUI;
let panellogic = setRoleTitlePanel.getComponent('SetRoleTitleUI');
panellogic.initScrollViewTitle(data);
}
});
}
}
onRoleTitleChanged(data){
this.mainUI = cc.find('Canvas');
let setRoleTitlePanel = this.mainUI.getChildByName(PanelName);
if(setRoleTitlePanel){
let panellogic = setRoleTitlePanel.getComponent('SetRoleTitleUI');
panellogic.changeBtnLoadStatus(data);
}else{
cc.loader.loadRes("Prefabs/SetRoleTitleUI", (err, prefab) => {
let setRoleTitlePanel = cc.instantiate(prefab);
if (setRoleTitlePanel) {
setRoleTitlePanel.name = PanelName;
setRoleTitlePanel.parent = this.mainUI;
let panellogic = setRoleTitlePanel.getComponent('SetRoleTitleUI');
panellogic.changeBtnLoadStatus(data);
}
});
}
}
}
let instance = null;
module.exports = (()=>{
if(instance==null){
instance = new SetRoleTitleUIMgr();
}
return instance;
})();