源战役客户端
Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.
 
 
 
 
 

105 Zeilen
2.8 KiB

PetSupportChoosePetView = PetSupportChoosePetView or BaseClass(BaseView)
local PetSupportChoosePetView = PetSupportChoosePetView
function PetSupportChoosePetView:__init()
self.base_file = "pet"
self.layout_file = "PetSupportChoosePetView"
self.layer_name = "Activity"
self.destroy_imm = true
self.use_background = true
self.change_scene_close = true
self.append_to_ctl_queue = false --是否要添加进界面堆栈
self.need_show_money = false --是否要显示顶部的金钱栏
self.is_set_zdepth = true
self.blur_activity_bg = true
-- self.use_show_anim = true
-- self.use_hide_anim = true
self.model = PetModel: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 PetSupportChoosePetView:Open(support_slot)
self.support_slot = support_slot
BaseView.Open(self)
end
function PetSupportChoosePetView:LoadSuccess()
local nodes = {
"ScrollView","ScrollView/Viewport/Content",
"empty/girl:raw","empty:obj",
}
self:GetChildren(nodes)
local close_callback = function()
self:Close()
end
self.tabWindowComponent = UITabWindow.New(self.transform, nil, nil, close_callback, self.background_wnd,
self.transform,UITabWindow.SizeSmallNoTab,nil,nil,nil)
self.tabWindowComponent:SetBackgroundRes("WindowNew2_bg")
self.tabWindowComponent:SetTitleText("选择宠物上阵")
lua_resM:setOutsideRawImage(self, self.girl_raw, GameResPath.GetRoleBg("team_empty_bg_267_589"), false)
end
function PetSupportChoosePetView:AddEvent()
end
function PetSupportChoosePetView:OpenSuccess()
self:UpdateView()
end
function PetSupportChoosePetView:UpdateView()
self:UpdatePetScrollView()
end
function PetSupportChoosePetView:UpdatePetScrollView()
local pet_list = self.model:GetPetListAfterSort()
self.empty_obj:SetActive(#pet_list == 0)
--petitem的点击回调函数 --data追溯至16301协议
local function click_callback(data)
--请求宠物上阵协议
self.model:Fire(PetConst.REQUEST_CCMD_EVENT,16308,data.pet_id, self.support_slot)
self:Close()
end
if not self.item_list_com then
self.item_list_com = self:AddUIComponent(UI.ItemListCreator)
end
local info = {
data_list = pet_list,
item_con = self.Content,
item_class = PetSupportChooseItem,
item_width = 450,
item_height = 119,
space_x = 8,
space_y = 4,
start_x = 6,
start_y = -4.5,
scroll_view = self.ScrollView,
create_frequency = 0.01,
on_update_item = function(item, i, v)
item:SetData(v,click_callback)
end,
}
self.item_list_com:UpdateItems(info)
end
function PetSupportChoosePetView:DestroySuccess( )
if self.tabWindowComponent then
self.tabWindowComponent:DeleteMe()
self.tabWindowComponent = nil
end
end