源战役客户端
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.
 
 
 
 
 

84 lines
2.4 KiB

-- <*
-- @Author: Saber
-- @Description: 社团活动 社团boss roll点记录节点
-- *>
GuildSceneRollRecordItem = GuildSceneRollRecordItem or BaseClass(BaseItem)
local GuildSceneRollRecordItem = GuildSceneRollRecordItem
function GuildSceneRollRecordItem:__init(parent_wnd,prefab_asset,layer_name)
self.base_file = "guildSCene"
self.layout_file = "GuildSceneRollRecordItem"
self.parent_wnd = parent_wnd
self.layer_name = layer_name
self.model = GuildModel:getInstance()
self:Load()
end
function GuildSceneRollRecordItem:Load_callback()
local nodes = {
"highest_flag:img",
"role_name:tmp",
"roll_num:tmp",
"my_record:tmp",
}
self:GetChildren(nodes)
self:AddEvents()
if self.need_refreshData then
self:UpdateView()
self:UpdateHighestFlag()
end
end
function GuildSceneRollRecordItem:AddEvents( )
local function update_highest_flag(order_id)
if not order_id or order_id == self.order_id then
self:UpdateHighestFlag()
end
end
self:BindEvent(self.model, GuildModel.UPDATE_GUILD_BOSS_HIGHEST_DATA, update_highest_flag)
end
function GuildSceneRollRecordItem:SetData( data, order_id, is_my_record )
self.data = data
self.order_id = order_id
self.is_my_record = is_my_record
if self.is_loaded then
self.need_refreshData = false
self:UpdateView()
self:UpdateHighestFlag()
else
self.need_refreshData = true
end
end
function GuildSceneRollRecordItem:UpdateView( )
if self.data then
if self.is_my_record then
self.role_name_tmp.text = ""
self.roll_num_tmp.text = ""
self.my_record_tmp.text = string.format("我的掷点:%s点", self.data.roll_num)
else
self.my_record_tmp.text = ""
self.role_name_tmp.text = self.data.role_name
self.roll_num_tmp.text = string.format("掷出了%s点", self.data.roll_num)
end
end
end
-- 更新最高掷点标志
function GuildSceneRollRecordItem:UpdateHighestFlag( )
local is_finished = self.model:GetGuildBossRollIsFinished()
if is_finished then
local highest_role_id = self.model:GetGuildBossRollHighestByOrderId(self.order_id)
self.highest_flag_img.enabled = highest_role_id == self.data.role_id
else
self.highest_flag_img.enabled = false
end
end
function GuildSceneRollRecordItem:__delete( )
end