143 lines
4.3 KiB
JavaScript
143 lines
4.3 KiB
JavaScript
"use strict";
|
|
cc._RF.push(module, 'bdbd08rj7JKrIgM8eiPYypO', 'cmp.startower.firstaward');
|
|
// Scripts/mod/pve/startower/cmp/cmp.startower.firstaward.js
|
|
|
|
"use strict";
|
|
|
|
var _bridge = _interopRequireDefault(require("bridge.component"));
|
|
var _startower = _interopRequireDefault(require("startower.mod"));
|
|
var _cmpCommon = _interopRequireDefault(require("cmp.common.itemlayout"));
|
|
var _startower2 = _interopRequireDefault(require("startower.define"));
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
cc.Class({
|
|
"extends": _bridge["default"],
|
|
properties: {
|
|
awardBar: {
|
|
"default": null,
|
|
type: cc.ProgressBar
|
|
},
|
|
togLay: {
|
|
"default": null,
|
|
type: cc.Node
|
|
},
|
|
togNd: {
|
|
"default": null,
|
|
type: cc.Node
|
|
},
|
|
showNd: {
|
|
"default": null,
|
|
type: cc.Node
|
|
},
|
|
list: {
|
|
"default": null,
|
|
type: _cmpCommon["default"]
|
|
},
|
|
boxs: {
|
|
"default": [],
|
|
type: [cc.Node]
|
|
}
|
|
},
|
|
// LIFE-CYCLE CALLBACKS:
|
|
onLoad: function onLoad() {
|
|
this._super();
|
|
this.awards = game.configs.star_tower_data.data_get_floor_award;
|
|
this.pro_list = [0.2, 0.5, 1];
|
|
this.box_data = {};
|
|
this.bindGEvent(_startower2["default"].Update_Reward_Event, this.updateBoxAwards.bind(this));
|
|
},
|
|
start: function start() {},
|
|
onDestroy: function onDestroy() {
|
|
this.awards = null;
|
|
this.pro_list = null;
|
|
},
|
|
onDisable: function onDisable() {
|
|
this.list.rebuild([]);
|
|
this.unbindGEvents();
|
|
},
|
|
onEnable: function onEnable() {
|
|
this.updateBoxAwards();
|
|
},
|
|
updateBoxAwards: function updateBoxAwards() {
|
|
var max_tower = _startower["default"].getInstance().getNowTowerId() || 0;
|
|
var arr = this.sortAwards();
|
|
//每三十層換一輪
|
|
var floor_awards = [];
|
|
for (var i in arr) {
|
|
var seq = arr[i];
|
|
if (max_tower >= seq[0].tower && max_tower <= seq[2].tower) {
|
|
floor_awards = seq;
|
|
break;
|
|
} else if (max_tower < seq[0].tower) {
|
|
floor_awards = seq;
|
|
break;
|
|
}
|
|
// else if(max_tower > seq[2].tower){
|
|
// floor_awards = seq;
|
|
// break;
|
|
// }
|
|
}
|
|
|
|
//刷新進度條
|
|
this.awardBar.progress = 0;
|
|
for (var floor = 0; floor < floor_awards.length; floor++) {
|
|
this.createBox(floor, floor_awards[floor], max_tower);
|
|
}
|
|
},
|
|
createBox: function createBox(order, cfg, max_tower) {
|
|
var box = this.boxs[order];
|
|
this.box_data[order] = cfg;
|
|
var award_status = _startower["default"].getInstance().getRewardDataById(cfg.id);
|
|
var tog = nx.gui.find(box, "tog");
|
|
nx.gui.setSpriteFrame(tog, "bg", cc.js.formatStr("prefab/pve/startower/ui/%s", order + 1));
|
|
nx.gui.setSpriteFrame(tog, "check", cc.js.formatStr("prefab/pve/startower/ui/%s", (order + 1) * 10 + (order + 1)));
|
|
nx.gui.setString(tog, "bg/txt", cc.js.formatStr(nx.text.getKey("RankArriInfo"), cfg.tower));
|
|
nx.gui.setString(tog, "check/txt", cc.js.formatStr(nx.text.getKey("RankArriInfo"), cfg.tower));
|
|
if (max_tower >= cfg.tower) {
|
|
this.awardBar.progress = this.pro_list[order];
|
|
if (!award_status || award_status.status <= 1) {
|
|
nx.gui.setActive(tog, "check", false);
|
|
nx.gui.setActive(tog, "bg", true);
|
|
} else {
|
|
nx.gui.setActive(tog, "check", true);
|
|
nx.gui.setActive(tog, "bg", false);
|
|
}
|
|
} else {
|
|
nx.gui.setActive(tog, "check", false);
|
|
nx.gui.setActive(tog, "bg", true);
|
|
}
|
|
},
|
|
sortAwards: function sortAwards() {
|
|
var new_list = [];
|
|
var index = 0;
|
|
var arr = [];
|
|
for (var i in this.awards) {
|
|
if (index < 3) {
|
|
arr.push(this.awards[i]);
|
|
index++;
|
|
if (index >= 3) {
|
|
index = 0;
|
|
new_list.push(arr);
|
|
arr = [];
|
|
}
|
|
}
|
|
}
|
|
return new_list;
|
|
},
|
|
onClickShowAward: function onClickShowAward(_index) {
|
|
var data = this.box_data[_index];
|
|
if (data) {
|
|
this.list.rebuild(data.award || []);
|
|
this.showNd.active = true;
|
|
this.showNd.x = this.boxs[_index].x + 150;
|
|
this.showNd.y = this.boxs[_index].y + 50;
|
|
}
|
|
},
|
|
onHideAward: function onHideAward() {
|
|
this.showNd.active = false;
|
|
},
|
|
onClickAllGift: function onClickAllGift() {
|
|
_startower["default"].getInstance().sender11328(0);
|
|
} // update (dt) {},
|
|
});
|
|
|
|
cc._RF.pop(); |