const { dropConfig, all_ItemConfig } = require('../../game/gameConfig'); const NetManage = require('../../manages/NetManage'); var Utils = require("Utils") cc.Class({ extends: cc.Component, properties: { title: { default: null, type: cc.Label, }, allRewardNode:{ default: null, type: cc.Node, }, missionPrefab: { default: null, type: cc.Prefab, }, lb_time: { default: null, type: cc.Label, }, getNode:{ default: null, type: cc.Node, }, receiveNode:{ default: null, type: cc.Node, }, boostNode:{ default: null, type: cc.Node, }, }, onClickBtn() { if (this.missionState == 0) { NetManage.commitMission(this.missionId, () => { cc.uiHelper.showTips('Get Reward Success!'); }); this.node.destroy(); } if (this.missionState == 1) { const node = cc.instantiate(this.missionPrefab); node.getComponent('mission_choose').initData(this.wantedData); cc.find('Canvas').addChild(node); } if (this.missionState == 2) { NetManage.boostOfferRewardMission(this.missionId, () => { this.node.destroy(); cc.uiHelper.showTips('Boost Success!'); }); } }, onCancelBtn(){ cc.uiHelper.showTips('Boost cancel!'); NetManage.cancelOfferRewardMission(this.missionId,()=>{ }) }, formatSeconds(value) { let result = parseInt(value); let h = Math.floor(result / 3600) < 10 ? '0' + Math.floor(result / 3600) : Math.floor(result / 3600); let m = Math.floor((result / 60) % 60) < 10 ? '0' + Math.floor((result / 60) % 60) : Math.floor((result / 60) % 60); let s = Math.floor(result % 60) < 10 ? '0' + Math.floor(result % 60) : Math.floor(result % 60); let res = ''; if (h !== '00') res += `${h}:`; if (m !== '00') res += `${m}:`; res += `${s}`; return res; }, init(data, originData) { this.wantedData = data; this.missionId = originData.mission_id; if (originData.state == 0) { // this.btn_label.string = 'GET'; this.receiveNode.active = true this.missionState = 0; } if (originData.state == 2) { if (originData.objects.length == 0) { // this.btn_label.string = 'RECEIVE'; this.getNode.active = true this.missionState = 1; } else { var leftTime = originData.lefttime; this.lb_time.node.parent.active = true; // this.btn_label.string = 'BOOST'; this.boostNode.active = true this.missionState = 2; this.lb_time.string = this.formatSeconds(leftTime); this.schedule(function () { this.lb_time.string = this.formatSeconds((leftTime -= 1)); if (leftTime <= 0) { cc.Notifier.emit('FinishOne'); } }, 1); } } if (originData.state == 1) { this.node.destroy(); } }, start(){ this.setRewards(this.wantedData.reward) }, setRewards(string){ var config = dropConfig[string] var rewards = config.itemdata for(let i=0;i