"use strict";
|
cc._RF.push(module, 'a0bd9USK0ZOmYfmuBQUriQT', 'orderaction_reward_panel');
|
// Scripts/mod/orderaction/view/orderaction_reward_panel.js
|
|
"use strict";
|
|
// --------------------------------------------------------------------
|
// @author: xxx@syg.com(必填, 创建模块的人员)
|
// @description:
|
// 战令三期 奖励
|
// <br/>Create: 2019-08-10 16:24:24
|
// --------------------------------------------------------------------
|
var PathTool = require("pathtool");
|
|
var ActionController = require("action_controller");
|
|
var CommonScrollViewSingle = require("common_scrollview_single");
|
|
var OrderActiodRewardItem = require("orderaction_reward_item_panel");
|
|
var OrderActionEvent = require("orderaction_event");
|
|
var OrderactionController = require("orderaction_controller");
|
|
var Orderaction_rewardPanel = cc.Class({
|
"extends": BasePanel,
|
ctor: function ctor() {
|
this.prefabPath = PathTool.getPrefabPath("orderaction", "reward_panel1");
|
this.ctrl = OrderactionController.getInstance();
|
this.model = this.ctrl.getModel();
|
this.cur_period = arguments[0] || 1;
|
},
|
// 可以初始化声明一些变量的
|
initConfig: function initConfig() {
|
this.cur_move_num = null;
|
this.is_init = true;
|
},
|
// 初始化一些配置数据,可以用于声明一些变量之类的
|
initPanel: function initPanel() {
|
this.main_container = this.root_wnd.getChildByName("main_container");
|
var text_1 = this.main_container.getChildByName("Image_1").getChildByName("Text_1").getComponent(cc.Label);
|
text_1.string = Utils.TI18N("等级");
|
var text_1_0 = this.main_container.getChildByName("Image_1").getChildByName("Text_1_0").getComponent(cc.Label);
|
text_1_0.string = Utils.TI18N("奖励");
|
var text_1_1 = this.main_container.getChildByName("Image_1").getChildByName("Text_1_1").getComponent(cc.Label);
|
text_1_1.string = Utils.TI18N("进阶奖励");
|
var text_2 = this.main_container.getChildByName("Image_14").getChildByName("Text_2").getComponent(cc.Label);
|
text_2.string = Utils.TI18N("奖励预览");
|
this.lev_num = this.main_container.getChildByName("Image_14").getChildByName("lev_num").getComponent(cc.Label);
|
this.lev_num.string = "";
|
this.slide_goods_item = this.main_container.getChildByName("slide_goods_item");
|
this.slide_goods_content = this.slide_goods_item.getChildByName("content");
|
this.lock_image = this.main_container.getChildByName("lock_image");
|
this.btn_change_advance = this.lock_image.getChildByName("btn_change_advance");
|
this.lock_image.active = true;
|
|
if (this.model.getGiftStatus() == 1) {
|
this.lock_image.active = false;
|
} else {
|
this.lock_image.active = true;
|
}
|
|
var goods_item = this.main_container.getChildByName("goods_item");
|
var scroll_view_size = goods_item.getContentSize();
|
var setting = {
|
start_x: 0,
|
// 第一个单元的X起点
|
space_x: 0,
|
// x方向的间隔
|
start_y: 0,
|
// 第一个单元的Y起点
|
space_y: 0,
|
// y方向的间隔
|
item_width: 635,
|
// 单元的尺寸width
|
item_height: 116,
|
// 单元的尺寸height
|
row: 0,
|
// 行数,作用于水平滚动类型
|
col: 1,
|
// 列数,作用于垂直滚动类型
|
need_dynamic: true
|
};
|
this.reward_goods_item = new CommonScrollViewSingle();
|
this.reward_goods_item.createScroll(goods_item, cc.v2(0, 0), ScrollViewDir.vertical, ScrollViewStartPos.top, scroll_view_size, setting);
|
this.reward_goods_item.registerScriptHandlerSingle(this.createTaskCell.bind(this), ScrollViewFuncType.CreateNewCell); //--创建cell
|
|
this.reward_goods_item.registerScriptHandlerSingle(this.numberOfTaskCells.bind(this), ScrollViewFuncType.NumberOfCells); //-获取数量
|
|
this.reward_goods_item.registerScriptHandlerSingle(this.updateTaskCellByIndex.bind(this), ScrollViewFuncType.UpdateCellByIndex); //更新cell
|
|
var cur_lev = this.model.getCurLev();
|
this.setChangeLevelStatus(cur_lev);
|
},
|
// 注册事件监听的接口,不需要手动调用,如果是使用gcore.GlobalEvent监听,可以直接调用addGlobalEvent
|
registerEvent: function registerEvent() {
|
this.addGlobalEvent(OrderActionEvent.OrderAction_Updata_LevExp_Event, function (data) {
|
if (data) {
|
this.setChangeLevelStatus(data.lev);
|
}
|
}.bind(this));
|
this.addGlobalEvent(OrderActionEvent.OrderAction_LevReward_Event, function (lev) {
|
this.setChangeLevelStatus(lev);
|
}.bind(this)); // 进阶卡情况
|
|
this.addGlobalEvent(OrderActionEvent.OrderAction_BuyGiftCard_Event, function () {
|
var cur_lev = this.model.getCurLev();
|
this.setChangeLevelStatus(cur_lev);
|
|
if (this.model.getGiftStatus() == 1) {
|
this.lock_image.active = false;
|
} else {
|
this.lock_image.active = true;
|
}
|
}.bind(this));
|
Utils.onTouchEnd(this.btn_change_advance, function () {
|
this.ctrl.openBuyCardView(true);
|
}.bind(this), 1);
|
},
|
createTaskCell: function createTaskCell() {
|
var cell = new OrderActiodRewardItem();
|
cell.show();
|
return cell;
|
},
|
numberOfTaskCells: function numberOfTaskCells() {
|
if (!this.reward_list) return 0;
|
return this.reward_list.length;
|
},
|
updateTaskCellByIndex: function updateTaskCellByIndex(cell, index) {
|
if (!this.reward_list) return;
|
var cell_data = this.reward_list[index];
|
|
if (!cell_data) {
|
return;
|
}
|
|
cell.setData(cell_data);
|
this.setSlideGoodsItem(cell_data.lev);
|
},
|
//滑动物品显示
|
setSlideGoodsItem: function setSlideGoodsItem(lev_index) {
|
var count = Object.keys(Config.holiday_war_order_data.data_lev_reward_list[this.cur_period]).length || 1;
|
lev_index = Math.ceil(lev_index * 0.1);
|
if (this.cur_move_num == lev_index) return;
|
this.cur_move_num = lev_index;
|
var cur_index = this.cur_move_num * 10;
|
|
if (cur_index >= count) {
|
cur_index = count;
|
}
|
|
if (cur_index == 0) {
|
cur_index = 1;
|
}
|
|
if (!Config.holiday_war_order_data.data_lev_reward_list[this.cur_period]) return;
|
var data = Config.holiday_war_order_data.data_lev_reward_list[this.cur_period][cur_index];
|
if (!data) return;
|
this.lev_num.string = "(" + data.lev + ")";
|
|
if (!this.common_item) {
|
this.common_item = ItemsPool.getInstance().getItem("backpack_item");
|
this.common_item.initConfig(false, 0.8);
|
this.common_item.setParent(this.main_container);
|
this.common_item.setPosition(263, 58);
|
this.common_item.setDefaultTip();
|
this.common_item.show();
|
}
|
|
if (data.reward && Utils.next(data.reward) != null) {
|
this.common_item.setData({
|
bid: data.reward[0][0],
|
num: data.reward[0][1]
|
});
|
this.common_item.setVisible(true);
|
} else {
|
this.common_item.setVisible(false);
|
}
|
|
var data_list = data.rmb_reward || [];
|
var setting = {};
|
setting.scale = 0.8;
|
setting.max_count = 3;
|
this.slide_goods_list = Utils.commonShowSingleRowItemList(this.slide_goods_item, this.slide_goods_list, data_list, setting, this.slide_goods_content);
|
},
|
// 当等级变化的时候
|
setChangeLevelStatus: function setChangeLevelStatus(cur_lev) {
|
if (Config.holiday_war_order_data.data_lev_reward_list[this.cur_period]) {
|
this.reward_list = [];
|
|
for (var i in Config.holiday_war_order_data.data_lev_reward_list[this.cur_period]) {
|
var v = Config.holiday_war_order_data.data_lev_reward_list[this.cur_period][i];
|
v.cur_lev = cur_lev;
|
v.status = 0;
|
v.rmb_status = 0;
|
v.is_locak = this.model.getGiftStatus();
|
var lev_list = this.model.getLevShowData(v.lev);
|
|
if (lev_list) {
|
v.status = lev_list.status;
|
v.rmb_status = lev_list.rmb_status;
|
}
|
|
if (v.status == 1 && v.rmb_status == 1) {} else {
|
this.reward_list.push(v);
|
}
|
}
|
|
if (Utils.next(this.reward_list) == null) {
|
if (this.common_item) {
|
this.common_item.setVisible(false);
|
}
|
|
if (this.slide_goods_item) {
|
this.slide_goods_item.active = false;
|
}
|
|
this.lev_num.string = Utils.TI18N("(领取完毕)");
|
this.reward_goods_item.reloadData();
|
Utils.commonShowEmptyIcon(this.main_container, true, {
|
font_size: 22,
|
scale: 1,
|
text: Utils.TI18N("已领取所有奖励")
|
});
|
} else {
|
this.reward_list.sort(function (a, b) {
|
return a.lev - b.lev;
|
}); // if(this.is_init == true){
|
// this.is_init = false;
|
// this.reward_goods_item.reloadData();
|
// }else{
|
// this.reward_goods_item.resetCurrentItems();
|
// }
|
|
this.reward_goods_item.reloadData();
|
}
|
}
|
},
|
setVisibleStatus: function setVisibleStatus(bool) {
|
bool = bool || false;
|
this.setVisible(bool);
|
},
|
// 预制体加载完成之后,添加到对应主节点之后的回调可以设置一些数据了
|
onShow: function onShow(params) {},
|
// 面板设置不可见的回调,这里做一些不可见的屏蔽处理
|
onHide: function onHide() {},
|
// 当面板从主节点释放掉的调用接口,需要手动调用,而且也一定要调用
|
onDelete: function onDelete() {
|
if (this.reward_goods_item) {
|
this.reward_goods_item.deleteMe();
|
this.reward_goods_item = null;
|
}
|
|
if (this.slide_goods_list) {
|
for (var i in this.slide_goods_list) {
|
this.slide_goods_list[i].deleteMe();
|
}
|
|
this.slide_goods_list = null;
|
}
|
|
if (this.common_item) {
|
this.common_item.deleteMe();
|
this.common_item = null;
|
} // self:removeAllChildren()
|
// self:removeFromParent()
|
|
}
|
});
|
|
cc._RF.pop();
|