"use strict"; cc._RF.push(module, 'a3db1G2a/JJc76hO6QwJsIt', 'cmp.element.main'); // Scripts/mod/pve/element/cmp/cmp.element.main.js "use strict"; var BridgeWindow = require("bridge.window"); var RankConstant = require("rank_constant"); var TipsController = require("tips_controller"); var ElementController = require("element_controller"); var ElementEvent = require("element_event"); var ElementItem = require("cmp.element.item"); var RoleController = require("role_controller"); cc.Class({ "extends": BridgeWindow, properties: { item_list: { "default": [], type: [ElementItem] }, count: { "default": null, type: cc.Node }, buyCount: { "default": null, type: cc.Node }, cdNd: { "default": null, type: cc.Node } }, // LIFE-CYCLE CALLBACKS: onLoad: function onLoad() { this.ctrl = ElementController.getInstance(); this.model = this.ctrl.getModel(); this.bindGEvent(ElementEvent.Update_Element_Data_Event, this.updateData.bind(this)); this.bindGEvent(ElementEvent.Update_Element_Count_Event, this.checkBuyCount.bind(this)); }, updateData: function updateData() { if (!this.model.checkIsHaveElementData()) return; var ele_data = this.model.getElementData(); //設置冷卻時間 for (var i in ele_data.list) { var data = ele_data.list[i]; if (data.endtime > 0) { nx.gui.setCdTxt(this.cdNd, "", data.endtime); this.model.setRecordOpenType(data.type); } for (var j in this.item_list) { if (this.item_list[j].type == data.type) { this.item_list[j].setData(data); break; } } } }, start: function start() {}, onOpenConfigs: function onOpenConfigs() { //刷新當天基礎數據 this.ctrl.sender25000(); this.checkBuyCount(); }, onPreClosed: function onPreClosed() {}, checkBuyCount: function checkBuyCount() { var last_count = this.model.getTodayLeftBuyCount(); nx.gui.setString(this.buyCount, "", last_count); var challenge_count = this.model.getLeftChallengeCount(); var str = cc.js.formatStr("%s/%s", challenge_count, game.configs.element_temple_data.data_const.refresh_number.val); nx.gui.setString(this.count, "", str); }, onClickBuyCount: function onClickBuyCount() { var _this = this; var challenge_count = this.model.getLeftChallengeCount(); if (challenge_count >= game.configs.element_temple_data.data_const.refresh_number.val) { return nx.tbox("tip_eleChangeNumEnough"); } var str = ""; if (this.model.getTodayLeftBuyCount() > 0) { var normal_buy_count = this.model.getNormalBuyCount(); var buy_cfg = game.configs.element_temple_data.data_buy_count[normal_buy_count + 1]; var privilege_status = RoleController.getInstance().getModel().checkPrivilegeStatus(4); // 特權激活狀態 if (buy_cfg) { str = cc.js.formatStr(nx.text.getKey("lab_guildsecretarea_tips_34"), 3, buy_cfg.cost); } else if (privilege_status) { var buy_count = this.model.getPrivilegeBuyCount(); var pri_cost = game.configs.element_temple_data.data_privilege[buy_count + 1]; if (pri_cost) { str = cc.js.formatStr(nx.text.getKey("lab_guildsecretarea_tips_34"), 3, pri_cost); } } nx.mbox(str, ["cancel", "confirm"], function (_key, _box) { _box.close(); if (_key == "confirm") { _this.ctrl.sender25003(); } }); } else { nx.tbox("tip_eleBuyNumOver"); } }, // 规则说明 onTouchTip: function onTouchTip() { var TC = TipsController.getInstance(); if (TC) { var txt = game.configs.element_temple_data.data_explain; TC.showDetailPanel(txt); } }, onClickRank: function onClickRank() { nx.bridge.createPanel("WndPVERankAward", { type: RankConstant.RankType.element, ops: ["RankNow", "rank_reward"], dfg: game.configs.element_temple_data.data_award, show: "RankNow" }); } }); cc._RF.pop();