源战役客户端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

66 lines
2.2 KiB

PartnerShowItem = PartnerShowItem or BaseClass(BaseItem)
function PartnerShowItem:__init()
self.base_file = "chat"
self.layout_file = "partnerShowItem"
self.vo = nil
self.index = nil
self.model = ChatModel:getInstance()
self:Load()
end
function PartnerShowItem:Load_callback()
self.border_btn = self:GetChild("Image").gameObject
self.quality = self:GetChild("Head/Quality"):GetComponent("Image")
self.level = self:GetChild("Head/Level"):GetComponent("Text")
self.head_icon = self:GetChild("Head/Icon"):GetComponent("Image")
self.head_icon_border = self:GetChild("Head/Border"):GetComponent("Image")
self.name = self:GetChild("Head/Name/Value"):GetComponent("Text")
self.select = self:GetChild("Select").gameObject
self.select:SetActive(false)
if self.need_refreshData then
self:SetData()
end
local function onClickBtnHandler()
self.model:SelectedPartnerItem(self)
end
AddClickEvent(self.gameObject,onClickBtnHandler)
end
function PartnerShowItem:SetData(index,vo)
self.vo = vo or self.vo
self.index = index or self.index
if self.is_loaded then
self.need_refreshData = false
local config = Config.Partner[self.vo.partnerid]
if config then
self.name.text = config.name
local quality_icon = PartnerModel:getInstance():GetQualityIcon(config.quality)
local function call_back(sp)
if sp == nil then
lua_resM:setOutsideImageSprite(self,self.head_icon,GameResPath.GetMonsterHeadIcon(PartnerModel.DEFAULT_MODEL_ID),true)
end
end
lua_resM:setOutsideImageSprite(self,self.head_icon,GameResPath.GetMonsterHeadIcon(config.model_id, config.chartlet_id),true,call_back)
lua_resM:setImageSprite(self,self.quality,"common_asset",quality_icon,true)
-- self.quality:SetNativeSize()
lua_resM:setImageSprite(self,self.head_icon_border,"common_asset","partner_bg_"..config.quality)
self.level.text = "等级" .. self.vo.lv
--1行显示3个伙伴
self:SetPosition(math.floor((self.index - 1) % 3) * 325 , -108 * math.floor((self.index - 1) / 3))
end
else
self.need_refreshData = true
end
end
function PartnerShowItem:GetParterId()
return self.vo.id
end
function PartnerShowItem:SetSelect(bool)
if bool then
self.select:SetActive(true)
else
self.select:SetActive(false)
end
end