2025-06-04 05:02:57 +08:00

59 lines
2.0 KiB
Plaintext

local BaseCell = autoImport("BaseCell");
TeamCell = class("TeamCell", BaseCell);
function TeamCell:Init()
self.goal = self:FindComponent("Goal", UILabel);
self.level = self:FindComponent("Level", UILabel);
self.teamName = self:FindComponent("TeamName", UILabel);
self.leaderName = self:FindComponent("LeaderName", UILabel);
self.memberNum = self:FindComponent("MemberNum", UILabel);
self.numSlider = self:FindComponent("NumSlider", UISlider);
self.applyBtn = self:FindGO("ApplyButton");
self.applyed = self:FindGO("Applyed");
self.applyLabel = self:FindComponent("Label", UILabel, self.applyBtn);
self:AddClickEvent(self.applyBtn, function (go)
if(self.data)then
self.applied = not self.applied;
ServiceSessionTeamProxy.Instance:CallTeamMemberApply(self.data.id);
self:SetButtonEnable(not self.applied);
end
end);
end
function TeamCell:SetButtonEnable(isEnabled)
self.applyed:SetActive(not isEnabled);
self.applyBtn:SetActive(isEnabled);
end
function TeamCell:SetData(data)
self.data = data;
if(data)then
self.gameObject:SetActive(true);
if(data.type and Table_TeamGoals[data.type])then
self.goal.text = Table_TeamGoals[data.type].NameZh;
end
local mylv = Game.Myself.data.userdata:Get(UDEnum.ROLELEVEL);
local islvOutRange = mylv < data.minlv or mylv > data.maxlv;
if(islvOutRange)then
self.level.text = string.format("[c][ff0000]Lv.%s ~ Lv.%s[-][/c]", tostring(data.minlv), tostring(data.maxlv));
else
self.level.text = string.format("Lv.%s ~ Lv.%s" , tostring(data.minlv), tostring(data.maxlv));
end
self.teamName.text = data.name;
local leader = data:GetLeader();
if(leader)then
self.leaderName.text = leader.name;
end
local membercount = data.membercount or 1;
self.memberNum.text =string.format("%d/%d", membercount, GameConfig.Team.maxmember);
self.numSlider.value = membercount/GameConfig.Team.maxmember;
self.applied = false;
self:SetButtonEnable(not self.applied);
else
self.gameObject:SetActive(false);
end
end