81 lines
2.3 KiB
Lua
Executable File
81 lines
2.3 KiB
Lua
Executable File
local SummonWishUI = class("SummonWishUI", BaseUI)
|
|
|
|
local SummonHeroCell = "app/ui/summon/cell/summon_hero_cell"
|
|
|
|
function SummonWishUI:isFullScreen()
|
|
return false
|
|
end
|
|
|
|
function SummonWishUI:ctor(params)
|
|
self.page = params.summonId or 1
|
|
end
|
|
|
|
function SummonWishUI:getPrefabPath()
|
|
return "assets/prefabs/ui/summon/summon_wish_ui.prefab"
|
|
end
|
|
|
|
function SummonWishUI:onLoadRootComplete()
|
|
local uiMap = self.root:genAllChildren()
|
|
self.root:addClickListener(function()
|
|
self:closeUI()
|
|
end)
|
|
uiMap["summon_wish_ui.bg.btn_close"]:addClickListener(function()
|
|
self:closeUI()
|
|
end)
|
|
local okBtn = uiMap["summon_wish_ui.bg.ok_btn"]
|
|
self.descTx = uiMap["summon_wish_ui.bg.desc_tx"]
|
|
uiMap["summon_wish_ui.bg.tx_title"]:setText(I18N:getGlobalText(I18N.GlobalConst.SUMMON_WISH_TITLE))
|
|
uiMap["summon_wish_ui.bg.ok_btn.text"]:setText(I18N:getGlobalText(I18N.GlobalConst.SUMMON_WISH_OK))
|
|
|
|
self.selHeroCell = uiMap["summon_wish_ui.bg.summon_hero_cell"]:addLuaComponent(SummonHeroCell)
|
|
self.scrollrect = uiMap["summon_wish_ui.bg.scrollrect"]:addLuaComponent(GConst.TYPEOF_LUA_CLASS.SCROLL_RECT_BASE)
|
|
self.scrollrect:addInitCallback(function()
|
|
return SummonHeroCell
|
|
end)
|
|
self.scrollrect:addRefreshCallback(function(index, cell)
|
|
cell:refresh(self.wishHeroId, self.list[index], function (heroId)
|
|
if heroId == self.wishHeroId then
|
|
self.wishHeroId = nil
|
|
else
|
|
self.wishHeroId = heroId
|
|
end
|
|
self:onRefresh()
|
|
end)
|
|
end)
|
|
self.scrollrect:clearCells()
|
|
|
|
self.list = DataManager.SummonData:getSummonWishConfig(self.page)
|
|
self.wishHeroId = DataManager.SummonData:getSummonWishHeroId(self.page)
|
|
|
|
okBtn:addClickListener(function()
|
|
self:saveWish()
|
|
end)
|
|
|
|
self:bind(DataManager.SummonData, "isDirty", function()
|
|
self:onRefresh()
|
|
end)
|
|
end
|
|
|
|
function SummonWishUI:onRefresh()
|
|
if self.page == 2 then
|
|
self.descTx:setText(I18N:getGlobalText(I18N.GlobalConst.SUMMON_WISH_TIPS))
|
|
else
|
|
self.descTx:setText(I18N:getGlobalText(I18N.GlobalConst.SUMMON_WISH_TIPS_2))
|
|
end
|
|
|
|
self.scrollrect:refillCells(#self.list)
|
|
|
|
self.selHeroCell:refresh(self.wishHeroId, self.wishHeroId, nil, true)
|
|
end
|
|
|
|
function SummonWishUI:saveWish()
|
|
if not self.wishHeroId or self.wishHeroId == 0 then
|
|
GFunc.showToast(I18N:getGlobalText(I18N.GlobalConst.BATTLE_FORCE_CHOOSE_DESC_2))
|
|
return
|
|
end
|
|
ModuleManager.SummonManager:onSummonWishSetReq(self.page, self.wishHeroId)
|
|
self:closeUI()
|
|
end
|
|
|
|
return SummonWishUI
|