源战役客户端
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.
 
 
 
 
 

151 rader
3.9 KiB

CapsuleEggRewardPreview = CapsuleEggRewardPreview or BaseClass(BaseView)
local CapsuleEggRewardPreview = CapsuleEggRewardPreview
function CapsuleEggRewardPreview:__init()
self.base_file = "capsuleEgg"
self.layout_file = "CapsuleEggRewardPreview"
self.layer_name = "Activity"
self.destroy_imm = true
self.use_background = true
self.change_scene_close = true
self.hide_maincancas = false --是否隐藏主界面
self.append_to_ctl_queue = false --是否要添加进界面堆栈
self.need_show_money = false --是否要显示顶部的金钱栏
self.is_set_zdepth = true
self.model = CapsuleEggModel:getInstance()
self.load_callback = function ()
self:LoadSuccess()
self:AddEvent()
end
self.open_callback = function ( )
self:OpenSuccess()
end
self.destroy_callback = function ( )
self:DestroySuccess()
end
end
function CapsuleEggRewardPreview:Open(pool_type)
self.pool_type = pool_type
BaseView.Open(self)
end
function CapsuleEggRewardPreview:LoadSuccess()
local nodes = {
"bg:raw", "close:obj",
"ScrollView_1", "ScrollView_1/Viewport/Content_1",
"ScrollView_2/Viewport/Content_2", "ScrollView_2",
"ScrollView_3", "ScrollView_3/Viewport/Content_3",
}
self:GetChildren(nodes)
lua_resM:setOutsideRawImage(self,self.bg_raw,GameResPath.GetViewBigBg("capsule_egg_reward_preview_bg"))
end
function CapsuleEggRewardPreview:AddEvent()
local on_click = function ( click_obj )
if self.close_obj == click_obj then
self:Close()
end
end
AddClickEvent(self.close_obj, on_click)
end
function CapsuleEggRewardPreview:OpenSuccess()
-- 超级大奖对应档位0
-- 豪华大奖对应档位1
-- 欢乐大奖对应档位2
local reward_list_1 = {}
local reward_list_2 = {}
local reward_list_3 = {}
for i,v in pairs(Config.Capsuleeggreward) do
if v.pool_type == self.pool_type then
local reward_temp = stringtotable(v.reward)[1]
if v.color == 0 then
table.insert(reward_list_1,reward_temp)
elseif v.color == 1 then
table.insert(reward_list_2,reward_temp)
elseif v.color == 2 then
table.insert(reward_list_3,reward_temp)
end
end
end
local big_reward_cfg = self.model.capsule_egg_kv_cfg["giving_reward"]
if big_reward_cfg then
local big_reward_data = stringtotable(big_reward_cfg.value)[1]
table.insert(reward_list_1,big_reward_data)
end
if not self.reward_list_com_1 then
self.reward_list_com_1 = self:AddUIComponent(UI.ItemListCreator)
end
local info = {
data_list = reward_list_1,
item_con = self.Content_1,
obj_pool_type = UIObjPool.UIType.AwardItem,
item_width = 78,
space_x = 38,
start_x = 27.5,
start_y = -11,
scroll_view = self.ScrollView_1,
create_frequency = 0.01,
on_update_item = function(item, i, v)
item:SetItemSize(78, 78)
item:SetData(v[2])
end,
}
self.reward_list_com_1:UpdateItems(info)
if not self.reward_list_com_2 then
self.reward_list_com_2 = self:AddUIComponent(UI.ItemListCreator)
end
local info = {
data_list = reward_list_2,
item_con = self.Content_2,
obj_pool_type = UIObjPool.UIType.AwardItem,
item_width = 78+10,
space_x = 38-10,
start_x = 11,
start_y = -11,
scroll_view = self.ScrollView_2,
create_frequency = 0.01,
on_update_item = function(item, i, v)
item:SetItemSize(78, 78)
item:SetData(v[2])
end,
}
self.reward_list_com_2:UpdateItems(info)
if not self.reward_list_com_3 then
self.reward_list_com_3 = self:AddUIComponent(UI.ItemListCreator)
end
local info = {
data_list = reward_list_3,
item_con = self.Content_3,
obj_pool_type = UIObjPool.UIType.AwardItem,
item_width = 78+10,
space_x = 38-10,
start_x = 15,
start_y = -11,
scroll_view = self.ScrollView_3,
create_frequency = 0.01,
on_update_item = function(item, i, v)
item:SetItemSize(78, 78)
item:SetData(v[2])
end,
}
self.reward_list_com_3:UpdateItems(info)
end
function CapsuleEggRewardPreview:DestroySuccess( )
if self.tabWindowComponent then
self.tabWindowComponent:DeleteMe()
end
self.tabWindowComponent = nil
end