89 lines
2.2 KiB
Plaintext
89 lines
2.2 KiB
Plaintext
autoImport("FriendBaseCell")
|
|
|
|
local baseCell = autoImport("BaseCell")
|
|
FriendInfoCell = class("FriendInfoCell", FriendBaseCell)
|
|
|
|
function FriendInfoCell:Init()
|
|
self:FindObjs()
|
|
self:AddButtonEvt()
|
|
self:InitShow()
|
|
end
|
|
|
|
function FriendInfoCell:FindObjs()
|
|
FriendInfoCell.super.FindObjs(self)
|
|
|
|
self.GuildIcon = self:FindGO("GuildIcon"):GetComponent(UISprite)
|
|
self.GuildName = self:FindGO("GuildName"):GetComponent(UILabel)
|
|
self.EmptyGuild = self:FindGO("EmptyGuild"):GetComponent(UILabel)
|
|
self.recallBtn = self:FindGO("RecallBtn"):GetComponent(UISprite)
|
|
end
|
|
|
|
function FriendInfoCell:AddButtonEvt()
|
|
self:AddClickEvent(self.recallBtn.gameObject,function ()
|
|
self:Recall()
|
|
end)
|
|
end
|
|
|
|
function FriendInfoCell:InitShow()
|
|
FriendInfoCell.super.InitShow(self)
|
|
|
|
self.EmptyGuild.text = ZhString.Friend_EmptyGuild
|
|
end
|
|
|
|
function FriendInfoCell:SetData(data)
|
|
FriendInfoCell.super.SetData(self, data)
|
|
|
|
if data then
|
|
if data.guildname ~= "" then
|
|
self:SetGuild(true)
|
|
self.GuildName.text = data.guildname
|
|
|
|
local guildportrait = tonumber(data.guildportrait) or 1
|
|
guildportrait = Table_Guild_Icon[guildportrait] and Table_Guild_Icon[guildportrait].Icon or ""
|
|
IconManager:SetGuildIcon(guildportrait , self.GuildIcon)
|
|
else
|
|
self:SetGuild(false)
|
|
end
|
|
|
|
local canRecall = data:CheckCanRecall()
|
|
self.recallBtn.gameObject:SetActive(canRecall)
|
|
if canRecall then
|
|
self:SetRecall(data.recall)
|
|
end
|
|
end
|
|
end
|
|
|
|
function FriendInfoCell:SetGuild(isActive)
|
|
self.EmptyGuild.gameObject:SetActive(not isActive)
|
|
self.GuildIcon.gameObject:SetActive(isActive)
|
|
self.GuildName.gameObject:SetActive(isActive)
|
|
end
|
|
|
|
function FriendInfoCell:SetRecall(bRecall)
|
|
if bRecall then
|
|
ColorUtil.DeepGrayUIWidget(self.recallBtn)
|
|
else
|
|
ColorUtil.WhiteUIWidget(self.recallBtn)
|
|
end
|
|
end
|
|
|
|
function FriendInfoCell:Recall()
|
|
if self.data ~= nil then
|
|
if self.data.recall then
|
|
MsgManager.ShowMsgByID(3620)
|
|
return
|
|
end
|
|
|
|
if #FriendProxy.Instance:GetContractData() > GameConfig.Recall.max_recall_count then
|
|
MsgManager.ConfirmMsgByID(3621, function ()
|
|
self:JumpShareView()
|
|
end)
|
|
else
|
|
self:JumpShareView()
|
|
end
|
|
end
|
|
end
|
|
|
|
function FriendInfoCell:JumpShareView()
|
|
self:sendNotification(UIEvent.JumpPanel, {view = PanelConfig.RecallShareView, viewdata = self.data})
|
|
end |