(function() { var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined'; var __module = nodeEnv ? module : {exports:{}}; var __filename = 'preview-scripts/assets/Scripts/mod/heroexpedit/view/browse_window.js'; var __require = nodeEnv ? function (request) { return cc.require(request); } : function (request) { return __quick_compile_project__.require(request, __filename); }; function __define (exports, require, module) { if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict"; cc._RF.push(module, 'f3a80RKaP5Nq6vgd+1xDoTh', 'browse_window'); // Scripts/mod/heroexpedit/view/browse_window.js "use strict"; // -------------------------------------------------------------------- // @author: xxx@syg.com(必填, 创建模块的人员) // @description: // 这里是描述这个窗体的作用的 //
Create: 2019-03-11 14:17:34 // -------------------------------------------------------------------- var PathTool = require("pathtool"); var BrowseWindow = cc.Class({ "extends": BaseView, ctor: function ctor() { this.prefabPath = PathTool.getPrefabPath("heroexpedit", "browse_reward_panel"); this.viewTag = SCENE_TAG.dialogue; //该窗体所属ui层级,全屏ui需要在ui层,非全屏ui在dialogue层,这个要注意 this.win_type = WinType.Tips; //是否是全屏窗体 WinType.Full, WinType.Big, WinType.Mini, WinType.Tips this.ctrl = arguments[0]; this.model = this.ctrl.getModel(); }, // 初始化一些配置数据,可以用于声明一些变量之类的 initConfig: function initConfig() { this.reward_list = []; }, // 预制体加载完成之后的回调,可以在这里捕获相关节点或者组件 openCallBack: function openCallBack() { this.background = this.root_wnd.getChildByName("background"); this.background.scale = FIT_SCALE; var main_container = this.root_wnd.getChildByName("main_container"); var text_32 = main_container.getChildByName("Image_33").getChildByName("Text_32").getComponent(cc.Label); text_32.string = Utils.TI18N("奖励预览"); this.btn_con = main_container.getChildByName("btn_con"); var text_33 = this.btn_con.getChildByName("Text_33").getComponent(cc.Label); text_33.string = Utils.TI18N("确认"); this.good_con = main_container.getChildByName("good_con"); }, // 注册事件监听的接口,不需要手动调用,如果是使用gcore.GlobalEvent监听,可以直接调用addGlobalEvent registerEvent: function registerEvent() { Utils.onTouchEnd(this.background, function () { this.ctrl.openBrowsePanelView(false); }.bind(this), 2); Utils.onTouchEnd(this.btn_con, function () { this.ctrl.openBrowsePanelView(false); }.bind(this), 1); }, // 预制体加载完成之后,添加到对应主节点之后的回调,也就是一个窗体的正式入口,可以设置一些数据了 openRootWnd: function openRootWnd(data) { if (!data) return; // 关卡奖励 var data_reward = null; if (data.rewards) { data_reward = data.rewards; } if (data_reward) { var num = data_reward.length; var pos = []; if (num == 2) { pos = [166, 423]; } else { pos = [166, 296, 423]; } for (var i = 0; i < num; i++) { if (!this.reward_list[i]) { this.reward_list[i] = ItemsPool.getInstance().getItem("backpack_item"); this.reward_list[i].setParent(this.good_con); this.reward_list[i].initConfig(); this.reward_list[i].show(); } if (this.reward_list[i]) { this.reward_list[i].setPosition(pos[i], 79); if (data_reward[i].bid == 25 && data.is_holiday == 1) { this.reward_list[i].holidHeroExpeditTag(true, "限时提升"); } else { this.reward_list[i].holidHeroExpeditTag(false); } this.reward_list[i].setDefaultTip(); this.reward_list[i].setData({ bid: data_reward[i].bid, num: data_reward[i].num }); } } } }, // 关闭窗体回调,需要在这里调用该窗体所属controller的close方法没用于置空该窗体实例对象 closeCallBack: function closeCallBack() { for (var i in this.reward_list) { this.reward_list[i].deleteMe(); this.reward_list[i] = null; } this.reward_list = null; this.ctrl.openBrowsePanelView(false); } }); cc._RF.pop(); } if (nodeEnv) { __define(__module.exports, __require, __module); } else { __quick_compile_project__.registerModuleFunc(__filename, function () { __define(__module.exports, __require, __module); }); } })(); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0c1xcbW9kXFxoZXJvZXhwZWRpdFxcdmlld1xcYnJvd3NlX3dpbmRvdy5qcyJdLCJuYW1lcyI6WyJQYXRoVG9vbCIsInJlcXVpcmUiLCJCcm93c2VXaW5kb3ciLCJjYyIsIkNsYXNzIiwiQmFzZVZpZXciLCJjdG9yIiwicHJlZmFiUGF0aCIsImdldFByZWZhYlBhdGgiLCJ2aWV3VGFnIiwiU0NFTkVfVEFHIiwiZGlhbG9ndWUiLCJ3aW5fdHlwZSIsIldpblR5cGUiLCJUaXBzIiwiY3RybCIsImFyZ3VtZW50cyIsIm1vZGVsIiwiZ2V0TW9kZWwiLCJpbml0Q29uZmlnIiwicmV3YXJkX2xpc3QiLCJvcGVuQ2FsbEJhY2siLCJiYWNrZ3JvdW5kIiwicm9vdF93bmQiLCJnZXRDaGlsZEJ5TmFtZSIsInNjYWxlIiwiRklUX1NDQUxFIiwibWFpbl9jb250YWluZXIiLCJ0ZXh0XzMyIiwiZ2V0Q29tcG9uZW50IiwiTGFiZWwiLCJzdHJpbmciLCJVdGlscyIsIlRJMThOIiwiYnRuX2NvbiIsInRleHRfMzMiLCJnb29kX2NvbiIsInJlZ2lzdGVyRXZlbnQiLCJvblRvdWNoRW5kIiwib3BlbkJyb3dzZVBhbmVsVmlldyIsImJpbmQiLCJvcGVuUm9vdFduZCIsImRhdGEiLCJkYXRhX3Jld2FyZCIsInJld2FyZHMiLCJudW0iLCJsZW5ndGgiLCJwb3MiLCJpIiwiSXRlbXNQb29sIiwiZ2V0SW5zdGFuY2UiLCJnZXRJdGVtIiwic2V0UGFyZW50Iiwic2hvdyIsInNldFBvc2l0aW9uIiwiYmlkIiwiaXNfaG9saWRheSIsImhvbGlkSGVyb0V4cGVkaXRUYWciLCJzZXREZWZhdWx0VGlwIiwic2V0RGF0YSIsImNsb3NlQ2FsbEJhY2siLCJkZWxldGVNZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxJQUFJQSxRQUFRLEdBQUdDLE9BQU8sQ0FBQyxVQUFELENBQXRCOztBQUdBLElB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ZUFBS3RDLFdBQUwsQ0FBaUI0QixDQUFqQixFQUFvQlcsT0FBcEIsQ0FBNEI7QUFBQ0osWUFBQUEsR0FBRyxFQUFDWixXQUFXLENBQUNLLENBQUQsQ0FBWCxDQUFlTyxHQUFwQjtBQUF5QlYsWUFBQUEsR0FBRyxFQUFDRixXQUFXLENBQUNLLENBQUQsQ0FBWCxDQUFlSDtBQUE1QyxXQUE1QjtBQUNIO0FBQ0o7QUFDSjtBQUNKLEdBM0V1QjtBQTZFeEI7QUFDQWUsRUFBQUEsYUFBYSxFQUFDLHlCQUFVO0FBQ3BCLFNBQUksSUFBSVosQ0FBUixJQUFhLEtBQUs1QixXQUFsQixFQUE4QjtBQUMxQixXQUFLQSxXQUFMLENBQWlCNEIsQ0FBakIsRUFBb0JhLFFBQXBCO0FBQ0EsV0FBS3pDLFdBQUwsQ0FBaUI0QixDQUFqQixJQUFzQixJQUF0QjtBQUNIOztBQUNELFNBQUs1QixXQUFMLEdBQW1CLElBQW5CO0FBQ0EsU0FBS0wsSUFBTCxDQUFVd0IsbUJBQVYsQ0FBOEIsS0FBOUI7QUFDSDtBQXJGdUIsQ0FBVCxDQUFuQiIsInNvdXJjZVJvb3QiOiIvIiwic291cmNlc0NvbnRlbnQiOlsiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEBhdXRob3I6IHh4eEBzeWcuY29tKOW/heWhqywg5Yib5bu65qih5Z2X55qE5Lq65ZGYKVxuLy8gQGRlc2NyaXB0aW9uOlxuLy8gICAgIOi/memHjOaYr+aPj+i/sOi/meS4queql+S9k+eahOS9nOeUqOeahFxuLy8gPGJyLz5DcmVhdGU6IDIwMTktMDMtMTEgMTQ6MTc6MzRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG52YXIgUGF0aFRvb2wgPSByZXF1aXJlKFwicGF0aHRvb2xcIik7XG5cblxudmFyIEJyb3dzZVdpbmRvdyA9IGNjLkNsYXNzKHtcbiAgICBleHRlbmRzOiBCYXNlVmlldyxcbiAgICBjdG9yOiBmdW5jdGlvbiAoKSB7XG4gICAgICAgIHRoaXMucHJlZmFiUGF0aCA9IFBhdGhUb29sLmdldFByZWZhYlBhdGgoXCJoZXJvZXhwZWRpdFwiLCBcImJyb3dzZV9yZXdhcmRfcGFuZWxcIik7XG4gICAgICAgIHRoaXMudmlld1RhZyA9IFNDRU5FX1RBRy5kaWFsb2d1ZTsgICAgICAgICAgICAgICAgLy/or6XnqpfkvZPmiYDlsZ51aeWxgue6pyzlhajlsY91aemcgOimgeWcqHVp5bGCLOmdnuWFqOWxj3Vp5ZyoZGlhbG9ndWXlsYIs6L+Z5Liq6KaB5rOo5oSPXG4gICAgICAgIHRoaXMud2luX3R5cGUgPSBXaW5UeXBlLlRpcHM7ICAgICAgICAgICAgICAgLy/mmK/lkKbmmK/lhajlsY/nqpfkvZMgIFdpblR5cGUuRnVsbCwgV2luVHlwZS5CaWcsIFdpblR5cGUuTWluaSwgV2luVHlwZS5UaXBzXG4gICAgICAgIHRoaXMuY3RybCA9IGFyZ3VtZW50c1swXTtcbiAgICAgICAgdGhpcy5tb2RlbCA9IHRoaXMuY3RybC5nZXRNb2RlbCgpO1xuICAgIH0sXG5cbiAgICAvLyDliJ3lp4vljJbkuIDkupvphY3nva7mlbDmja4s5Y+v5Lul55So5LqO5aOw5piO5LiA5Lqb5Y+Y6YeP5LmL57G755qEXG4gICAgaW5pdENvbmZpZzpmdW5jdGlvbigpe1xuICAgICAgICB0aGlzLnJld2FyZF9saXN0ID0gW107XG4gICAgfSxcblxuICAgIC8vIOmihOWItuS9k+WKoOi9veWujOaIkOS5i+WQjueahOWbnuiwgyzlj6/ku6XlnKjov5nph4zmjZXojrfnm7jlhbPoioLngrnmiJbogIXnu4Tku7ZcbiAgICBvcGVuQ2FsbEJhY2s6ZnVuY3Rpb24oKXtcbiAgICAgICAgdGhpcy5iYWNrZ3JvdW5kID0gdGhpcy5yb290X3duZC5nZXRDaGlsZEJ5TmFtZShcImJhY2tncm91bmRcIik7XG4gICAgICAgIHRoaXMuYmFja2dyb3VuZC5zY2FsZSA9IEZJVF9TQ0FMRTtcbiAgICAgICAgdmFyIG1haW5fY29udGFpbmVyID0gdGhpcy5yb290X3duZC5nZXRDaGlsZEJ5TmFtZShcIm1haW5fY29udGFpbmVyXCIpO1xuICAgICAgICB2YXIgdGV4dF8zMiA9IG1haW5fY29udGFpbmVyLmdldENoaWxkQnlOYW1lKFwiSW1hZ2VfMzNcIikuZ2V0Q2hpbGRCeU5hbWUoXCJUZXh0XzMyXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCk7XG4gICAgICAgIHRleHRfMzIuc3RyaW5nID0gVXRpbHMuVEkxOE4oXCLlpZblirHpooTop4hcIik7XG4gICAgICAgIHRoaXMuYnRuX2NvbiA9IG1haW5fY29udGFpbmVyLmdldENoaWxkQnlOYW1lKFwiYnRuX2NvblwiKTtcbiAgICAgICAgdmFyIHRleHRfMzMgPSB0aGlzLmJ0bl9jb24uZ2V0Q2hpbGRCeU5hbWUoXCJUZXh0XzMzXCIpLmdldENvbXBvbmVudChjYy5MYWJlbCk7XG4gICAgICAgIHRleHRfMzMuc3RyaW5nID0gVXRpbHMuVEkxOE4oXCLnoa7orqRcIik7XG4gICAgICAgIHRoaXMuZ29vZF9jb24gPSBtYWluX2NvbnRhaW5lci5nZXRDaGlsZEJ5TmFtZShcImdvb2RfY29uXCIpO1xuICAgIH0sXG5cbiAgICAvLyDms6jlhozkuovku7bnm5HlkKznmoTmjqXlj6Ms5LiN6ZyA6KaB5omL5Yqo6LCD55SoLOWmguaenOaYr+S9v+eUqGdjb3JlLkdsb2JhbEV2ZW5055uR5ZCsLOWPr+S7peebtOaOpeiwg+eUqGFkZEdsb2JhbEV2ZW50XG4gICAgcmVnaXN0ZXJFdmVudDpmdW5jdGlvbigpe1xuICAgICAgICBVdGlscy5vblRvdWNoRW5kKHRoaXMuYmFja2dyb3VuZCwgZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgdGhpcy5jdHJsLm9wZW5Ccm93c2VQYW5lbFZpZXcoZmFsc2UpO1xuICAgICAgICB9LmJpbmQodGhpcyksIDIpO1xuXG4gICAgICAgIFV0aWxzLm9uVG91Y2hFbmQodGhpcy5idG5fY29uLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgICB0aGlzLmN0cmwub3BlbkJyb3dzZVBhbmVsVmlldyhmYWxzZSk7XG4gICAgICAgIH0uYmluZCh0aGlzKSwgMSk7XG4gICAgfSxcblxuICAgIC8vIOmihOWItuS9k+WKoOi9veWujOaIkOS5i+WQjizmt7vliqDliLDlr7nlupTkuLvoioLngrnkuYvlkI7nmoTlm57osIMs5Lmf5bCx5piv5LiA5Liq56qX5L2T55qE5q2j5byP5YWl5Y+jLOWPr+S7peiuvue9ruS4gOS6m+aVsOaNruS6hlxuICAgIG9wZW5Sb290V25kOmZ1bmN0aW9uKGRhdGEpe1xuICAgICAgICBpZighZGF0YSlyZXR1cm47XG4gICAgICAgIC8vIOWFs+WNoeWlluWKsVxuICAgICAgICB2YXIgZGF0YV9yZXdhcmQgPSBudWxsO1xuICAgICAgICBpZihkYXRhLnJld2FyZHMpe1xuICAgICAgICAgICAgZGF0YV9yZXdhcmQgPSBkYXRhLnJld2FyZHM7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIGlmKGRhdGFfcmV3YXJkKXtcbiAgICAgICAgICAgIHZhciBudW0gPSBkYXRhX3Jld2FyZC5sZW5ndGg7XG4gICAgICAgICAgICB2YXIgcG9zID0gW107XG4gICAgICAgICAgICBpZihudW0gPT0gMil7XG4gICAgICAgICAgICAgICAgcG9zID0gWzE2Niw0MjNdO1xuICAgICAgICAgICAgfWVsc2V7XG4gICAgICAgICAgICAgICAgcG9zID0gWzE2NiwyOTYsNDIzXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZvcih2YXIgaSA9IDA7aTxudW07aSsrKXtcbiAgICAgICAgICAgICAgICBpZighdGhpcy5yZXdhcmRfbGlzdFtpXSl7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmV3YXJkX2xpc3RbaV0gPSBJdGVtc1Bvb2wuZ2V0SW5zdGFuY2UoKS5nZXRJdGVtKFwiYmFja3BhY2tfaXRlbVwiKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXdhcmRfbGlzdFtpXS5zZXRQYXJlbnQodGhpcy5nb29kX2Nvbik7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmV3YXJkX2xpc3RbaV0uaW5pdENvbmZpZygpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJld2FyZF9saXN0W2ldLnNob3coKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYodGhpcy5yZXdhcmRfbGlzdFtpXSl7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmV3YXJkX2xpc3RbaV0uc2V0UG9zaXRpb24ocG9zW2ldLCA3OSk7XG4gICAgICAgICAgICAgICAgICAgIGlmKGRhdGFfcmV3YXJkW2ldLmJpZCA9PSAyNSAmJiBkYXRhLmlzX2hvbGlkYXkgPT0gMSl7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnJld2FyZF9saXN0W2ldLmhvbGlkSGVyb0V4cGVkaXRUYWcodHJ1ZSwgXCLpmZDml7bmj5DljYdcIik7XG4gICAgICAgICAgICAgICAgICAgIH1lbHNle1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXdhcmRfbGlzdFtpXS5ob2xpZEhlcm9FeHBlZGl0VGFnKGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB0aGlzLnJld2FyZF9saXN0W2ldLnNldERlZmF1bHRUaXAoKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXdhcmRfbGlzdFtpXS5zZXREYXRhKHtiaWQ6ZGF0YV9yZXdhcmRbaV0uYmlkLCBudW06ZGF0YV9yZXdhcmRbaV0ubnVtfSlcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9LFxuXG4gICAgLy8g5YWz6Zet56qX5L2T5Zue6LCDLOmcgOimgeWcqOi/memHjOiwg+eUqOivpeeql+S9k+aJgOWxnmNvbnRyb2xsZXLnmoRjbG9zZeaWueazleayoeeUqOS6jue9ruepuuivpeeql+S9k+WunuS+i+WvueixoVxuICAgIGNsb3NlQ2FsbEJhY2s6ZnVuY3Rpb24oKXtcbiAgICAgICAgZm9yKHZhciBpIGluIHRoaXMucmV3YXJkX2xpc3Qpe1xuICAgICAgICAgICAgdGhpcy5yZXdhcmRfbGlzdFtpXS5kZWxldGVNZSgpO1xuICAgICAgICAgICAgdGhpcy5yZXdhcmRfbGlzdFtpXSA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5yZXdhcmRfbGlzdCA9IG51bGw7XG4gICAgICAgIHRoaXMuY3RybC5vcGVuQnJvd3NlUGFuZWxWaWV3KGZhbHNlKTtcbiAgICB9LFxufSkiXX0=