源战役客户端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

106 lines
3.4 KiB

-- <*
-- @Author: Saber
-- @Description: 社团人员管理界面子节点
-- *>
GuildListMemItem = GuildListMemItem or BaseClass(BaseItem)
local GuildListMemItem = GuildListMemItem
function GuildListMemItem:__init(parent_wnd,prefab_asset,layer_name)
self.base_file = "guild"
self.layout_file = "GuildListMemItem"
self.parent_wnd = parent_wnd
self.layer_name = layer_name
self.role_head = nil
self.model = GuildModel:getInstance()
self:Load()
end
function GuildListMemItem:Load_callback()
self.nodes = {
-- 头像
"head_con",
-- 玩家信息相关
"info_con/name:tmp", "info_con/vip_con", "info_con/sex_flag:img", "power_val:txt",
-- 社团活跃
"act_val:tmp",
-- 职位
"pos_bg:img",
-- 在线状态
"online_flag:tmp",
}
self:GetChildren(self.nodes)
self.role_head = HeadRoleItem.New(self.head_con)
self.role_head:SetItemSize(69, 69)
-- 加载vip节点
self.vipItem = RoleVipItem.New(self.vip_con)
self.vipItem:SetAnchoredPosition(0, 0)
self:AddEvents()
if self.need_refreshData then
self:UpdateView()
end
end
function GuildListMemItem:AddEvents( )
end
-- 设置数据 item_type:1时是成员信息 2时是申请信息 3时是任命信息
function GuildListMemItem:SetData(data, index)
self.data = data
self.index = index
if self.is_loaded then
self.need_refreshData = false
self:UpdateView()
else
self.need_refreshData = true
end
end
function GuildListMemItem:UpdateView( )
self.vipItem:SetData(self.data.vip_flag,self.data.sup_vip_type)
lua_resM:setImageSprite(self, self.sex_flag_img, "common_asset", self.data.sex == 1 and "com_boy" or "com_girl", true)
SetAnchoredPositionX(self.name, self.data.vip_flag == 0 and 5 or 46)
self.name_tmp.text = self.data.name
local sex_pos_x = (self.data.vip_flag == 0 and 10 or 51) + self.name_tmp.preferredWidth
SetAnchoredPositionX(self.sex_flag, sex_pos_x)
self.power_val_txt.text = self.data.power
self.act_val_tmp.text = self.data.week_labor
if self.data.online_flag == 0 and TimeUtil:getServerTime() - self.data.offline_time < 86400 then -- 离线时间不足一天,按放置挂机状态处理
self.online_flag_tmp.text = "<color=#aaaaaa>放置冒险中</color>"
else
self.online_flag_tmp.text = self.data.online_flag == 0
and string.format("<color=#aaaaaa>%s</color>", TimeUtil:GetTimeStrByServerTime(self.data.offline_time))
or "在线"
end
lua_resM:setImageSprite(self, self.pos_bg_img, "guild_asset", "g_pos_icon" .. self.data.position, true)
local head_data = {
vo = {
id = self.data.role_id,
server_id = self.data.server_id,
career = self.data.career,
sex = self.data.sex,
turn = self.data.turn,
picture_ver = self.data.picture_ver,
picture = self.data.picture,
profile_photo_id = self.data.profile_photo_id,
level = self.data.level,
dress_board_id = self.data.dress_id or self.data.dress_board,
},
}
self.role_head:SetData(head_data)
end
function GuildListMemItem:__delete( )
if self.role_head then
self.role_head:DeleteMe()
self.role_head = nil
end
if self.vipItem then
self.vipItem:DeleteMe()
self.vipItem = nil
end
end