1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- ---@class KLBuffInfoItem:UIKmlLuaPanelBase
- ---@field view KLBuffInfoItemView
- ---@field args Buff
- local KLBuffInfoItem = class(UIKmlLuaPanelBase)
- ---创建时调用一次
- function KLBuffInfoItem:Init()
-
- end
- ---创建或者刷新界面数据时调用
- function KLBuffInfoItem:Refresh()
- ---@type cfg_buff_column
- local buffTbl = SL:GetConfig("cfg_buff",self.args.cfgId)
- local leftTime = self.args.endTime - Time.GetServerTime()
- local buffTotalTime = buffTbl.buffTotalTime > 0 and buffTbl.buffTotalTime or leftTime
- local startper = leftTime/buffTotalTime * 100
- leftTime = math.floor(leftTime / 1000)
- startper = math.floor(startper)
- if buffTbl then
- GUI:Image_loadTexture(self.view.control_circlebar,buffTbl.showIcon,"Atlas/Buff_icon.spriteatlas")
- end
- GUI:SetControl_time(self.view.control_circlebar,leftTime)
- GUI:SetCirclebar_startper(self.view.control_circlebar,startper)
- if self.args.bufferLayer and tonumber(self.args.bufferLayer) > 1 then
- GUI:Text_setString(self.view.text_layer,tostring(self.args.bufferLayer))
- else
- GUI:Text_setString(self.view.text_layer,"")
- end
- local panel = GUI:GetUI("dev/ui/MainUI/Panel/KLUIBuffInfo/KLUIBuffInfoPanel")
- if panel then
- panel.args = self.args
- panel:Refresh()
- end
- end
- ---注册UI事件和服务器消息
- function KLBuffInfoItem:RegistEvents()
- GUI:AddOnClickEvent(self.view.control_circlebar,self,self.OnClickBtn)
- end
- function KLBuffInfoItem:OnClickBtn()
- GUI:UIPanel_Open("dev/ui/MainUI/Panel/KLUIBuffInfo/KLUIBuffInfoPanel",nil,nil,self.args)
- end
- function KLBuffInfoItem:Close()
- GUI:UIPanel_Close("dev/ui/MainUI/Panel/KLUIBuffInfo/KLUIBuffInfoPanel")
- end
- return KLBuffInfoItem
|