Files
fc/dev/project/library/imports/2f/2f2b5476-bd97-4b93-8f6d-9b6e363b5659.js
T
2026-05-24 10:21:26 +08:00

429 lines
12 KiB
JavaScript

"use strict";
cc._RF.push(module, '2f2b5R2vZdLk49tm242O1ZZ', 'cmp.taskc.main.wnd');
// Scripts/mod/task/cmp/cmp.taskc.main.wnd.js
"use strict";
var BridgeWindow = require("bridge.window");
var TaskController = require("task.mod");
var FxTogs = require("nx.fx.togs");
var FxSVC = require("nx.fx.sv.expand");
var TaskEvent = require("task_event");
cc.Class({
"extends": BridgeWindow,
properties: {
togMenu: {
"default": null,
type: FxTogs
},
togTaskMenu: {
"default": null,
type: FxTogs
},
nodTaskList: {
"default": null,
type: FxSVC
},
nodTaskContent: {
"default": null,
type: cc.Node
},
nodTaskItem: {
"default": null,
type: cc.Node
},
nodTaskItemDiff: {
"default": null,
type: cc.Node
},
nodTaskPanelMain: {
"default": null,
type: cc.Node
},
nodTaskPanelDiffer: {
"default": null,
type: cc.Node
},
nodTask: {
"default": null,
type: cc.Node
}
},
onLoad: function onLoad() {
var _this = this;
var TC = TaskController.getInstance();
var model = TC.getModel();
var allTask = model.getAllTaskInfo();
var tasks = allTask;
nx.gui.hideAllChildren(this.togMenu.node, "");
var _loop = function _loop() {
var task = tasks[i];
// console.log( "任务相关" + JSON.stringify( task ) );
var showTasks = [];
for (var t in task) {
var taskc = task[t];
taskc.forEach(function (_task) {
if (_task.canshow) {
showTasks.push(_task);
}
});
nx.gui.setActive(_this.togMenu.node, "item" + i, showTasks.length > 0);
}
};
for (var i in tasks) {
_loop();
}
this.bindGEvent(TaskEvent.UpdateTaskList, this.freshTask.bind(this));
this.togMenu.posTog = this.onTogMenu.bind(this);
},
// 重载:参数打开
onOpenConfigs: function onOpenConfigs(_params) {
// console.log( "參數相關----" + JSON.stringify( _params ) );
var _goto = _params;
if (_goto && _goto >= 0) {
this.togMenu.togTo(_goto);
this.onTogMenu(_goto);
} else {
var chd = this.togMenu.node.children;
for (var c = 0; c < chd.length; c++) {
var nod = chd[c];
if (nod.active) {
this.togMenu.togTo(c);
this.onTogMenu(c);
break;
}
}
}
},
// 背包切换
onTogMenu: function onTogMenu(_index) {
var idx = parseInt(_index);
var type = 0;
switch (idx) {
case 0:
{
type = 10;
}
;
break;
case 1:
{
type = 1;
}
;
break;
case 2:
{
type = 9;
}
;
break;
case 3:
{
type = 0;
}
;
break;
}
this.selectTwo = idx;
this.activeMenu(type);
},
// 背包切换
onTogMenuTask: function onTogMenuTask(_index) {
this.activeTask(_index);
},
freshTask: function freshTask(_data) {
var _this2 = this;
var TC = TaskController.getInstance();
var model = TC.getModel();
var allTask = model.getAllTaskInfo();
var tasks = allTask;
nx.gui.hideAllChildren(this.togMenu.node, "");
var _loop2 = function _loop2() {
var task = tasks[i];
var showTasks = [];
for (var t in task) {
var taskc = task[t];
taskc.forEach(function (_task) {
if (_task.canshow) {
showTasks.push(_task);
}
});
nx.gui.setActive(_this2.togMenu.node, "item" + i, showTasks.length > 0);
}
// console.log( "任务相关" + i );
};
for (var i in tasks) {
_loop2();
}
var chd = this.togMenu.node.children;
if (this.selectTwo && chd[this.selectTwo].active) {
this.togMenu.togTo(this.selectTwo);
this.onTogMenu(this.selectTwo);
} else {
for (var c = 0; c < chd.length; c++) {
var nod = chd[c];
if (nod.active) {
this.togMenu.togTo(c);
this.onTogMenu(c);
break;
}
}
}
// this.activeMenu( this.selectOne );
},
activeTask: function activeTask(_index) {
var _this3 = this;
var show = 0;
var shownext = 0;
for (var i = 0; i < this.nodTaskContentc.children.length; i++) {
var nod = this.nodTaskContentc.children[i];
if (i == _index) {
var child = nx.gui.find(nod, "on/content");
child.children.forEach(function (_chd) {
if (_chd.mdata.showfirst == 1) {
_this3.onTouchTask(_chd);
show++;
} else {
if (show == 0) {
if (_chd.mdata.canshow) {
_this3.onTouchTask(_chd);
shownext++;
show++;
}
if (shownext == 0) {
_this3.showTaskInfo(_chd);
}
}
}
});
}
}
},
// 激活菜单
activeMenu: function activeMenu(_index) {
var _this4 = this;
var TC = TaskController.getInstance();
if (TC) {
var model = TC.getModel();
var allTask = model.getAllTaskInfo();
this.nodTaskContentc = _index == 0 ? nx.gui.find(this.nodTaskPanelMain, "view/content") : nx.gui.find(this.nodTaskPanelDiffer, "view/content");
this.togTaskMenu = this.nodTaskContentc.getComponent("nx.fx.togs");
this.togTaskMenu.posTog = this.onTogMenuTask.bind(this);
// this.togTaskMenu.togTo( 0 );
nx.gui.cleanAllChildren(this.nodTaskContentc);
var show = {
mdata: {
show: 0
}
};
this.selectOne = _index;
this.freshLst(allTask[_index + 1]);
this.scheduleOnce(function () {
_this4.showTaskInfo(show);
}, 0.2);
}
},
onTouchMenus: function onTouchMenus() {},
freshLst: function freshLst(_task) {
var _this5 = this;
this.unscheduleAllCallbacks();
var self = this;
var lst = [];
var showss = [];
var tweens = [];
var nodParent = this.selectOne == 0 ? this.nodTaskPanelMain : this.nodTaskPanelDiffer;
var _loop3 = function _loop3() {
var task = _task[i];
var showTasks = [];
task.forEach(function (_task) {
if (_task.canshow) {
showTasks.push(_task);
}
});
var data = {
name: i,
task: showTasks
};
lst.push(data);
};
for (var i in _task) {
_loop3();
}
var setChildren = function setChildren(_node, _task, _t) {
var pnod = _node;
var nods = nx.gui.find(_node, "on/content");
// showss = [];
_task.task.sort(function (a, b) {
return b.finish - a.finish;
});
nx.gui.gocChildren(nods, "", _task.task.length);
// 设置 子任务相关显示
var hideall = 0;
for (var _i = 0; _i < nods.children.length; _i++) {
var nod = nods.children[_i];
var task = _task.task[_i];
if (task) {
if (task.finish == 0) {
hideall++;
}
nx.gui.setString(nod, "txt", nx.dt.strCut(task.desc, 30));
nx.gui.setActive(nod, "on", task.show == 1);
nx.gui.setActive(nod, "bg", true);
nx.gui.setString(nod, "lock/txt", task.desc);
task.showfirst = task.finish == 1 ? 1 : 0;
nx.gui.setActive(nod, "tip", task.finish == 1);
nod.mdata = task;
nx.gui.setActive(nod, "lock", task.show == 0);
if (task.show == 1) {
if (_i == 0) {
showss.push(nod);
}
// nx.gui.setActive( nod, "bg", false );
// nx.gui.setActive( nod, "on", true );
// self.showTaskInfo( nod );
// if( task.finish == 1 ){
// self.onTouchTask
// }
// showFirst = nx.dt.objClone( nod );
}
}
}
};
var nods = [];
var _loop4 = function _loop4() {
var task = lst[t];
if (task.task.length > 0) {
var nod = _this5.selectOne == 0 ? cc.instantiate(_this5.nodTaskItem) : cc.instantiate(_this5.nodTaskItemDiff);
nod.active = true;
var cnt = nx.gui.find(nod, "on/content");
nod.children.forEach(function (_nod) {
nx.gui.setString(_nod, "type/name", task.name);
});
setChildren(nod, task, t);
nods.push(nod);
}
};
for (var t = 0; t < lst.length; t++) {
_loop4();
}
nx.gui.setActive(nodParent, "empty", nx.dt.arrEmpty(nods));
var set = 0;
tweens.push(this.nodTaskContentc);
for (var n = 0; n < nods.length; n++) {
var nodd = nods[n];
nodd.setParent(this.nodTaskContentc);
set++;
}
nx.gui.setActive(this.nodTaskPanelMain, "", this.selectOne == 0 && set == nods.length);
nx.gui.setActive(this.nodTaskPanelDiffer, "", this.selectOne != 0);
var cmp = nx.gui.getComponent(this.nodTaskContentc, "", "nx.fx.togs");
if (cmp) {
cmp.rebuildTogs();
cmp._freshTogShow();
// for (let t = 0; t < tweens.length; t++) {
// let tween = tweens[t];
// // nx.tween.fadeIn( tween, "", 0.3 );
// }
// nx.tween.fadeIn( this.nodTaskContentc, "", 0.3 );
cmp.togTo(0);
// console.log( "刷新聚焦显示 " + show.length );
// self.onTouchTask( showFirst );
}
// this.nodTaskContentc.children[0].onTouchTog
this.scheduleOnce(function () {
for (var s = 0; s < showss.length; s++) {
var nod = showss[s];
if (s == 0) {
nx.gui.setActive(nod, "on", true);
self.onTouchTask(nod);
}
}
}, 0.1);
},
showTaskInfo: function showTaskInfo(_nod) {
var _this6 = this;
var nod = nx.gui.find(this.nodTask, "info/view/content");
var nodOp = nx.gui.find(this.nodTask, "ops");
nx.gui.setActive(this.nodTask, "empty", false);
if (_nod.mdata.show == 1) {
var task = _nod.mdata;
nx.gui.setString(nod, "desc/txt", task.name);
nx.gui.setString(nod, "task/txt2", task.desc);
var awards = nx.gui.find(nod, "awards/rewards");
// nx.gui.setActive( )
var cmp = awards.getComponent("cmp.item.layout");
// 任务子菜单 二级奖励显示
cmp.rebuild(task.commit_rewards);
this.nowTask = task;
nx.gui.setActive(nodOp, "go", task.finish == 1);
nx.gui.setActive(nodOp, "goto", task.finish == 0 && task.skip_id > 0);
nx.gui.setActive(nod, "awards/finished", task.finish == 2);
this.go = function () {
var id = task.skip_id;
// 道具操作跳转
nx.bridge.jumper.jump2Window(id);
_this6.close();
};
this.get = function () {
var TC = TaskController.getInstance();
if (TC) {
TC.requestSubmitTask(task.id);
}
};
nx.gui.setActive(nod, "desc", task.type == 1);
// console.log( JSON.stringify( _nod.mdata ) + "任务显示信息" );
} else {
var _cmp = nx.gui.getComponent(this.nodTaskContentc, "", "nx.fx.togs");
if (_cmp) {
_cmp.rebuildTogs();
_cmp._freshTogShow();
// for (let t = 0; t < tweens.length; t++) {
// let tween = tweens[t];
// // nx.tween.fadeIn( tween, "", 0.3 );
// }
// nx.tween.fadeIn( this.nodTaskContentc, "", 0.3 );
_cmp.togTo(0);
// console.log( "刷新聚焦显示 " + show.length );
// self.onTouchTask( showFirst );
}
}
},
onTouchGoTo: function onTouchGoTo() {
nx.dt.fnInvoke(this.go);
},
onTouchGet: function onTouchGet() {
nx.dt.fnInvoke(this.get);
},
onFocusTask: function onFocusTask() {},
onTouchTask: function onTouchTask(_nod) {
var nod = this.nodTaskContentc;
for (var i = 0; i < nod.children.length; i++) {
var item = nod.children[i];
var items = nx.gui.find(item, "on/content").children;
items.forEach(function (_item) {
nx.gui.setActive(_item, "on", false);
});
}
nx.gui.setActive(_nod, "on", true);
this.showTaskInfo(_nod);
}
});
cc._RF.pop();