|
(function() {
|
var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined';
|
var __module = nodeEnv ? module : {exports:{}};
|
var __filename = 'preview-scripts/assets/Scripts/mod/task/view/task_main_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, 'cb70eu4b8ZLnrpvEbKR3MB+', 'task_main_window');
|
// Scripts/mod/task/view/task_main_window.js
|
|
"use strict";
|
|
// --------------------------------------------------------------------
|
// @author: shiraho@syg.com(必填, 创建模块的人员)
|
// @description:
|
// 日常主界面,包含了任务和成就
|
// <br/>Create: new Date().toISOString()
|
// --------------------------------------------------------------------
|
var PathTool = require("pathtool");
|
|
var TaskController = require("task_controller");
|
|
var TaskEvent = require("task_event");
|
|
var TaskConst = require("task_const");
|
|
var TaskMainWindow = cc.Class({
|
"extends": CommonWindowTab,
|
ctor: function ctor() {
|
this.ctrl = TaskController.getInstance();
|
this.model = this.ctrl.getModel();
|
this.win_type = WinType.Full;
|
this.tab_info_list = [{
|
label: Utils.TI18N("日常"),
|
index: TaskConst.type.quest,
|
status: true,
|
notice: Utils.TI18N("日常任务11级开启")
|
}, {
|
label: Utils.TI18N("成就"),
|
index: TaskConst.type.feat,
|
status: true,
|
notice: Utils.TI18N("日常任务15级开启")
|
}];
|
this.title_str = Utils.TI18N("日常");
|
this.cur_index = 1;
|
this.cur_panel = null;
|
this.panel_list = [];
|
|
var ActionController = require("action_controller");
|
|
if (ActionController.getInstance().action_operate) {
|
ActionController.getInstance().action_operate.setVisible(false);
|
}
|
},
|
registerEvent: function registerEvent() {
|
this.addGlobalEvent(TaskEvent.UpdateUIRedStatus, function (key, value) {
|
this.updateUIRedStatus(key);
|
}.bind(this));
|
},
|
selectedTabCallBack: function selectedTabCallBack(index) {
|
if (index == TaskConst.type.quest) this.changeTitleName(Utils.TI18N("日常"));else if (index == TaskConst.type.feat) this.changeTitleName(Utils.TI18N("成就"));
|
this.changePanel(index);
|
},
|
openRootWnd: function openRootWnd(index) {
|
index = index || TaskConst.type.quest;
|
this.setSelecteTab(index, true);
|
this.updateUIRedStatus(TaskConst.update_type.feat);
|
this.updateUIRedStatus(TaskConst.update_type.quest);
|
},
|
updateUIRedStatus: function updateUIRedStatus(type) {
|
if (type == TaskConst.update_type.feat) {
|
var feat_status = this.model.getRedStatus(TaskConst.update_type.feat);
|
this.setTabTips(feat_status, TaskConst.type.feat);
|
} else {
|
var task_status = this.model.getRedStatus(TaskConst.update_type.quest);
|
if (task_status == false) task_status = this.model.getRedStatus(TaskConst.update_type.activity);
|
this.setTabTips(task_status, TaskConst.type.quest);
|
}
|
},
|
changePanel: function changePanel(index) {
|
if (this.cur_panel != null) {
|
this.cur_panel.addToParent(false);
|
this.cur_panel = null;
|
}
|
|
if (this.panel_list[index] == null) {
|
if (index == TaskConst.type.quest) {
|
var TaskPanel = require("task_panel");
|
|
this.panel_list[index] = new TaskPanel();
|
} else if (index == TaskConst.type.feat) {
|
var FeatPanel = require("feat_panel");
|
|
this.panel_list[index] = new FeatPanel();
|
}
|
|
this.panel_list[index].setParent(this.container);
|
this.panel_list[index].show();
|
}
|
|
this.cur_panel = this.panel_list[index];
|
if (this.cur_panel != null) this.cur_panel.addToParent(true);
|
},
|
closeCallBack: function closeCallBack() {
|
for (var k in this.panel_list) {
|
this.panel_list[k].deleteMe();
|
this.panel_list[k] = null;
|
}
|
|
this.panel_list = null;
|
|
var ActionController = require("action_controller");
|
|
if (ActionController.getInstance().action_operate) {
|
ActionController.getInstance().action_operate.setVisible(true);
|
}
|
|
this.ctrl.openTaskMainWindow(false);
|
}
|
});
|
module.exports = TaskMainWindow;
|
|
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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0c1xcU2NyaXB0c1xcbW9kXFx0YXNrXFx2aWV3XFx0YXNrX21haW5fd2luZG93LmpzIl0sIm5hbWVzIjpbIlBhdGhUb29sIiwicmVxdWlyZSIsIlRhc2tDb250cm9sbGVyIiwiVGFza0V2ZW50IiwiVGFza0NvbnN0IiwiVGFza01haW5XaW5kb3ciLCJjYyIsIkNsYXNzIiwiQ29tbW9uV2luZG93VGFiIiwiY3RvciIsImN0cmwiLCJnZXRJbnN0YW5jZSIsIm1vZGVsIiwiZ2V0TW9kZWwiLCJ3aW5fdHlwZSIsIldpblR5cGUiLCJGdWxsIiwidGFiX2luZm9fbGlzdCIsImxhYmVsIiwiVXRpbHMiLCJUSTE4TiIsImluZGV4IiwidHlwZSIsInF1ZXN0Iiwic3RhdHVzIiwibm90aWNlIiwiZmVhdCIsInRpdGxlX3N0ciIsImN1cl9pbmRleCIsImN1cl9wYW5lbCIsInBhbmVsX2xpc3QiLCJBY3Rpb25Db250cm9sbGVyIiwiYWN0aW9uX29wZXJhdGUiLCJzZXRWaXNpYmxlIiwicmVnaXN0ZXJFdmVudCIsImFkZEdsb2JhbEV2ZW50IiwiVXBkYXRlVUlSZWRTdGF0dXMiLCJrZXkiLCJ2YWx1ZSIsInVwZGF0ZVVJUmVkU3RhdHVzIiwiYmluZCIsInNlbGVjdGVkVGFiQ2FsbEJhY2siLCJjaGFuZ2VUaXRsZU5hbWUiLCJjaGFuZ2VQYW5lbCIsIm9wZW5Sb290V25kIiwic2V0U2VsZWN0ZVRhYiIsInVwZGF0ZV90eXBlIiwiZmVhdF9zdGF0dXMiLCJnZXRSZWRTdGF0dXMiLCJzZXRUYWJUaXBzIiwidGFza19zdGF0dXMiLCJhY3Rpdml0eSIsImFkZFRvUGFyZW50IiwiVGFza1BhbmVsIiwiRmVhdFBhbmVsIiwic2V0UGFyZW50IiwiY29udGFpbmVyIiwic2hvdyIsImNsb3NlQ2FsbEJhY2siLCJrIiwiZGVsZXRlTWUiLCJvcGVuVGFza01haW5XaW5kb3ciLCJtb2R1bGUiLCJleHBvcnRzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQ0E7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Q3BCLFdBQWpCLEdBQStCcUIsY0FBbEMsRUFBaUQ7QUFDN0NELE1BQUFBLGdCQUFnQixDQUFDcEIsV0FBakIsR0FBK0JxQixjQUEvQixDQUE4Q0MsVUFBOUMsQ0FBeUQsSUFBekQ7QUFDSDs7QUFDRCxTQUFLdkIsSUFBTCxDQUFVbUQsa0JBQVYsQ0FBNkIsS0FBN0I7QUFDSDtBQXhGeUIsQ0FBVCxDQUFyQjtBQTJGQUMsTUFBTSxDQUFDQyxPQUFQLEdBQWlCMUQsY0FBakIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIEBhdXRob3I6IHNoaXJhaG9Ac3lnLmNvbSjlv4XloassIOWIm+W7uuaooeWdl+eahOS6uuWRmClcclxuLy8gQGRlc2NyaXB0aW9uOlxyXG4vLyAgICAgIOaXpeW4uOS4u+eVjOmdou+8jOWMheWQq+S6huS7u+WKoeWSjOaIkOWwsVxyXG4vLyA8YnIvPkNyZWF0ZTogbmV3IERhdGUoKS50b0lTT1N0cmluZygpXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG52YXIgUGF0aFRvb2wgPSByZXF1aXJlKFwicGF0aHRvb2xcIik7XHJcbnZhciBUYXNrQ29udHJvbGxlciA9IHJlcXVpcmUoXCJ0YXNrX2NvbnRyb2xsZXJcIik7XHJcbnZhciBUYXNrRXZlbnQgPSByZXF1aXJlKFwidGFza19ldmVudFwiKTtcclxudmFyIFRhc2tDb25zdCA9IHJlcXVpcmUoXCJ0YXNrX2NvbnN0XCIpO1xyXG5cclxudmFyIFRhc2tNYWluV2luZG93ID0gY2MuQ2xhc3Moe1xyXG4gICAgZXh0ZW5kczogQ29tbW9uV2luZG93VGFiLFxyXG4gICAgY3RvcjogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIHRoaXMuY3RybCA9IFRhc2tDb250cm9sbGVyLmdldEluc3RhbmNlKCk7XHJcbiAgICAgICAgdGhpcy5tb2RlbCA9IHRoaXMuY3RybC5nZXRNb2RlbCgpO1xyXG4gICAgICAgIHRoaXMud2luX3R5cGUgPSBXaW5UeXBlLkZ1bGxcclxuICAgICAgICB0aGlzLnRhYl9pbmZvX2xpc3QgPSBbXHJcbiAgICAgICAgICAgIHsgbGFiZWw6IFV0aWxzLlRJMThOKFwi5pel5bi4XCIpLCBpbmRleDogVGFza0NvbnN0LnR5cGUucXVlc3QsIHN0YXR1czogdHJ1ZSwgbm90aWNlOiBVdGlscy5USTE4TihcIuaXpeW4uOS7u+WKoTEx57qn5byA5ZCvXCIpIH0sXHJcbiAgICAgICAgICAgIHsgbGFiZWw6IFV0aWxzLlRJMThOKFwi5oiQ5bCxXCIpLCBpbmRleDogVGFza0NvbnN0LnR5cGUuZmVhdCwgc3RhdHVzOiB0cnVlLCBub3RpY2U6IFV0aWxzLlRJMThOKFwi5pel5bi45Lu75YqhMTXnuqflvIDlkK9cIikgfVxyXG4gICAgICAgIF07XHJcbiAgICAgICAgdGhpcy50aXRsZV9zdHIgPSBVdGlscy5USTE4TihcIuaXpeW4uFwiKTtcclxuICAgICAgICB0aGlzLmN1cl9pbmRleCA9IDE7XHJcbiAgICAgICAgdGhpcy5jdXJfcGFuZWwgPSBudWxsO1xyXG4gICAgICAgIHRoaXMucGFuZWxfbGlzdCA9IFtdO1xyXG4gICAgICAgIHZhciBBY3Rpb25Db250cm9sbGVyID0gcmVxdWlyZShcImFjdGlvbl9jb250cm9sbGVyXCIpXHJcbiAgICAgICAgaWYoQWN0aW9uQ29udHJvbGxlci5nZXRJbnN0YW5jZSgpLmFjdGlvbl9vcGVyYXRlKXtcclxuICAgICAgICAgICAgQWN0aW9uQ29udHJvbGxlci5nZXRJbnN0YW5jZSgpLmFjdGlvbl9vcGVyYXRlLnNldFZpc2libGUoZmFsc2UpICAgXHJcbiAgICAgICAgfVxyXG4gICAgfSxcclxuXHJcblxyXG5cclxuICAgIHJlZ2lzdGVyRXZlbnQ6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICB0aGlzLmFkZEdsb2JhbEV2ZW50KFRhc2tFdmVudC5VcGRhdGVVSVJlZFN0YXR1cywgZnVuY3Rpb24gKGtleSwgdmFsdWUpIHtcclxuICAgICAgICAgICAgdGhpcy51cGRhdGVVSVJlZFN0YXR1cyhrZXkpXHJcbiAgICAgICAgfS5iaW5kKHRoaXMpKVxyXG4gICAgfSxcclxuXHJcbiAgICBzZWxlY3RlZFRhYkNhbGxCYWNrOiBmdW5jdGlvbiAoaW5kZXgpIHtcclxuICAgICAgICBpZiAoaW5kZXggPT0gVGFza0NvbnN0LnR5cGUucXVlc3QpXHJcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlVGl0bGVOYW1lKFV0aWxzLlRJMThOKFwi5pel5bi4XCIpKTtcclxuICAgICAgICBlbHNlIGlmIChpbmRleCA9PSBUYXNrQ29uc3QudHlwZS5mZWF0KVxyXG4gICAgICAgICAgICB0aGlzLmNoYW5nZVRpdGxlTmFtZShVdGlscy5USTE4TihcIuaIkOWwsVwiKSk7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VQYW5lbChpbmRleCk7XHJcbiAgICB9LFxyXG5cclxuICAgIG9wZW5Sb290V25kOiBmdW5jdGlvbiAoaW5kZXgpIHtcclxuICAgICAgICBpbmRleCA9IGluZGV4IHx8IFRhc2tDb25zdC50eXBlLnF1ZXN0O1xyXG4gICAgICAgIHRoaXMuc2V0U2VsZWN0ZVRhYihpbmRleCwgdHJ1ZSk7XHJcbiAgICAgICAgdGhpcy51cGRhdGVVSVJlZFN0YXR1cyhUYXNrQ29uc3QudXBkYXRlX3R5cGUuZmVhdClcclxuICAgICAgICB0aGlzLnVwZGF0ZVVJUmVkU3RhdHVzKFRhc2tDb25zdC51cGRhdGVfdHlwZS5xdWVzdClcclxuICAgIH0sXHJcblxyXG4gICAgdXBkYXRlVUlSZWRTdGF0dXM6IGZ1bmN0aW9uICh0eXBlKSB7XHJcbiAgICAgICAgaWYgKHR5cGUgPT0gVGFza0NvbnN0LnVwZGF0ZV90eXBlLmZlYXQpIHtcclxuICAgICAgICAgICAgdmFyIGZlYXRfc3RhdHVzID0gdGhpcy5tb2RlbC5nZXRSZWRTdGF0dXMoVGFza0NvbnN0LnVwZGF0ZV90eXBlLmZlYXQpO1xyXG4gICAgICAgICAgICB0aGlzLnNldFRhYlRpcHMoZmVhdF9zdGF0dXMsIFRhc2tDb25zdC50eXBlLmZlYXQpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHZhciB0YXNrX3N0YXR1cyA9IHRoaXMubW9kZWwuZ2V0UmVkU3RhdHVzKFRhc2tDb25zdC51cGRhdGVfdHlwZS5xdWVzdCk7XHJcbiAgICAgICAgICAgIGlmICh0YXNrX3N0YXR1cyA9PSBmYWxzZSlcclxuICAgICAgICAgICAgICAgIHRhc2tfc3RhdHVzID0gdGhpcy5tb2RlbC5nZXRSZWRTdGF0dXMoVGFza0NvbnN0LnVwZGF0ZV90eXBlLmFjdGl2aXR5KTtcclxuICAgICAgICAgICAgdGhpcy5zZXRUYWJUaXBzKHRhc2tfc3RhdHVzLCBUYXNrQ29uc3QudHlwZS5xdWVzdCk7XHJcbiAgICAgICAgfVxyXG4gICAgfSxcclxuXHJcbiAgICBjaGFuZ2VQYW5lbDogZnVuY3Rpb24gKGluZGV4KSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY3VyX3BhbmVsICE9IG51bGwpIHtcclxuICAgICAgICAgICAgdGhpcy5jdXJfcGFuZWwuYWRkVG9QYXJlbnQoZmFsc2UpO1xyXG4gICAgICAgICAgICB0aGlzLmN1cl9wYW5lbCA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLnBhbmVsX2xpc3RbaW5kZXhdID09IG51bGwpIHtcclxuICAgICAgICAgICAgaWYgKGluZGV4ID09IFRhc2tDb25zdC50eXBlLnF1ZXN0KSB7XHJcbiAgICAgICAgICAgICAgICB2YXIgVGFza1BhbmVsID0gcmVxdWlyZShcInRhc2tfcGFuZWxcIik7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnBhbmVsX2xpc3RbaW5kZXhdID0gbmV3IFRhc2tQYW5lbCgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKGluZGV4ID09IFRhc2tDb25zdC50eXBlLmZlYXQpIHtcclxuICAgICAgICAgICAgICAgIHZhciBGZWF0UGFuZWwgPSByZXF1aXJlKFwiZmVhdF9wYW5lbFwiKTtcclxuICAgICAgICAgICAgICAgIHRoaXMucGFuZWxfbGlzdFtpbmRleF0gPSBuZXcgRmVhdFBhbmVsKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5wYW5lbF9saXN0W2luZGV4XS5zZXRQYXJlbnQodGhpcy5jb250YWluZXIpO1xyXG4gICAgICAgICAgICB0aGlzLnBhbmVsX2xpc3RbaW5kZXhdLnNob3coKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5jdXJfcGFuZWwgPSB0aGlzLnBhbmVsX2xpc3RbaW5kZXhdO1xyXG4gICAgICAgIGlmICh0aGlzLmN1cl9wYW5lbCAhPSBudWxsKVxyXG4gICAgICAgICAgICB0aGlzLmN1cl9wYW5lbC5hZGRUb1BhcmVudCh0cnVlKTtcclxuICAgIH0sXHJcblxyXG4gICAgY2xvc2VDYWxsQmFjazogZnVuY3Rpb24gKCkge1xyXG4gICAgICAgIGZvciAodmFyIGsgaW4gdGhpcy5wYW5lbF9saXN0KXtcclxuICAgICAgICAgICAgdGhpcy5wYW5lbF9saXN0W2tdLmRlbGV0ZU1lKCk7XHJcbiAgICAgICAgICAgIHRoaXMucGFuZWxfbGlzdFtrXSA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMucGFuZWxfbGlzdCA9IG51bGw7XHJcbiAgICAgICAgdmFyIEFjdGlvbkNvbnRyb2xsZXIgPSByZXF1aXJlKFwiYWN0aW9uX2NvbnRyb2xsZXJcIilcclxuICAgICAgICBpZihBY3Rpb25Db250cm9sbGVyLmdldEluc3RhbmNlKCkuYWN0aW9uX29wZXJhdGUpe1xyXG4gICAgICAgICAgICBBY3Rpb25Db250cm9sbGVyLmdldEluc3RhbmNlKCkuYWN0aW9uX29wZXJhdGUuc2V0VmlzaWJsZSh0cnVlKSAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmN0cmwub3BlblRhc2tNYWluV2luZG93KGZhbHNlKTtcclxuICAgIH1cclxufSk7XHJcblxyXG5tb2R1bGUuZXhwb3J0cyA9IFRhc2tNYWluV2luZG93OyJdfQ==
|