源战役客户端
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
 
 
 
 
 

167 lignes
6.0 KiB

ChildRankItem = ChildRankItem or BaseClass(BaseItem)
function ChildRankItem:__init()
self.base_file = "child"
self.layout_file = "ChildRankItem"
self.is_delay_callback = true
-- self.use_local_view = true
self.model = ChildModel:GetInstance()
self:Load()
end
function ChildRankItem:Load_callback()
self.nodes = {
--"txt_playerName:tmp",
"txt_childrName:tmp","txt_niceNum:tmp","txt_fight_num:tmp",
"txt_no_rank:obj:tmp","img_rank:obj:img","img_nice_bg:obj:img",
--"img_nice_bg/img_nice:obj",
"role_icon:obj",
--"vip_icon",
"bg:img",
"name_con/vip:obj:img", "name_con/sex:obj:img", "name_con/name:tmp",
}
self:GetChildren(self.nodes)
self:InitEvent()
if self.need_refreshData then
self:SetData(self.data)
end
end
function ChildRankItem:InitEvent()
--self.model:Fire(ChildConst.UPDATA_CHILD_VOTED_ROLE_INFO)
local function updata_child_voted_info_fun()
self:SetData(self.data)
end
self.updata_child_voted_info = self.model:Bind(ChildConst.UPDATA_CHILD_VOTED_ROLE_INFO, updata_child_voted_info_fun) --
local function onBtnClickHandler(target, x, y)
if target == self.img_nice_bg_obj then
-- Message.show("self.data.roleid:",self.data.role_id)
self.model:Fire(ChildConst.CHILD_REQ_EVENT, 16510,self.data.role_id)
end
end
AddClickEvent(self.img_nice_bg_obj, onBtnClickHandler)
end
function ChildRankItem:SetData(data)
self.data = data
if self.is_loaded then
self.txt_niceNum_tmp.text = data.vote_num or ""
--self.txt_playerName_tmp.text = data.name or ""
self.txt_childrName_tmp.text = "宝宝:".. HtmlColorTxt( data.child_name or "", ColorUtil.WHITE_DARK)
self.txt_fight_num_tmp.text = "战力:".. HtmlColorTxt( data.role_power or "", ColorUtil.WHITE_DARK)
self.txt_no_rank_obj:SetActive(false)
self.img_rank_obj:SetActive(true)
if data.rank <= 3 then
lua_resM:setImageSprite(self, self.img_rank_img, "child_asset", "child_rank_png"..data.rank, true)
-- lua_resM:setOutsideImageSprite(self, self.bg_img, GameResPath.GetChildIcon("child_rank_item_bg"..data.rank), false)
-- local rankColorList =
-- {
-- [1] = Color(146/255,55/255,53/255,1),
-- [2] = Color(145/255,65/255,151/255,1),
-- [3] = Color(58/255,113/255,175/255,1),
-- }
--self.txt_playerName_tmp.color = rankColorList[data.rank]
-- self.txt_childrName_tmp.color = rankColorList[data.rank]
-- self.txt_fight_num_tmp.color = rankColorList[data.rank]
elseif data.rank > 3 then
self.txt_no_rank_obj:SetActive(true)
self.txt_no_rank_tmp.text = data.rank
self.img_rank_obj:SetActive(false)
-- lua_resM:setOutsideImageSprite(self, self.bg_img, GameResPath.GetChildIcon("child_rank_item_bg0"), false)
end
-- --vip
-- if not self.mainRole_vip_item then
-- self.mainRole_vip_item = RoleVipItem.New(self.vip_icon)
-- end
-- self.mainRole_vip_item:SetData(data.vip_flag,data.sup_vip_type)
--头像
if not self.playHeadItem then
self.playHeadItem = HeadRoleItem.New(self.role_icon)
self.playHeadItem:SetItemSize(68,68)
end
local head_data = {
vo = { use_bg = 2, id = data.role_id, server_id = data.ser_id, career = 0, --data.career,
level = data.level, sex = data.sex, turn = data.turn, board = data.dress_board,
picture_ver = data.picture_ver, picture = data.picture, profile_photo_id = data.profile_photo_id},
}
self.playHeadItem:SetData(head_data)
lua_resM:setImageSprite(self, self.sex_img, "common_asset", data.sex == 1 and "com_boy" or " com_girl", true)
if not self.vipItem then
self.vipItem = RoleVipItem.New(self.vip_img.transform)
end
self.vipItem:SetData(data.vip_flag, data.sup_vip_type)
if data.vip_flag == 0 and data.sup_vip_type == 0 then
self.vip_obj:SetActive(false)
else
self.vip_obj:SetActive(true)
end
self.name_tmp.text = HtmlColorTxt( " " .. data.name, "#ffffff")
SetSizeDelta(self.name, self.name_tmp.preferredWidth + 5, self.name_tmp.preferredHeight)
--点没点赞
local voted_list = self.model:GetChildVotedRoleList()
for k,v in pairs(voted_list) do
if v.role_id == data.role_id then
--self.img_nice_obj:SetActive(false)
local need_set_gray = true
--宠物生活技能 宝宝每日给同一个玩家点赞次数
local life_skill_active = PetModel:getInstance():IsLifeSkillActived(PetConst.LifeSkill.ChildAsylumTimesUp)
local life_skill_ratio = PetModel:getInstance():GetPetLifeSkillRatio(PetConst.LifeSkill.ChildAsylumTimesUp)
if life_skill_active then
need_set_gray = v.vote_times == life_skill_ratio + 1
end
SetImageGray(self.img_nice_bg_img, need_set_gray)
return
end
end
--上面list长度可能为0,所以单独判断是否本人
if data.role_id == RoleManager.Instance.mainRoleInfo.role_id then
--self.img_nice_obj:SetActive(false)
SetImageGray(self.img_nice_bg_img, true)
else
--self.img_nice_obj:SetActive(true)
SetImageGray(self.img_nice_bg_img, false)
end
else
self.need_refreshData = true
end
end
function ChildRankItem:__delete()
if self.playHeadItem then
self.playHeadItem:DeleteMe()
self.playHeadItem = nil
end
if self.updata_child_voted_info then
self.model:UnBind(self.updata_child_voted_info)
self.updata_child_voted_info = nil
end
if self.mainRole_vip_item then
self.mainRole_vip_item:DeleteMe()
self.mainRole_vip_item = nil
end
if self.vipItem then
self.vipItem:DeleteMe()
self.vipItem = nil
end
end