Files
fc/dev/project/library/imports/5b/5b31586f-fd04-463d-bd01-1483d34578a6.js
2026-05-24 10:21:26 +08:00

113 lines
3.2 KiB
JavaScript

"use strict";
cc._RF.push(module, '5b315hv/QRGPb0BFIPTRXim', 'act.sign15.mod');
// Scripts/mod/acts/sign15/act.sign15.mod.js
"use strict";
/*******************************************************************************
*
* 活动: 15日签到
*
*
******************************************************************************/
var ActBase = require("act.base");
var ActModSign15 = cc.Class({
"extends": ActBase,
// 初始化配置数据
initConfig: function initConfig() {
// 视图附着
nx.plugin.add(this, ["view"]);
this.vattach("Acts");
},
// 注册协议接受事件
registerProtocals: function registerProtocals() {
this.RegisterProtocal(14110, this.onHand14110.bind(this)); // 签到数据
this.RegisterProtocal(14111, this.onHand14111.bind(this)); // 领取签到
},
// 从服务器初始化数据
reqBaseFromServer: function reqBaseFromServer(_cb) {
var _this = this;
var cfgs = ["holiday_checkin_data"];
this.loadConfigs(cfgs, function (_ret, _data) {
nx.dt.fnInvoke(_cb, true);
_this.reqSignData();
});
},
// 签到数据
reqSignData: function reqSignData(_cb) {
this.SendProtocal(14110, {
camp_id: this.data.camp_id
}, _cb);
},
// 签到数据
onHand14110: function onHand14110(_data) {
if (_data.camp_id != this.data.camp_id || !this.isGoodData(_data)) {
return;
}
nx.bridge.acts.vset("sign15", _data.gift_buy_info || []);
this.freshTips();
},
// 领取签到
reqReward: function reqReward(_day, _cb) {
this.SendProtocal(14111, {
camp_id: this.data.camp_id,
day: _day
}, _cb);
},
// 领取签到
onHand14111: function onHand14111(_data) {
if (_data.camp_id != this.data.camp_id || !this.isGoodData(_data)) {
return;
}
this.reqSignData();
},
// 获取配置
queryConfig: function queryConfig() {
var data = game.configs.holiday_checkin_data.data_client_info;
var cfgs = data ? data[this.data.camp_id] : null;
if (nx.dt.objEmpty(cfgs)) {
nx.error("Sign15:\u7B7E\u5230\u914D\u7F6E\u7F3A\u5931!" + this.data.camp_id);
}
return cfgs;
},
// 获取帮助
queryRule: function queryRule() {
var data = game.configs.holiday_checkin_data.data_desc;
var cfgs = data ? data[this.data.camp_id] : null;
return cfgs ? cfgs.desc : "";
},
// 获取签到任务配置
queryTaskList: function queryTaskList() {
var data = game.configs.holiday_checkin_data.data_sign_in;
var list = data ? data[this.data.camp_id] : null;
if (nx.dt.objEmpty(list)) {
nx.error("Sign15:\u7B7E\u5230\u4EFB\u52A1\u914D\u7F6E\u7F3A\u5931!" + this.data.camp_id);
}
return list;
},
// ============================================================
// 活动红点提示
// ============================================================
// 红点提示更新
freshTips: function freshTips() {
var can = false;
var list = this.vget("sign15") || [];
for (var i = 0; i < list.length; ++i) {
// 0不可领取 1可领取 2已领取
var task = list[i];
if (task && task.status == 1) {
can = true;
break;
}
}
this.openTip("reward", can);
}
});
// 模块导出
module.exports = ActModSign15;
cc._RF.pop();