2025-04-24 17:03:28 +08:00

151 lines
4.8 KiB
JavaScript

import GameModel from "./GameModel";
import TeamPanel from "../team/TeamPanel";
let CMainPlayerInfo = require('../../game/MainPlayerInfo');
let CPubFunction = require('../../game/PubFunction');
// 暫時保留JS中的設置
class JSUtil {
constructor() {
}
init() {
cc.ll = {};
GameModel.notice = require('../../common/Notice');
GameModel.notice.init();
let VoiceMgr = require('../../game/voice/voice_mgr');
GameModel.voiceMgr = new VoiceMgr();
let GoodsMgr = require('../../game/GoodsMgr');
GoodsMgr.Init();
}
// 解析協議
parseProto(text) {
let temp = protobuf.parse(text);
GameModel.pbroot = temp.root;
}
s2c_partner_exchange_exp_ok(data) {
let goChuanGongUI = cc.find('Canvas/MainUI/ChuanGongUI');
if (goChuanGongUI) {
let logic = goChuanGongUI.getComponent('ChuanGongUI');
if (logic) {
logic.OnChuanGongOK(CMainPlayerInfo.vecPartnerInfo, data);
}
}
}
s2c_partner_list(data) {
CMainPlayerInfo.vecPartnerInfo = [];
for (let i = 0; i < data.vecPartner.length; i++) {
let strJson = data.vecPartner[i].strJson;
let stInfo = JSON.parse(strJson);
CMainPlayerInfo.vecPartnerInfo.push(stInfo);
}
CMainPlayerInfo.vecChuZhan = JSON.parse(data.strJsonPos);
if (TeamPanel.Instance && TeamPanel.Instance.teamPanel) {
let teamUI = TeamPanel.Instance.teamPanel.node;
if (!teamUI)
return
TeamPanel.Instance.showTeamMember();
let goPartnerUI = cc.find('PartnerUI', teamUI);
if (goPartnerUI) {
goPartnerUI.getComponent('PartnerUI').ShowPartnerList();
}
}
//未註釋,以防其他方式直接打開伙伴面板
let goPartnerUI = cc.find('Canvas/MainUI/PartnerUI');
if (goPartnerUI) {
goPartnerUI.getComponent('PartnerUI').ShowPartnerList();
}
// let goTeamUI = cc.find('Canvas/MainUI/TeamUI');
// if (goTeamUI) {
// goTeamUI.getComponent('TeamUI').CreateCardList();
// }
}
s2c_partner_info(data) {
let strJson = data.strJson;
let stInfo = JSON.parse(strJson);
let nIndex = CMainPlayerInfo.IsHasPartner(stInfo.id);
if (nIndex == -1) {
CMainPlayerInfo.vecPartnerInfo.push(stInfo);
nIndex = CMainPlayerInfo.vecPartnerInfo.length - 1;
} else {
CMainPlayerInfo.vecPartnerInfo[nIndex] = stInfo;
}
let goPartnerUI = cc.find('Canvas/MainUI/PartnerUI');
if (goPartnerUI) {
let partnerUI = goPartnerUI.getComponent('PartnerUI');
if (partnerUI) {
partnerUI.ShowPartnerInfo(0, nIndex);
partnerUI.OnReceiveBagItem();
}
}
if (TeamPanel.Instance && TeamPanel.Instance.teamPanel) {
let teamUI = TeamPanel.Instance.teamPanel.node;
if (!teamUI)
return
TeamPanel.Instance.showTeamMember();
let goPartnerUI = cc.find('PartnerUI', teamUI);
if (goPartnerUI) {
let partnerUI = goPartnerUI.getComponent('PartnerUI');
if (partnerUI) {
partnerUI.ShowPartnerInfo(0, nIndex);
partnerUI.OnReceiveBagItem();
}
}
}
// let goTeamUI = cc.find('Canvas/MainUI/TeamUI');
// if (goTeamUI) {
// goTeamUI.getComponent('TeamUI').CreateCardList();
// }
}
s2c_role_task_list(data) {
CMainPlayerInfo.OnReceiveRoleTask(data);
let goTaskTip = cc.find('Canvas/MainUI/right/TaskTip');
if (goTaskTip)
goTaskTip.getComponent('TaskTip').IniTip();
}
createScreenNotice(strRichText, bInstertFront) {
CPubFunction.CreateScreenNotice(strRichText, bInstertFront);
}
createNpcNotice(nNpcConfigID, strText) {
CPubFunction.CreateNpcNotice(nNpcConfigID, strText);
}
findAndDoUIFunction(strUI, strFun, stData) {
CPubFunction.FindAndDoUIFunction(strUI, strFun, stData);
}
setVecMyGoods(vecGoods) {
CMainPlayerInfo.vecMyGoods = vecGoods;
}
shuiLuMgr() {
let ShuiLuMgr = require('../../game/Activity/ShuiLuDaHui/sldh_mgr');
return ShuiLuMgr.getInstance();
}
worldRewardMgr() {
let worldReward = require('../../game/WorldRewardMgr');
return worldReward;
}
setRoleTitleUIMgr() {
let result = require('../../game/SetRoleTitleUIMgr');
return result;
}
getTaskConfigMgr() {
let result = require('../../game/task_config').g_pTaskConfigMgr;
return result;
}
}
module.exports = new JSUtil();