"use strict"; cc._RF.push(module, '7bc68zwrdZNcbRGNDKqBDOi', 'cmp.act.starorder'); // Scripts/mod/acts/starorder/ui/cmp.act.starorder.js "use strict"; /****************************************************************** * * 星界密令 * ******************************************************************/ var ActPopup = require("act.page.base"); var StarorderMod = require("act.starorder.mod"); var FID = require("bridge.function.ids"); var NxExpand = require("nx.fx.sv.expand"); var NxTog = require("nx.fx.togs"); var CmpOrderAward = require("cmp.act.starorder.awards"); var TipsController = require("tips_controller"); var PathTool = require('pathtool'); var NXSpine = require('nx.fx.spine'); cc.Class({ "extends": ActPopup, properties: { OrderLev: { "default": null, type: cc.Node }, btnTog: { "default": null, type: NxTog }, ExpBar: { "default": null, type: cc.ProgressBar }, CdTime: { "default": null, type: cc.Node }, Exps: { "default": null, type: cc.Node }, NdTask: { "default": null, type: cc.Node }, NdOrder: { "default": null, type: cc.Node }, taskList: { "default": null, type: NxExpand }, cmpOrder: { "default": null, type: CmpOrderAward }, rolePic: { "default": null, type: cc.Node }, skinPic: { "default": null, type: cc.Node }, nodRole: { "default": null, type: NXSpine } }, build: function build(_data) { var _this = this; this._super(_data); this.order_data = game.configs.holiday_star_hero_order_data; this.nodRole.load("resDB/models/H50095/H50095", function (_e) { if (!_e) { _this.nodRole.action("stand2", true); } else { _this.nodRole.stop(); } }); // this.mod = StarorderMod.getInstance(); // this.btnTog.posTog = this.onTogMenu.bind( this ); // this.btnTog.togTo(1); // let nodss = nx.gui.find( this, "menu/togs" ).children; // let cmp = nx.gui.getComponent( nodss[0], "tip", "nx.vb.visible" ); // if( cmp ){ // cmp.setTarget( nx.mTip, this.mod.getTipKey( this.mod.tipKeys[0] ) ); // } this.setTips(); // 活动监听 this.mod.vbind(this, [["OrderInfos", this.setInfos.bind(this)], ["OrderTasks", this.freshTasks.bind(this)], ["OrderRewards", this.freshRewards.bind(this)]]); }, // 初始化 onEnable: function onEnable() { this.onTogMenu(1); this.mod.send31200(); //任务详情 this.mod.send31203(); //等级奖励 this.mod.send31206(); //进阶卡 }, onTogMenu: function onTogMenu(_index) { nx.gui.setActive(this, "main/menu/task", _index == 1); nx.gui.setActive(this, "main/menu/award", _index == 0); nx.gui.setActive(this, "main/opss", _index == 1); if (_index == 0) { nx.gui.setActive(this.NdTask, "", true); nx.gui.setActive(this.NdOrder, "", false); } else if (_index == 1) { nx.gui.setActive(this.NdTask, "", false); nx.gui.setActive(this.NdOrder, "", true); this.mod.send31203(); } }, // 销毁 onDestroy: function onDestroy() { // 活动监听解除 if (this.mod) { this.mod.vunbind(this); } this._super(); }, setTips: function setTips() { var nds = nx.gui.find(this, "main/menu").children; // let nds = this.btnTog.node.children; for (var i = 0; i < nds.length; i++) { var nd = nds[i]; if (nd) { var tip = nx.gui.find(nd, "tip"); var dot = nx.gui.getComponent(tip, "", "nx.vb.visible"); if (!dot) { nx.gui.setActive(dot, "", false); } else { var key = this.mod.getTipKey(this.mod.tipKeys()[i]); dot.setTarget(nx.mTip, key); } } } var award_tip = nx.gui.find(this, "main/opss/award/tip"); var award_tipc = nx.gui.find(this, "main/menu/award/tip"); var award_dot = nx.gui.getComponent(award_tip, "", "nx.vb.visible"); var award_dotc = nx.gui.getComponent(award_tipc, "", "nx.vb.visible"); var award_key = this.mod.getTipKey(this.mod.tipKeys()[2]); if (!award_dot) { nx.gui.setActive(award_dot, "", false); } else { award_dot.setTarget(nx.mTip, award_key); } if (!award_dotc) { nx.gui.setActive(award_tipc, "", false); } else { award_dotc.setTarget(nx.mTip, award_key); } }, onPreClosed: function onPreClosed() { this.taskList.rebuild([]); this.cmpOrder.onPreClear(); // 活动监听解除 if (this.mod) { this.mod.vunbind(this); } }, freshTasks: function freshTasks(list) { if (nx.dt.arrEmpty(list)) return; list.sort(function (_a, _b) { return _a.sortid - _b.sortid; }); this.taskList.rebuild(list); }, freshRewards: function freshRewards(list) { // if(nx.dt.arrEmpty(list))return; var period = this.mod.getPeriod(); var max_lv = this.order_data.data_constant.star_order_levmax.val; this.cmpOrder.setRewardList(list); this.cmpOrder.setMaxreward(this.order_data.data_lev_reward_list[period][max_lv]); }, setInfos: function setInfos(data) { var rmbStatus = this.mod.getRmbStatus(); nx.gui.setActive(this, "main/opss/btn_buy", rmbStatus != 1); if (nx.dt.objEmpty(data)) return; nx.gui.setString(this.OrderLev, "", data.lev); var period = this.mod.getPeriod(); var rewards = this.order_data.data_lev_reward_list[period]; if (!rewards) return; //计算经验值进度条 var cur_lv_data = rewards[data.lev]; var next_lv_data = rewards[data.lev + 1]; if (next_lv_data) { if (cur_lv_data) { this.ExpBar.progress = (data.exp - cur_lv_data.exp) / (next_lv_data.exp - cur_lv_data.exp); } } else { this.ExpBar.progress = 1; //满额 } nx.gui.setString(this.Exps, "", cc.js.formatStr(nx.text.getKey("OrderExp_"), data.exp - cur_lv_data.exp, next_lv_data.exp - cur_lv_data.exp)); //設置ui圖 var act_data = this.order_data.data_skin_act_list[period]; var role_path = cc.js.formatStr("resDB/acts/orderskin/%s", act_data.skin_pic); nx.gui.setSpriteFrame(this.rolePic, "", role_path); var skin_path = cc.js.formatStr("locals/%s/images/brochure/%s", nx.getLocLanguage(), act_data.skin_name_pic); nx.gui.setSpriteFrame(this.skinPic, "", skin_path); nx.gui.setCdTxt(this.CdTime, "", this.mod.getEndTime() - client.socket.getTime()); }, onClickRule: function onClickRule() { var TC = TipsController.getInstance(); if (TC) { var config = this.order_data.data_constant.action_rule; TC.showTextPanel(null, config.desc); } }, onGetAward: function onGetAward() { this.mod.send31204(0); } }); cc._RF.pop();