|
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
|