-- <*
|
|
-- @Author: Saber
|
|
-- @Description: 藏宝图奖池预览界面
|
|
-- *>
|
|
TreasureMapRewardPreviewView = TreasureMapRewardPreviewView or BaseClass(BaseView)
|
|
local TreasureMapRewardPreviewView = TreasureMapRewardPreviewView
|
|
|
|
function TreasureMapRewardPreviewView:__init()
|
|
self.base_file = "treasureMap"
|
|
self.layout_file = "TreasureMapRewardPreviewView"
|
|
self.layer_name = "Activity"
|
|
self.destroy_imm = true
|
|
self.use_background = true --全屏界面默认使用这个参数,非全屏界面自行设置
|
|
self.hide_maincancas = false --全屏界面需要隐藏主UI
|
|
self.change_scene_close = true --是否切换场景时关闭(弹出界面使用)
|
|
|
|
self.model = TreasureMapModel:getInstance()
|
|
self.cur_index = 1
|
|
self.load_callback = function ()
|
|
self:LoadSuccess()
|
|
self:AddEvent()
|
|
end
|
|
self.open_callback = function ( )
|
|
self:SwitchTab(self.cur_index)
|
|
end
|
|
self.destroy_callback = function ( )
|
|
self:DestroySuccess()
|
|
end
|
|
end
|
|
|
|
function TreasureMapRewardPreviewView:Open(index)
|
|
self.cur_index = index or self.cur_index
|
|
BaseView.Open(self)
|
|
end
|
|
|
|
function TreasureMapRewardPreviewView:LoadSuccess()
|
|
local nodes = {
|
|
"win_bg:raw", "close_btn:obj",
|
|
"item_scroll",
|
|
"item_scroll/Viewport/item_con",
|
|
-- 页签1
|
|
"tab_con/tab1:obj",
|
|
"tab_con/tab1/tab1_selected:obj",
|
|
"tab_con/tab1/tab1_name:tmp",
|
|
"tab_con/tab1/tab1_name_sel:tmp",
|
|
-- 页签2
|
|
"tab_con/tab2:obj",
|
|
"tab_con/tab2/tab2_selected:obj",
|
|
"tab_con/tab2/tab2_name:tmp",
|
|
"tab_con/tab2/tab2_name_sel:tmp",
|
|
|
|
"tip_con/tip_icon:obj",
|
|
}
|
|
self:GetChildren(nodes)
|
|
|
|
lua_resM:setOutsideRawImage(self, self.win_bg_raw, GameResPath.GetViewBigBg("tm_preview_bg"))
|
|
end
|
|
|
|
function TreasureMapRewardPreviewView:AddEvent()
|
|
local function click_event(target)
|
|
if target == self.close_btn_obj then
|
|
self:Close()
|
|
elseif target == self.tab1_obj then
|
|
self:SwitchTab(1)
|
|
elseif target == self.tab2_obj then
|
|
self:SwitchTab(2)
|
|
elseif target == self.tip_icon_obj then -- 查看概率
|
|
UIToolTipMgr:getInstance():AppendLuckyProbTips(424, self.cur_index, 1)
|
|
end
|
|
end
|
|
AddClickEvent(self.close_btn_obj, click_event)
|
|
AddClickEvent(self.tab1_obj, click_event, LuaSoundManager.SOUND_UI.SWITCH)
|
|
AddClickEvent(self.tab2_obj, click_event, LuaSoundManager.SOUND_UI.SWITCH)
|
|
AddClickEvent(self.tip_icon_obj, click_event)
|
|
end
|
|
|
|
function TreasureMapRewardPreviewView:SwitchTab(index)
|
|
self.cur_index = index
|
|
self.tab1_selected_obj:SetActive(self.cur_index == 1)
|
|
self.tab2_selected_obj:SetActive(self.cur_index == 2)
|
|
self.tab1_name_tmp.text = self.cur_index == 1 and "" or "普通藏宝图"
|
|
self.tab1_name_sel_tmp.text = self.cur_index == 1 and "普通藏宝图" or ""
|
|
self.tab2_name_tmp.text = self.cur_index == 2 and "" or "高级藏宝图"
|
|
self.tab2_name_sel_tmp.text = self.cur_index == 2 and "高级藏宝图" or ""
|
|
|
|
self:UpdateView()
|
|
end
|
|
|
|
function TreasureMapRewardPreviewView:UpdateView()
|
|
-- 获取藏宝图奖励数据
|
|
local data = self.model:GetTreasureMapRewardPreviewData(self.cur_index)
|
|
self.reward_item_creator = self.reward_item_creator or self:AddUIComponent(UI.ItemListCreator)
|
|
local info = {
|
|
data_list = data,
|
|
scroll_view = self.item_scroll,
|
|
item_con = self.item_con,
|
|
obj_pool_type = UIObjPool.UIType.AwardItem,
|
|
item_width = 62,
|
|
item_height = 62,
|
|
start_x = 8,
|
|
start_y = -6.5,
|
|
space_x = 16,
|
|
space_y = 16,
|
|
create_frequency = 0.01,
|
|
is_scroll_back_on_update = true,
|
|
alignment = UnityEngine.TextAnchor.UpperLeft,
|
|
on_update_item = function(item, i, v)
|
|
local typeId, lock = GoodsModel:getInstance():GetMappingTypeId(v.rewards[1], v.rewards[2])
|
|
item:SetData(typeId, v.rewards[3], nil, nil, lock)
|
|
item:SetItemSize(62, 62)
|
|
end,
|
|
}
|
|
self.reward_item_creator:UpdateItems(info)
|
|
end
|
|
|
|
function TreasureMapRewardPreviewView:DestroySuccess( )
|
|
|
|
end
|