"use strict"; cc._RF.push(module, '406f63ZxTxOpYXNyu0LoDBz', 'cmp.act.partnertrial.wnd'); // Scripts/mod/acts/partnertrial/cmp/cmp.act.partnertrial.wnd.js "use strict"; /****************************************************************** * * 星界初體驗 * ******************************************************************/ var ActPopup = require("act.popup.base"); var NxSpine = require("nx.fx.spine"); var PathTool = require("pathtool"); var HeroTrialMod = require("act.partnertrial.mod"); var HeroConst = require("hero_const"); var HeroVo = require("hero_vo"); cc.Class({ "extends": ActPopup, properties: { roleSp: { "default": null, type: NxSpine }, tagHero: { "default": null, type: cc.Node }, fabHero: { "default": null, type: cc.Prefab }, ndSmod: { "default": null, type: cc.Node }, fabSmod: { "default": null, type: cc.Prefab }, infoNd: { "default": null, type: cc.Node }, cdTime: { "default": null, type: cc.Node }, ndTry: { "default": null, type: cc.Node }, ndTime: { "default": null, type: cc.Node }, ndTip: { "default": null, type: cc.Node } }, // 初始化 onLoad: function onLoad() { this.mod = HeroTrialMod.getInstance(); this.try_data = game.configs.partner_try_data; this.tag_bid = 0; this.pv_bid = 0; // 活动监听 this.mod.vbind(this, [["heroTrialData", this.freshData.bind(this)], ["PVPlayFlag", this.playPv.bind(this)]]); }, onOpenConfigs: function onOpenConfigs(_params) { this._super(_params); this.mod.send31004(); this.mod.send31005(); }, onPreClosed: function onPreClosed() { // 活动监听解除 if (this.mod) { this.mod.vunbind(this); } }, playPv: function playPv(flag) { if (flag && flag == 1) { this.touchPVPlay(); } }, freshData: function freshData(data) { var _this = this; if (nx.dt.objEmpty(data)) return; //英雄详情 var hero = data.partners[0]; if (!hero) return; var h_config = game.configs.partner_data.data_partner_base[hero.bid]; if (h_config) { nx.gui.setString(this.infoNd, "name", h_config.name); // 职业 var career = h_config.type || 4; var icon = cc.path.join("coms/images", "career" + career); var campicon = cc.path.join("coms/images", "camps" + h_config.camp_type); var name = nx.text.getKey(HeroConst.CareerName[career]) || nx.text.getKey("lab_none"); nx.gui.setString(this.infoNd, "work", name); nx.gui.setSpriteFrame(this.infoNd, "carcee", icon); nx.gui.setSpriteFrame(this.infoNd, "camp", campicon); //模型加载 var res_path = PathTool.getSpinePath(h_config.bustid, "show", false); this.roleSp.load(res_path, function (_e) { if (_e) { _this.roleSp.stop(); } else { _this.roleSp.action("action1", true); } }); var trialHero = new HeroVo(); trialHero.updateHeroVo(hero); //小模型 if (!this.sHero) { this.sHero = cc.instantiate(this.fabSmod); this.sHero.parent = this.ndSmod; this.sHero.y += 25; } var scmp = nx.gui.getComponent(this.sHero, "", "cmp.partner.smod"); if (scmp) { scmp.setData(trialHero, true, false); } //英雄名片 if (!this.tHero) { this.tHero = cc.instantiate(this.fabHero); this.tHero.parent = this.tagHero; } var tcmp = nx.gui.getComponent(this.tHero, "", "cmp.item.base"); if (tcmp) { tcmp.rebind(0, trialHero, ""); } } //是否领取 if (data.finish == 0) { this.tag_bid = hero.bid; nx.gui.setString(this.ndTry, "txt", nx.text.getKey("TryPartBtn")); } else { nx.gui.setString(this.ndTry, "txt", nx.text.getKey("Got")); } nx.gui.setActive(this.ndTime, "", data.finish == 1); nx.gui.setActive(this.ndTip, "", data.finish != 1); this.pv_bid = hero.bid; //倒计时cd var cds = data.end_time - client.socket.getTime(); nx.gui.setCdTxt(this.cdTime, "", cds); }, touchPVPlay: function touchPVPlay() { nx.bridge.createPanel("WndActPartnertrialPv", { bid: this.pv_bid }); }, touchHeroGet: function touchHeroGet() { var _this2 = this; if (this.tag_bid == 0) return; this.mod.send31003(this.tag_bid, function (_data) { if (_data) { _this2.tag_bid = 0; } }); } }); cc._RF.pop();