|
|
- SocialityAddFriendItem = SocialityAddFriendItem or BaseClass(BaseItem)
- function SocialityAddFriendItem:__init()
- self.base_file = "sociality"
- self.layout_file = "SocialityAddFriendItem"
- self.model = SocialityModel:getInstance()
- self:Load()
- end
-
- function SocialityAddFriendItem:Load_callback()
- self.name_con = self:GetChild("name_con")
- self.role_name = self:GetChild("name_con/name"):GetComponent("TextMeshProUGUI")
- self.vip = self:GetChild("vip")
- self.addBtn = self:GetChild("addBtn").gameObject
- self.headCon = self:GetChild("headCon")
- self.sex = self:GetChild("name_con/sex"):GetComponent("Image")
- self.checkImg = self:GetChild("checkImg")
-
- self.attackPower = self:GetChild("attackText"):GetComponent("TextMeshProUGUI")
- self.roleItem = HeadRoleItem.New(self.headCon)
- self.roleItem:SetItemSize(73,73)
-
- self.vipItem = RoleVipItem.New(self.vip)
-
- self:InitEvent()
- self:LoadSuccess()
- end
- function SocialityAddFriendItem:LoadSuccess( ... )
- if self.needUpdate then
- self:SetData(self.info)
- end
- end
-
- function SocialityAddFriendItem:InitEvent()
- local function onClickBtnHandler(target)
- if target == self.addBtn then
- if self.info and not self.has_click then
- self.has_click = true
- self.model:Fire(SocialityModel.REQUEST_CCMD_EVENT, 14003, self.info.role_id)
- end
- end
- end
- AddClickEvent(self.addBtn,onClickBtnHandler)
-
-
- local function update_add_friend_btn_state()
- self:UpdateAddBtnState()
- end
- self:BindEvent(self.model,SocialityModel.UPDATE_ADD_FRIEND_BTN_STATE,update_add_friend_btn_state)
- end
-
- function SocialityAddFriendItem:UpdateAddBtnState( )
- local is_friend = self.model:IsRelaviveType(self.info.role_id,Config.ConfigSocial.RelativeType.friend)
- if is_friend then
- self.addBtn:SetActive(false)
- self.checkImg.gameObject:SetActive(true)
- else
- self.addBtn:SetActive(true)
- self.checkImg.gameObject:SetActive(false)
- end
- end
-
- function SocialityAddFriendItem:SetData(info)
- self.info = info
- if not info then return end
- if self.is_loaded then
-
- local head_data = {
- vo = {
- id = info.role_id,
- server_id = info.ser_id,
- career = info.career,
- sex = info.sex,
- turn = info.turn,
- picture_ver = info.picture_ver,
- picture = info.picture,
- profile_photo_id = info.profile_photo_id,
- dress_board_id = info.dress_board,
- level = info.lv,
- empty_head = false, -- 是否是空数据头像
- }
- }
- self.roleItem:SetData(head_data)
-
- self:UpdateAddBtnState()
-
- self.has_click = false
-
- self.attackPower.text = tostring(info.power)
- -- self.levelTxt.text = info.lv
-
- self.vipItem:SetData(info.vip,info.sup_vip_type)
- if info.vip > 0 then
- SetAnchoredPositionX(self.name_con,53)
- else
- SetAnchoredPositionX(self.name_con,13)
- end
-
- self.role_name.text = info.role_name
- local sex_res = info.sex == 1 and "com_boy" or "com_girl"
- lua_resM:setImageSprite(self, self.sex, "common_asset", sex_res, true)
- SetAnchoredPositionX(self.sex.transform,self.role_name.preferredWidth+4)
-
-
-
- else
- self.needUpdate = true
- end
- end
-
- function SocialityAddFriendItem:__delete( )
- if self.roleItem then
- self.roleItem:DeleteMe()
- self.roleItem = nil
- end
-
- if self.vipItem then
- self.vipItem:DeleteMe()
- self.vipItem = nil
- end
- end
|