107 lines
3.5 KiB
Lua
107 lines
3.5 KiB
Lua
local MaincityManager = class("MaincityManager", BaseModule)
|
|
|
|
function MaincityManager:showMainCityUI(isFirstEnter, targetIndex)
|
|
UIManager:showUI(UIManager.UI_PATH.MAINCITY_UI, {isFirstEnter = isFirstEnter, targetIndex = targetIndex})
|
|
end
|
|
|
|
function MaincityManager:showModuleUnlockUI(params)
|
|
UIManager:showUI("app/ui/main_city/module_unlock_ui", params)
|
|
end
|
|
|
|
function MaincityManager:showChapterBoxUI(chapterId)
|
|
UIManager:showUI("app/ui/main_city/chapter_box_ui", {chapterId = chapterId})
|
|
end
|
|
|
|
-- 从登录界面第一次进入主城
|
|
function MaincityManager:firstEnterMainCity()
|
|
if (EDITOR_MODE or not Platform:getIsPublishChannel()) and LocalData:getTutorialSkip() > 0 then
|
|
-- 如果是新号就直接进入战斗
|
|
self:showMainCityUI(true)
|
|
return
|
|
end
|
|
if ModuleManager.TutorialManager:checkFuncTutorial(GConst.TutorialConst.START_TUTORIAL, true) then
|
|
DataManager.ChapterData:setChapterId(DataManager.ChapterData.MIN_CHAPTER_ID)
|
|
ModuleManager.BattleManager:playBattle(GConst.BattleConst.BATTLE_TYPE.STAGE)
|
|
else
|
|
self:showMainCityUI(true)
|
|
end
|
|
SDKManager:doUncompletePay()
|
|
end
|
|
|
|
--@region 功能开启
|
|
function MaincityManager:getFuncOpenShowList()
|
|
if EDITOR_MODE then
|
|
if LocalData:getFuncOpenPopSkip() > 0 then
|
|
return nil
|
|
end
|
|
end
|
|
|
|
local showList = {}
|
|
for moduleKey, info in pairs(ConfigManager:getConfig("func_open")) do
|
|
if ModuleManager:showPop(moduleKey) and not LocalData:getFuncOpenShowList()[moduleKey] then
|
|
if ModuleManager:getIsOpen(moduleKey, true) then
|
|
table.insert(showList, moduleKey)
|
|
-- elseif moduleKey == ModuleManager.MODULE_KEY.EQUIP_SKIN and DataManager.WeaponData:isOpen() then
|
|
-- table.insert(showList, moduleKey)
|
|
-- elseif moduleKey == ModuleManager.MODULE_KEY.SKIN and DataManager.SkinData:isOpen() then
|
|
-- table.insert(showList, moduleKey)
|
|
end
|
|
end
|
|
end
|
|
|
|
return showList
|
|
end
|
|
|
|
function MaincityManager:markFuncOpen(key)
|
|
local list = LocalData:getFuncOpenShowList()
|
|
list[key] = true
|
|
LocalData:setFuncOpenShowList(list)
|
|
end
|
|
|
|
-- 获取主界面各个模块的入口坐标
|
|
function MaincityManager:getModuleEntrancePos(moduleKey)
|
|
local mainUI = UIManager:getUIByIndex(UIManager.UI_PATH.MAINCITY_UI)
|
|
if not mainUI then
|
|
return nil
|
|
end
|
|
|
|
if moduleKey == ModuleManager.MODULE_KEY.TASK then
|
|
return mainUI:getTaskIconPos()
|
|
elseif moduleKey == ModuleManager.MODULE_KEY.MALL_DAILY then
|
|
return mainUI:getMallIconPos()
|
|
elseif moduleKey == ModuleManager.MODULE_KEY.DAILY_CHALLENGE then
|
|
return mainUI:getDailyChallengeIconPos()
|
|
elseif moduleKey == ModuleManager.MODULE_KEY.ARENA then
|
|
return mainUI:getArenaIconPos()
|
|
elseif moduleKey == ModuleManager.MODULE_KEY.IDLE_DROP then
|
|
return mainUI:getIdleIconPos()
|
|
elseif moduleKey == ModuleManager.MODULE_KEY.SUMMON_OPEN then
|
|
return mainUI:getSummonIconPos()
|
|
elseif moduleKey == ModuleManager.MODULE_KEY.FUND or
|
|
moduleKey == ModuleManager.MODULE_KEY.ACT_SEVENDAY then
|
|
return mainUI:getSideBarActIconPos(moduleKey)
|
|
end
|
|
end
|
|
--@endregion
|
|
|
|
--@region 战斗力
|
|
function MaincityManager:checkShowPowerUI()
|
|
local curPower = DataManager.HeroData:getShowPower()
|
|
local lastPower = DataManager.HeroData:getLastPower()
|
|
if curPower ~= lastPower then
|
|
GFunc.hidePowerToast()
|
|
GFunc.showPowerToast(lastPower, curPower)
|
|
end
|
|
end
|
|
--@endregion
|
|
|
|
--@region 跨天数据
|
|
function MaincityManager:reqPassDay()
|
|
self:sendMessage(ProtoMsgType.FromMsgEnum.PassDayReq, {}, self.rspPassDay)
|
|
end
|
|
function MaincityManager:rspPassDay(result)
|
|
DataManager:onCrossDay(result)
|
|
end
|
|
--@endregion
|
|
|
|
return MaincityManager |