---@class KLSDTipPanel:UIKmlLuaPanelBase
---@field view KLSDTipPanelView
local KLSDTipPanel = class(UIKmlLuaPanelBase)
local this =KLSDTipPanel
---创建时调用一次
function this:Init()
end
---创建或者刷新界面数据时调用
function this:Refresh()
GUI:Text_setString(self.view.des,self.args.content)
GUI:setPositionY(self.view.bg,self.args.y)
GUI:setPositionX(self.view.bg,self.args.x)
GUI:setContentSize(self.view.bg,self.args.width,self.args.height)
end
---注册UI事件和服务器消息
function this:RegistEvents()
SL:RegisterLUAEvent(LUA_EVENT_SHIELDCHANGE, self.RefreshShield, self)--主角护盾值改变事件
--SL:RegisterLUAEvent(LUA_EVENT_AGSTOCHANGE, self.RefreshAgsto, self)--主角技能值改变事件
SL:RegisterLUAEvent(LUA_EVENT_COMBOVALUE_CHANGE, self.RefreshComboValue, self)--主角技能值改变事件
GUI:AddOnClickEvent(self.view.root,self,self.ColsePanel)
end
function this:RefreshShield()
local shield = SL:GetMetaValue("SHIELD")
local maxShield = SL:GetMetaValue("MAXSHIELD")
local des = "SD防护值 " .. shield .."/".. maxShield .. "\nPVP时受到的伤害,该伤害值以SD90%,血量10%的比例损耗\n若伤害值大于SD损耗,则剩余伤害仍从血量损耗\nSD最大值受人物等级和防御力影响"
GUI:Text_setString(self.view.des,des)
end
function this:RefreshAgsto()
local agsto = SL:GetMetaValue("AGSTO")
local maxAgsto = SL:GetMetaValue("MAXAGSTO")
local des = "AG技能值 ".. agsto .."/"..maxAgsto .."\n释放特殊技能所需要用到的技能值。"
GUI:Text_setString(self.view.des,des)
end
function this:RefreshComboValue(_, data)
local des = "连击技 " .. data .. "%\n连击技会对周围目标造成伤害,且对主目标额外造成大量伤害\n连击能量达到100%后会自动施放连击技"
GUI:Text_setString(self.view.des,des)
end
function this:ColsePanel()
GUI:UIPanel_Close("dev/ui/MainUI/Panel/KLSDTip/KLSDTipPanel")
end
function this:Close()
end
return this