sk-client/Assets/ManagedResources/~Lua/Modules/EnergyBase/EnergyBaseUpLevel.lua

70 lines
2.1 KiB
Lua

require("Base/BasePanel")
EnergyBaseUpLevel = Inherit(BasePanel)
local this = EnergyBaseUpLevel
local BaseLevelConfig = ConfigManager.GetConfig(ConfigName.BaseLevelConfig)
local BaseResourceConfig = ConfigManager.GetConfig(ConfigName.BaseResourceConfig)
local cost = nil
function EnergyBaseUpLevel:InitComponent()
this.mask = Util.GetGameObject(this.gameObject, "mask")
this.btnBack = Util.GetGameObject(this.gameObject, "btnBack")
this.btnUpLv = Util.GetGameObject(this.gameObject, "bg/btnUpLv")
this.cost = Util.GetGameObject(this.gameObject, "bg/cost")
this.group = Util.GetGameObject(this.gameObject, "bg/tip/group")
this.tip = Util.GetGameObject(this.gameObject, "bg/tip/group/tip")
end
function EnergyBaseUpLevel:BindEvent()
Util.AddClick(this.mask, function()
self:ClosePanel()
end)
Util.AddClick(this.btnBack, function()
self:ClosePanel()
end)
Util.AddClick(this.btnUpLv, function()
local baseInfo = EnergyBaseManager.GetBaseInfo()
local data = BaseLevelConfig[baseInfo.baseLevel].Cost
if BagManager.GetItemCountById(data[1]) < data[2] then
PopupTipPanel.ShowTip(GetLanguageStrById(50466))
return
end
EnergyBaseManager.BaseLevelUp(0, function (msg)
local args = EnergyBaseManager.GetBaseInfo()
if args.baseLevel >= EnergyBaseManager.baseMaxLv then
self:ClosePanel()
else
self:OnShow()
end
Game.GlobalEvent:DispatchEvent(GameEvent.Energy.BaseOrFacilityUpLv)
end)
end)
end
function EnergyBaseUpLevel:AddListener()
end
function EnergyBaseUpLevel:RemoveListener()
end
function EnergyBaseUpLevel:OnOpen()
end
function EnergyBaseUpLevel:OnShow()
local baseInfo = EnergyBaseManager.GetBaseInfo()
local data = BaseLevelConfig[baseInfo.baseLevel].Cost
if not cost then
cost = SubUIManager.Open(SubUIConfig.ItemView, this.cost.transform)
end
cost:OnOpen(false, data, 0.6)
cost:CompareNum(BagManager.GetItemCountById(data[1]), data[2])
end
function EnergyBaseUpLevel:OnClose()
end
function EnergyBaseUpLevel:OnDestroy()
cost = nil
end
return this