Files
SL1900 5e0d58cfad Initial version - 1.2.0.60
EN: 1.2.0.60
CN: 1.2.0.61
JP: 1.2.0.63
KR: 1.2.0.67
2025-12-03 01:00:00 +09:00

34 lines
1.2 KiB
Lua

local TemplateTopEnergyCtrl = class("TemplateTopEnergyCtrl", BaseCtrl)
TemplateTopEnergyCtrl._mapNodeConfig = {
imgBar = {sComponentName = "Image"},
txtCount = {sComponentName = "TMP_Text"},
btnAdd = {
sComponentName = "UIButton",
callback = "OnBtnClick_AddEnergy"
}
}
TemplateTopEnergyCtrl._mapEventConfig = {
[EventId.UpdateEnergy] = "Refresh",
[EventId.UpdateWorldClass] = "Refresh"
}
function TemplateTopEnergyCtrl:Refresh()
local nMaxEnergy = ConfigTable.GetConfigNumber("EnergyMaxLimit")
local nCurEnergy = PlayerData.Base:GetCurEnergy().nEnergy
NovaAPI.SetTMPText(self._mapNode.txtCount, nCurEnergy .. "/" .. nMaxEnergy)
NovaAPI.SetImageFillAmount(self._mapNode.imgBar, nMaxEnergy < nCurEnergy and 1 or nCurEnergy / nMaxEnergy)
end
function TemplateTopEnergyCtrl:AddCallBack(callback)
self.callBack = callback
end
function TemplateTopEnergyCtrl:OnBtnClick_AddEnergy(btn)
self._panel._nFadeInType = 2
local callback = function()
EventManager.Hit(EventId.ClosePanel, PanelId.EnergyBuy)
if self.callBack ~= nil then
self.callBack()
end
end
EventManager.Hit(EventId.OpenPanel, PanelId.EnergyBuy, AllEnum.EnergyPanelType.Main, {}, true, callback)
end
return TemplateTopEnergyCtrl