import { _decorator, Component, Node, Label } from 'cc'; import { RewardVideoSystem } from '../ad/RewardVideoSystem'; import { DataSystem } from '../core/data/DataSystem'; import { Http, HttpResponseCode } from '../core/net/Http'; import { HttpSystem } from '../core/net/HttpSystem'; import { Window } from '../core/ui/window/Window'; import { WindowSystem } from '../core/ui/window/WindowSystem'; import { ConfigData } from '../data/ConfigData'; import { platform } from '../data/jsb/platform'; import { UserData } from '../data/UserData'; import { ReportThinking } from '../ReportThinking'; const { ccclass, property, requireComponent } = _decorator; /**获取粮草 */ @ccclass('Grain') @requireComponent(Http) export class Grain extends Component { @property({ type: Label, tooltip: "今日剩余次数文本" }) numLabel: Label; @property({ type: Label, tooltip: "粮草数量文本" }) grainNumLabel: Label; @property({ type: Label, tooltip: "训练次数文本" }) trainNumLabel: Label; private num: number; start() { } /**当日看视频领取免费粮草次数 */ private async getMoneyTimes(num) { this.num = num; let missionData = DataSystem.getData(ConfigData).get('mission'); let level = DataSystem.getData(UserData).level; this.grainNumLabel.string = 'x' + missionData[level].videofood; this.trainNumLabel.string = missionData[level].videofood / DataSystem.getData(ConfigData).get('serverConfig').trainConsume + '次'; this.numLabel.string = this.num + '次'; } /**看视频领取粮草 */ private async getGrain() { if (this.num) { let result = await this.getComponent(Http).send("/api/ad/watchVideoAD"); if (result && result.code == HttpResponseCode.Success) { ReportThinking.ad_init('grain_get'); let adData = await RewardVideoSystem.show(); if (adData) {//视频观看成功 result = await this.getComponent(Http).send('/api/user/getMoney', { adData: adData.obj }); if (result && result.code == HttpResponseCode.Success) { ReportThinking.ad_end('grain_get', result.data); ReportThinking.currency_increase('money', DataSystem.getData(UserData).money, result.data, result.data + DataSystem.getData(UserData).money, 'getMoney'); DataSystem.getData(UserData).money += result.data; this.num--; this.numLabel.string = this.num + '次'; WindowSystem.showTips('免费粮草领取成功'); } this.getComponent(Window).close(); } } else if (result && result.code == 108) { WindowSystem.showTips('视频CD中'); } } else { WindowSystem.showTips('当日看视频领取免费粮草次数不足'); } } }