"use strict"; cc._RF.push(module, '37cadYZxHlEC4LA0CN0L1K2', 'cmp.main.ui.left'); // Scripts/mod/mainui/cmp/cmp.main.ui.left.js "use strict"; /****************************************************************** * Copyright(C) 2019 - 2020 Nx Studio * * 主界面跳转触发 按照新改版的逻辑进行处理 * * ******************************************************************/ var TaskController = require("task.mod"); var TaskConst = require("task_const"); var TaskEvent = require("task_event"); var FID = require("bridge.function.ids"); cc.Class({ "extends": cc.Component, properties: { nodItem: { "default": null, type: cc.Node }, nodTip: { "default": null, type: cc.Node } }, onLoad: function onLoad() { gcore.GlobalEvent.bind(TaskEvent.UpdateTaskList, this.onFreshTask.bind(this)); nx.gui.setActive(this, "ico", false); }, onEnable: function onEnable() { this.onFreshTask(); this.onTouchTask(); }, onFreshTask: function onFreshTask(_task) { /// 默認顯示的是 戰鬥任務相關---- 10 var model = TaskController.getInstance().getModel(); var self = this; var allTask = model.getAllTaskInfo(); var lst = []; var main = []; var battleTask = []; var plotTasks = []; var showtitle = ""; if (allTask) { var maintasks = allTask[1]; // 雜項任務 var diff = allTask[2]; // 親密度培養任務 var battle_task = allTask[10]; // 副本戰鬥任務 var plotTask = allTask[11]; // 引導任務 var total = 0; var now = 0; var title = ""; var canshow = false; this.select = 0; nx.gui.setActive(this.nodItem, "tip", false); // nx.gui.setActive( this.nodTip, "", false ); var dealGroups = function dealGroups(_data, _groups) { var group = _groups; var datas = _data; var _loop = function _loop() { var task = datas[i]; var showTasks = []; task.forEach(function (_task) { if (_task.canshow) { showTasks.push(_task); } }); var data = { name: i, task: showTasks }; group.push(data); }; for (var i in datas) { _loop(); } return group; }; main = dealGroups(maintasks, main); lst = dealGroups(diff, lst); battleTask = dealGroups(battle_task, battleTask); plotTasks = dealGroups(plotTask, plotTasks); var dealShowTask = function dealShowTask(_data) { var main = _data; for (var m = 0; m < main.length; m++) { var task = main[m]; // main.forEach( ) var tasklst = task.task; tasklst.sort(function (a, b) { return b.finish - a.finish; }); for (var k = 0; k < tasklst.length; k++) { var titem = tasklst[k]; if (titem.show == 1) { if (titem.type == 10) { now = now == 0 ? k : now; total = total == 0 ? tasklst.length : total; title = title == "" ? task.name : title; showtitle = nx.text.getKey("BattlePlot"); self.select = 2; } else { if (nx.dt.strEmpty(showtitle)) { now = now == 0 ? k : now; total = total == 0 ? tasklst.length : total; title = title == "" ? nx.text.getKey("BattlePlot" + titem.type) : title; showtitle = nx.text.getKey("BattlePlot" + titem.type); } // self.select = 2; } if (titem.finish == 1) { nx.gui.setActive(self.nodItem, "tip", true); // nx.gui.setActive( self.nodTip, "", true ); canshow = true; } switch (titem.type) { case 1: { nx.mTip.openTip("tipTask.main", titem.finish); } ; break; case 2: { nx.mTip.openTip("tipTask.branch", titem.finish); } ; break; case 10: { nx.mTip.openTip("tipTask.battle", titem.finish); } ; break; case 11: { nx.mTip.openTip("tipTask.plot", titem.finish); } ; break; } break; } } } }; dealShowTask(battleTask); dealShowTask(main); dealShowTask(lst); dealShowTask(plotTasks); // if( total == 0 ){ // this.select = 1; // dealShowTask( lst ); // nx.mTip.openTip( "tipTask.branch", canshow ); // // showtitle = nx.text.getKey( "BranchTask" ); // } nx.gui.setString(this.nodItem, "title", title); nx.gui.setActive(this.nodItem, "state", false); nx.gui.setString(this.nodItem, "desc", showtitle); nx.gui.setString(this.nodItem, "txt", "(" + (now + 1) + "/" + total + ")"); } // console.log( now + "所有的任务相关" + total ); }, onTouchTask: function onTouchTask() { // let anim = nx.gui.getComponent( this, "task", cc.Animation ); // anim.play('task_show'); // nx.gui.setActive( this, "ico", false ); }, onTouchTaskHide: function onTouchTaskHide() { var anim = nx.gui.getComponent(this, "task", cc.Animation); anim.play('task_hide'); nx.gui.setActive(this, "ico", true); }, onTouchTaskMore: function onTouchTaskMore() { if (nx.bridge.plot && nx.bridge.plot.isDoing()) { nx.bridge.jumper.jump2Window(FID.Task, 0); } else { nx.bridge.jumper.jump2Window(FID.Task, this.select); } // TaskController.getInstance().openMainTaskWindow( true ); } }); cc._RF.pop();