125 lines
3.4 KiB
Lua
125 lines
3.4 KiB
Lua
local uiCtrl = require_ex('UI/Panels/Base/UICtrl')
|
|
local PANEL_ID = PanelId.ManualcraftUpgradePopup
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ManualcraftUpgradePopupCtrl = HL.Class('ManualcraftUpgradePopupCtrl', uiCtrl.UICtrl)
|
|
|
|
|
|
ManualcraftUpgradePopupCtrl.m_index = HL.Field(HL.Number) << 0
|
|
|
|
|
|
ManualcraftUpgradePopupCtrl.m_itemList = HL.Field(HL.Table)
|
|
|
|
|
|
ManualcraftUpgradePopupCtrl.m_cellList = HL.Field(HL.Any)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ManualcraftUpgradePopupCtrl.s_messages = HL.StaticField(HL.Table) << {
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
ManualcraftUpgradePopupCtrl.OnCreate = HL.Override(HL.Any) << function(self, arg)
|
|
self.view.controllerHintPlaceholder:InitControllerHintPlaceholder({self.view.inputGroup.groupId})
|
|
self.m_index = 1
|
|
self.m_itemList = {}
|
|
for i = 1, #arg.itemList do
|
|
table.insert(self.m_itemList, arg.itemList[i])
|
|
end
|
|
|
|
self.view.closeButton.onClick:AddListener(function()
|
|
PhaseManager:PopPhase(PhaseId.ManualcraftUpgradePopup)
|
|
end)
|
|
|
|
self.view.mask.onClick:AddListener(function()
|
|
if self.m_index == #self.m_itemList then
|
|
PhaseManager:PopPhase(PhaseId.ManualcraftUpgradePopup)
|
|
else
|
|
self.m_index = #self.m_itemList
|
|
self:_OnUpdateUI()
|
|
end
|
|
end)
|
|
if DeviceInfo.usingController then
|
|
self:BindInputPlayerAction("touch_panel_right_click", function()
|
|
self:_ContinueHandle()
|
|
end)
|
|
self:BindInputPlayerAction("common_jump", function()
|
|
self:_ContinueHandle()
|
|
end)
|
|
end
|
|
|
|
self.view.btnLeftArrow.onClick:AddListener(function()
|
|
if self.m_index > 1 then
|
|
self.m_index = self.m_index - 1
|
|
self:_OnUpdateUI()
|
|
end
|
|
end)
|
|
|
|
self.view.btnRightArrow.onClick:AddListener(function()
|
|
if self.m_index < #self.m_itemList then
|
|
self.m_index = self.m_index + 1
|
|
self:_OnUpdateUI()
|
|
end
|
|
end)
|
|
|
|
self.m_cellList = UIUtils.genCellCache(self.view.cell)
|
|
|
|
self:_OnUpdateUI()
|
|
end
|
|
|
|
|
|
|
|
ManualcraftUpgradePopupCtrl._ContinueHandle = HL.Method() << function(self)
|
|
if self.m_index == #self.m_itemList then
|
|
PhaseManager:PopPhase(PhaseId.ManualcraftUpgradePopup)
|
|
else
|
|
self.m_index = #self.m_itemList
|
|
self:_OnUpdateUI()
|
|
end
|
|
end
|
|
|
|
|
|
|
|
|
|
ManualcraftUpgradePopupCtrl._OnUpdateUI = HL.Method() << function(self)
|
|
local id = self.m_itemList[self.m_index]
|
|
local rewardId = Tables.factoryManualCraftFormulaUnlockTable:GetValue(id).rewardItemId1
|
|
local itemId = Tables.factoryManualCraftUpgradeTable:GetValue(rewardId).levelUpItemId
|
|
|
|
local data = Tables.itemTable:GetValue(itemId)
|
|
self.view.itemText.text = data.name
|
|
self.view.itemIcon:LoadSprite(UIConst.UI_SPRITE_ITEM, data.iconId)
|
|
|
|
self.view.btnLeftArrow.gameObject:SetActive(self.m_index > 1)
|
|
self.view.btnRightArrow.gameObject:SetActive(self.m_index < #self.m_itemList)
|
|
self.view.bottomText.text = string.format(Language.LUA_FAC_MANUAL_CRAFT_LEVEL_UP, data.name)
|
|
|
|
if Tables.equipItemTable:ContainsKey(itemId) then
|
|
local levelUpData = Tables.equipItemTable:GetValue(itemId)
|
|
self.view.beforeNum.text = levelUpData.chargeCount
|
|
self.view.afterNum.text = levelUpData.levelUpChargeCount
|
|
end
|
|
|
|
self.m_cellList:Refresh(#self.m_itemList, function(cell, index)
|
|
cell.selected.gameObject:SetActive(index == self.m_index)
|
|
cell.defalut.gameObject:SetActive(index ~= self.m_index)
|
|
end)
|
|
|
|
end
|
|
|
|
HL.Commit(ManualcraftUpgradePopupCtrl)
|