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
This commit is contained in:
SL1900
2025-12-03 01:00:00 +09:00
commit 5e0d58cfad
3595 changed files with 9373562 additions and 0 deletions
@@ -0,0 +1,634 @@
local StarTowerFastBattleCtrl = class("StarTowerFastBattleCtrl", BaseCtrl)
local LocalSettingData = require("GameCore.Data.LocalSettingData")
local Actor2DManager = require("Game.Actor2D.Actor2DManager")
local GamepadUIManager = require("GameCore.Module.GamepadUIManager")
StarTowerFastBattleCtrl._mapNodeConfig = {
imgRed = {},
imgBg_4 = {sComponentName = "Image"},
imgBg_2_L = {nCount = 2, sComponentName = "Image"},
imgBg_2_R = {nCount = 2, sComponentName = "Image"},
imgBg_Flag_L = {nCount = 2, sComponentName = "Image"},
rtImgBgFlagL = {
nCount = 2,
sNodeName = "imgBg_Flag_L",
sComponentName = "RectTransform"
},
imgBg_Flag_R = {nCount = 2, sComponentName = "Image"},
rtImgBgFlagR = {
nCount = 2,
sNodeName = "imgBg_Flag_R",
sComponentName = "RectTransform"
},
trRoot = {
sNodeName = "----Actor2D_L2DInUI----",
sComponentName = "Transform"
},
SlipInOutAnim = {sComponentName = "Animator"},
trActor2D_PNG = {
sNodeName = "----Actor2D_PNG----",
sComponentName = "Transform"
},
actor2DPNGAnim = {
sNodeName = "----Actor2D_PNG----",
sComponentName = "Animator"
},
btnBack = {
sComponentName = "UIButton",
callback = "OnBackButtonClick"
},
btnLog = {
sComponentName = "UIButton",
callback = "OnLogButtonClick"
},
imgFloorUpArrow = {sComponentName = "Image"},
imgFloorNum = {
sNodeName = "imgFloorNum_",
sComponentName = "Image",
nCount = 2
},
imgFloorIcon = {sComponentName = "Image"},
Tips = {
sCtrlName = "Game.UI.StarTower.DiscTips.StarTowerTipsCtrl"
},
TipsCanvas = {sNodeName = "Tips", sComponentName = "Canvas"},
imgBuildRank = {sComponentName = "Image"},
textBulidScoreNum = {sComponentName = "TMP_Text"},
textBulidScore = {
sComponentName = "TMP_Text",
sLanguageId = "StartowerFastBattle_BuildScore"
},
btnBulidDetails = {
sComponentName = "UIButton",
callback = "OnBulidDetailsButtonClick"
},
imgRoleIcon = {
sNodeName = "imgRoleIcon_",
sComponentName = "Image",
nCount = 3
},
textPerkCount = {
sNodeName = "textPerkCount_",
sComponentName = "TMP_Text",
nCount = 3
},
btnRoleDetails = {
sComponentName = "UIButton",
callback = "OnRoleDetailsButtonClick"
},
imgNote = {
sNodeName = "imgNote_",
sComponentName = "Image",
nCount = 9
},
textNote = {
sNodeName = "textNote_",
sComponentName = "TMP_Text",
nCount = 9
},
btnNoteDetails = {
sComponentName = "UIButton",
callback = "OnNoteDetailsButtonClick"
},
textLevel = {
sComponentName = "TMP_Text",
sLanguageId = "StarTower_Reward_Level"
},
textLevelNum = {sComponentName = "TMP_Text"},
imgLevelBar = {sComponentName = "Image"},
imgCoin = {sComponentName = "Image"},
textCoinCount = {sComponentName = "TMP_Text"},
btnFastBattle = {
sComponentName = "UIButton",
callback = "OnFastBattleButtonClick"
},
goAuto = {},
textAutomatic = {
sComponentName = "TMP_Text",
sLanguageId = "StartowerFastBattle_Automatic"
},
goPause = {},
textPause = {
sComponentName = "TMP_Text",
sLanguageId = "StartowerFastBattle_Pause"
}
}
StarTowerFastBattleCtrl._mapEventConfig = {
InitRoom = "OnEvent_InitRoom",
EventHandleOver = "OnEvent_EventHandleOver",
SweepEnterDangerRoom = "OnEvent_EnterDangerRoom",
RefreshFastBattleInfo = "OnEvent_RefreshFastBattleInfo",
StarTowerFastBattleOpenShop = "OnEvent_StarTowerFastBattleOpenShop",
StarTowerFastBattleOpenMachine = "OnEvent_StarTowerFastBattleOpenMachine",
DiscSkillActive = "OnEvent_DiscSkillActive",
[EventId.StarTowerDepot] = "OnEvent_OpenStarTowerDepot",
RefreshNoteCount = "OnEvent_RefreshNoteCount",
TryCloseStarTowerLastShop = "OnEvent_TryCloseStarTowerLastShop",
ShowNPCAffinity = "OnEvent_AffinityTips"
}
StarTowerFastBattleCtrl._mapRedDotConfig = {}
local theme_sprite_path = "UI/big_sprites/"
local Flag_Random = {-330, 660}
local room_bg = {
[GameEnum.starTowerRoomType.ShopRoom] = "bg_fastBattle_shop_1",
[GameEnum.starTowerRoomType.EventRoom] = "bg_fastBattle_2",
[GameEnum.starTowerRoomType.BattleRoom] = "bg_fastBattle_3",
[GameEnum.starTowerRoomType.EliteBattleRoom] = "bg_fastBattle_4",
[GameEnum.starTowerRoomType.BossRoom] = "bg_fastBattle_5",
[GameEnum.starTowerRoomType.FinalBossRoom] = "bg_fastBattle_6"
}
function StarTowerFastBattleCtrl:Awake()
self.bHandleOver = false
self.bOpenOption = false
self.bAuto = true
self.bPause = false
self.nNextCaseId = -1
self.nNextRoomType = -1
self.tbTips = {}
self.tbHistoryLog = {}
self.Animator = self.gameObject:GetComponent("Animator")
self:Init()
end
function StarTowerFastBattleCtrl:FadeIn()
local bL2d = LocalSettingData.mapData.UseLive2D
self._mapNode.trRoot.gameObject:SetActive(bL2d)
self._mapNode.trActor2D_PNG.gameObject:SetActive(not bL2d)
if bL2d then
Actor2DManager.SetActor2DInUI(self:GetPanelId(), self._mapNode.trRoot, self._panel.tbTeam[1], nil, true)
self._mapNode.SlipInOutAnim:Play("Actor2D_right_in")
else
Actor2DManager.SetActor2D_PNG(self._mapNode.trActor2D_PNG, self:GetPanelId(), self._panel.tbTeam[1], nil)
self._mapNode.actor2DPNGAnim:Play("Actor2D_PNG_right_in")
end
end
function StarTowerFastBattleCtrl:FadeOut()
end
function StarTowerFastBattleCtrl:OnEnable()
self:InitGroupTheme()
self:RefreshRoomFloor()
self:RefreshRoomBg()
self:RefreshRoomIcon()
self:RefreshBuildScore()
self:RefreshNoteCount()
self:RefreshPerkCount()
self:RefreshLevelExp()
self:RefreshCoin()
NovaAPI.SetCanvasSortingName(self._mapNode.TipsCanvas, AllEnum.SortingLayerName.UI_Top)
EventManager.Hit(EventId.TemporaryBlockInput, 1.3)
self:AddTimer(1, 1, "StartFastBattle", true, true, true)
GamepadUIManager.EnableGamepadUI("StarTowerFastBattleCtrl", {}, nil, true)
end
function StarTowerFastBattleCtrl:OnDisable()
self.nNextCaseId = -1
self.nNextRoomType = -1
self.tbHistoryLog = nil
GamepadUIManager.DisableGamepadUI("StarTowerFastBattleCtrl")
end
function StarTowerFastBattleCtrl:OnDestroy()
end
function StarTowerFastBattleCtrl:OnRelease()
end
function StarTowerFastBattleCtrl:Init()
NovaAPI.SetTMPText(self._mapNode.textBulidScoreNum, 0)
for nIndex, nCharId in ipairs(self._panel.tbTeam) do
if nil ~= self._mapNode.imgRoleIcon[nIndex] then
local nSkinId = PlayerData.Char:GetCharSkinId(nCharId)
local mapSkin = ConfigTable.GetData_CharacterSkin(nSkinId)
if nil ~= mapSkin then
self:SetPngSprite(self._mapNode.imgRoleIcon[nIndex], mapSkin.Icon .. AllEnum.CharHeadIconSurfix.S)
end
end
if nil ~= self._mapNode.textPerkCount[nIndex] then
NovaAPI.SetTMPText(self._mapNode.textPerkCount[nIndex], 0)
end
end
self:RefreshNoteCount()
self:SetSprite_Coin(self._mapNode.imgCoin, AllEnum.CoinItemId.FixedRogCurrency)
NovaAPI.SetTMPText(self._mapNode.textCoinCount, 0)
self._mapNode.imgRed:SetActive(false)
self:RefreshPauseStatus()
end
function StarTowerFastBattleCtrl:StartFastBattle()
EventManager.Hit("InitStarTowerNote", self._panel.LevelData._mapNote)
self.Animator:Play("StarTowerFastBattlePanel_open")
CS.WwiseAudioManager.Instance:PlaySound("ui_startower_fastBattle_elevator_door")
self:AddTimer(1, 0.3, function()
self._panel.LevelData:HandleCases()
end, true, true, true)
end
function StarTowerFastBattleCtrl:EnterRoom()
self.bHandleOver = false
self._panel.LevelData:EnterRoom(self.nNextCaseId, self.nNextRoomType)
end
function StarTowerFastBattleCtrl:InitGroupTheme()
local mapStarTowerCfg = ConfigTable.GetData("StarTower", self._panel.nStarTowerId)
if mapStarTowerCfg ~= nil then
self.nGroupId = mapStarTowerCfg.GroupId
local mapGroup = ConfigTable.GetData("StarTowerGroup", self.nGroupId)
if nil ~= mapGroup then
local nTheme = mapGroup.GroupTheme or 1
self.bShowFlag = #mapGroup.EET > 0
for _, v in ipairs(self._mapNode.imgBg_2_L) do
self:SetPngSprite(v, theme_sprite_path .. string.format(AllEnum.StarTowerFastBattleBg.Bg_L, nTheme))
end
for _, v in ipairs(self._mapNode.imgBg_2_R) do
self:SetPngSprite(v, theme_sprite_path .. string.format(AllEnum.StarTowerFastBattleBg.Bg_R, nTheme))
end
for _, v in ipairs(self._mapNode.imgBg_Flag_L) do
if self.bShowFlag then
self:SetPngSprite(v, theme_sprite_path .. string.format(AllEnum.StarTowerFastBattleBg.Flag, nTheme))
end
end
for _, v in ipairs(self._mapNode.imgBg_Flag_R) do
if self.bShowFlag then
self:SetPngSprite(v, theme_sprite_path .. string.format(AllEnum.StarTowerFastBattleBg.Flag, nTheme))
end
end
self.nRandomLR = math.random(1, 2)
self.nRandomPosYL = math.random(Flag_Random[1], Flag_Random[2])
self.nRandomPosYR = math.random(Flag_Random[1], Flag_Random[2])
self._mapNode.imgBg_Flag_L[1].gameObject:SetActive(self.nRandomLR == 1 and self.bShowFlag)
self._mapNode.imgBg_Flag_R[1].gameObject:SetActive(self.nRandomLR == 2 and self.bShowFlag)
self._mapNode.rtImgBgFlagL[1].anchoredPosition = Vector2(0, self.nRandomPosYL)
self._mapNode.rtImgBgFlagR[1].anchoredPosition = Vector2(0, self.nRandomPosYR)
end
end
end
function StarTowerFastBattleCtrl:RefreshThemeFlag(nTime)
self.nRandomLR = math.random(1, 2)
self.nRandomPosYL = math.random(Flag_Random[1], Flag_Random[2])
self.nRandomPosYR = math.random(Flag_Random[1], Flag_Random[2])
self._mapNode.imgBg_Flag_L[2].gameObject:SetActive(self.nRandomLR == 1 and self.bShowFlag)
self._mapNode.imgBg_Flag_R[2].gameObject:SetActive(self.nRandomLR == 2 and self.bShowFlag)
self._mapNode.rtImgBgFlagL[2].anchoredPosition = Vector2(0, self.nRandomPosYL)
self._mapNode.rtImgBgFlagR[2].anchoredPosition = Vector2(0, self.nRandomPosYR)
self:AddTimer(1, nTime, function()
self._mapNode.imgBg_Flag_L[1].gameObject:SetActive(self.nRandomLR == 1 and self.bShowFlag)
self._mapNode.imgBg_Flag_R[1].gameObject:SetActive(self.nRandomLR == 2 and self.bShowFlag)
self._mapNode.rtImgBgFlagL[1].anchoredPosition = Vector2(0, self.nRandomPosYL)
self._mapNode.rtImgBgFlagR[1].anchoredPosition = Vector2(0, self.nRandomPosYR)
end, true, true, true)
end
function StarTowerFastBattleCtrl:RefreshRoomIcon()
local nRoomType = self._panel.LevelData.nRoomType
self:SetAtlasSprite(self._mapNode.imgFloorIcon, "11_ico", AllEnum.StarTowerRoomName[nRoomType].SweepIcon)
if nRoomType == GameEnum.starTowerRoomType.HorrorRoom then
self._mapNode.imgRed:SetActive(true)
local _, color = ColorUtility.TryParseHtmlString("#FF2B53")
NovaAPI.SetImageColor(self._mapNode.imgFloorNum[1], color)
NovaAPI.SetImageColor(self._mapNode.imgFloorNum[2], color)
else
self._mapNode.imgRed:SetActive(false)
local _, color = ColorUtility.TryParseHtmlString("#08D3D4")
NovaAPI.SetImageColor(self._mapNode.imgSkillTypeBg, color)
NovaAPI.SetImageColor(self._mapNode.imgFloorNum[1], color)
NovaAPI.SetImageColor(self._mapNode.imgFloorNum[2], color)
end
end
function StarTowerFastBattleCtrl:RefreshRoomBg()
local nRoomType = self._panel.LevelData.nRoomType
local sIcon = room_bg[nRoomType]
if sIcon ~= nil then
self:SetPngSprite(self._mapNode.imgBg_4, theme_sprite_path .. sIcon)
end
end
function StarTowerFastBattleCtrl:RefreshRoomFloor()
local nFloorNum = self._panel.LevelData.nCurLevel
self:SetAtlasSprite(self._mapNode.imgFloorNum[1], "05_number", "zs_fastBattle_floor_" .. nFloorNum % 10)
NovaAPI.SetImageNativeSize(self._mapNode.imgFloorNum[1])
nFloorNum = math.floor(nFloorNum / 10)
self:SetAtlasSprite(self._mapNode.imgFloorNum[2], "05_number", "zs_fastBattle_floor_" .. nFloorNum % 10)
NovaAPI.SetImageNativeSize(self._mapNode.imgFloorNum[2])
end
function StarTowerFastBattleCtrl:RefreshBuildScore()
local nLastScore = tonumber(NovaAPI.GetTMPText(self._mapNode.textBulidScoreNum))
local nAfterScore = self._panel.LevelData:CalBuildScore()
if nAfterScore ~= nLastScore then
local twCoin = DOTween.To(function()
return nLastScore
end, function(score)
NovaAPI.SetTMPText(self._mapNode.textBulidScoreNum, math.floor(score))
end, nAfterScore, 1)
local _cb = function()
NovaAPI.SetTMPText(self._mapNode.textBulidScoreNum, nAfterScore)
end
twCoin.onComplete = dotween_callback_handler(self, _cb)
end
local rank = PlayerData.Build:CalBuildRank(nAfterScore)
local imagePath = "Icon/BuildRank/BuildRank_" .. rank.Id
self:SetPngSprite(self._mapNode.imgBuildRank, imagePath)
end
function StarTowerFastBattleCtrl:RefreshNoteCount()
local goLastNoteObj
local LevelData = self._panel.LevelData
for i = 1, 9 do
local nNoteId = self._panel.tbShowNote[i]
self._mapNode.imgNote[i].gameObject:SetActive(false)
if nNoteId ~= nil then
local noteCfg = ConfigTable.GetData("SubNoteSkill", nNoteId)
if nil ~= noteCfg then
self:SetPngSprite(self._mapNode.imgNote[i], noteCfg.Icon .. AllEnum.DiscSkillIconSurfix.Small)
NovaAPI.SetTMPText(self._mapNode.textNote[i], LevelData._mapNote[nNoteId] or 0)
self._mapNode.imgNote[i].gameObject:SetActive(true)
goLastNoteObj = self._mapNode.imgNote[i].gameObject
end
end
end
if nil ~= goLastNoteObj then
goLastNoteObj.transform:Find("ImgLine").gameObject:SetActive(false)
end
end
function StarTowerFastBattleCtrl:RefreshPerkCount()
local LevelData = self._panel.LevelData
for nIndex, nCharId in ipairs(self._panel.tbTeam) do
local tbPerk = LevelData._mapPotential[nCharId]
local count = 0
for _, _ in pairs(tbPerk) do
count = count + 1
end
if nil ~= self._mapNode.textPerkCount[nIndex] then
NovaAPI.SetTMPText(self._mapNode.textPerkCount[nIndex], count)
end
end
end
function StarTowerFastBattleCtrl:RefreshLevelExp()
local LevelData = self._panel.LevelData
local nAllExp, bMaxLevel = self:GetTeamNeedExpByLevel(1, LevelData.nTeamLevel)
if bMaxLevel then
NovaAPI.SetImageFillAmount(self._mapNode.imgLevelBar, 1)
else
NovaAPI.SetImageFillAmount(self._mapNode.imgLevelBar, LevelData.nTeamExp / nAllExp)
end
NovaAPI.SetTMPText(self._mapNode.textLevelNum, LevelData.nTeamLevel)
end
function StarTowerFastBattleCtrl:RefreshCoin()
local nCoinCount = 0
local LevelData = self._panel.LevelData
if LevelData._mapItem[AllEnum.CoinItemId.FixedRogCurrency] ~= nil then
nCoinCount = LevelData._mapItem[AllEnum.CoinItemId.FixedRogCurrency]
NovaAPI.SetTMPText(self._mapNode.textCoinCount, self:ThousandsNumber(nCoinCount))
else
NovaAPI.SetTMPText(self._mapNode.textCoinCount, 0)
end
EventManager.Hit("RefreshStarTowerCoin", nCoinCount)
end
function StarTowerFastBattleCtrl:RefreshPauseStatus(bRestart)
self._mapNode.goAuto.gameObject:SetActive(not self.bPause)
self._mapNode.goPause.gameObject:SetActive(self.bPause)
end
function StarTowerFastBattleCtrl:GetTeamNeedExpByLevel(nGroupId, nLevel)
local bMaxLevel = false
local nNeedExp = 0
if CacheTable.GetData("_StarTowerTeamExpGroup", nGroupId) ~= nil then
local nMaxLevel = #CacheTable.GetData("_StarTowerTeamExpGroup", nGroupId)
bMaxLevel = nLevel >= nMaxLevel
if nLevel < nMaxLevel then
local expCfg = CacheTable.GetData("_StarTowerTeamExpGroup", nGroupId)[nLevel + 1]
nNeedExp = expCfg.NeedExp
end
end
return nNeedExp, bMaxLevel
end
function StarTowerFastBattleCtrl:OnHandleCasesOver()
local CurHandleCasesOver = function()
self.bOpenOption = false
self.Animator:Play("StarTowerFastBattlePanel_idle")
if self.bAuto and not self.bPause then
self:EnterRoom()
end
end
local bShop, bMachine, nMachineCount, nDiscount, bFirstFree = self._panel.LevelData:GetShopAndMachine()
if bShop or bMachine then
self.bOpenOption = true
local bLastShopRoom = self._panel.LevelData:CheckLastShopRoom()
EventManager.Hit(EventId.OpenPanel, PanelId.StarTowerFastBattleOption, bShop, bMachine, nMachineCount, self._panel.LevelData._mapItem[AllEnum.CoinItemId.FixedRogCurrency], CurHandleCasesOver, nDiscount, bFirstFree, bLastShopRoom)
else
CurHandleCasesOver()
end
end
function StarTowerFastBattleCtrl:OnBackButtonClick()
if not self.bHandleOver then
return
end
local msg = {
nType = AllEnum.MessageBox.Confirm,
sContent = ConfigTable.GetUIText("StarTower_Sweep_BackTips_Content"),
sConfirm = ConfigTable.GetUIText("StarTower_Sweep_Leave_Btn"),
sCancel = ConfigTable.GetUIText("StarTower_Sweep_GiveUp_Btn"),
callbackConfirm = function()
self._panel.LevelData:StarTowerLeave()
PanelManager.Home()
end,
callbackCancel = function()
local giveUpCallBack = function()
local mapStarTowerState = PlayerData.State:GetStarTowerState()
PlayerData.StarTower:GiveUpReconnect(mapStarTowerState.Id, mapStarTowerState.CharIds, false, function()
local wait = function()
coroutine.yield(CS.UnityEngine.WaitForEndOfFrame())
EventManager.Hit(EventId.ClosePanel, PanelId.StarTowerFastBattle)
end
cs_coroutine.start(wait)
end)
end
local sContent = ConfigTable.GetUIText("StarTower_Pause_Tips")
local msg = {
nType = AllEnum.MessageBox.Confirm,
sContent = sContent or "",
callbackConfirm = giveUpCallBack
}
EventManager.Hit(EventId.OpenMessageBox, msg)
end,
bCloseNoHandler = true,
bRedCancel = true
}
EventManager.Hit(EventId.OpenMessageBox, msg)
end
function StarTowerFastBattleCtrl:OnLogButtonClick()
if not self.bHandleOver then
return
end
EventManager.Hit(EventId.OpenPanel, PanelId.StarTowerFastBattleLog, self.tbHistoryLog)
end
function StarTowerFastBattleCtrl:OnBulidDetailsButtonClick()
if not self.bHandleOver then
return
end
local LevelData = self._panel.LevelData
EventManager.Hit("OpenStarTowerDepot", LevelData._mapPotential, LevelData._mapNote, LevelData._mapFateCard, LevelData._mapItem, LevelData.tbActiveSecondaryIds, AllEnum.StarTowerDepotTog.Potential)
end
function StarTowerFastBattleCtrl:OnRoleDetailsButtonClick()
if not self.bHandleOver then
return
end
local LevelData = self._panel.LevelData
EventManager.Hit("OpenStarTowerDepot", LevelData._mapPotential, LevelData._mapNote, LevelData._mapFateCard, LevelData._mapItem, LevelData.tbActiveSecondaryIds, AllEnum.StarTowerDepotTog.Potential)
end
function StarTowerFastBattleCtrl:OnNoteDetailsButtonClick()
if not self.bHandleOver then
return
end
local LevelData = self._panel.LevelData
EventManager.Hit("OpenStarTowerDepot", LevelData._mapPotential, LevelData._mapNote, LevelData._mapFateCard, LevelData._mapItem, LevelData.tbActiveSecondaryIds, AllEnum.StarTowerDepotTog.DiscSkill)
end
function StarTowerFastBattleCtrl:OnFastBattleButtonClick()
self.bPause = not self.bPause
self:RefreshPauseStatus(true)
if not self.bHandleOver or self.bPause then
return
end
if self.nNextCaseId < 0 or self.nNextCaseId < 0 then
return
end
self:EnterRoom()
end
function StarTowerFastBattleCtrl:OnEvent_InitRoom()
self.Animator:Play("StarTowerFastBattlePanel_close")
self:AddTimer(1, 0.1, function()
CS.WwiseAudioManager.Instance:PlaySound("ui_startower_fastBattle_elevator")
self.Animator:Play("StarTowerFastBattlePanel_up")
local nAnimLen = NovaAPI.GetAnimClipLength(self.Animator, {
"StarTowerFastBattlePanel_up"
})
self:RefreshThemeFlag(nAnimLen)
self:RefreshRoomBg()
self:AddTimer(1, nAnimLen, function()
self:RefreshRoomFloor()
self:RefreshRoomIcon()
end, true, true, true)
self:AddTimer(1, 1, function()
self._panel.LevelData:HandleCases()
end, true, true, true)
end, true, true, true)
end
function StarTowerFastBattleCtrl:OnEvent_EventHandleOver()
if self.bOpenOption then
return
end
self.bHandleOver = true
self.nNextCaseId, self.nNextRoomType = self._panel.LevelData:GetDoorCase()
self:OnHandleCasesOver()
end
function StarTowerFastBattleCtrl:OnEvent_EnterDangerRoom(nCaseId, nRoomType)
if self.bOpenOption then
return
end
self.bHandleOver = true
self.nNextCaseId = nCaseId
self.nNextRoomType = nRoomType
self:OnHandleCasesOver()
end
function StarTowerFastBattleCtrl:OnEvent_RefreshFastBattleInfo(tbChangeFateCard, mapChangeNote, mapItemChange, nLevelChange, nExpChange, mapPotentialChange)
local LevelData = self._panel.LevelData
self:RefreshPerkCount()
self:RefreshBuildScore()
self:RefreshNoteCount()
self:RefreshLevelExp()
self:RefreshCoin()
local mapTower = ConfigTable.GetData("StarTower", LevelData.nTowerId)
local ntowerName = orderedFormat(ConfigTable.GetUIText("Dungeon_Difficulty") or "", mapTower.Name, ConfigTable.GetUIText("Diffculty_" .. mapTower.Difficulty) or "")
local towerName = mapTower and ntowerName
for nId, tbData in pairs(mapChangeNote) do
if tbData.Qty > 0 then
local mapItem = ConfigTable.GetData_Item(nId)
if nil ~= mapItem then
end
end
end
for nId, changeCount in pairs(mapItemChange) do
local mapItem = ConfigTable.GetData_Item(nId)
if nil ~= mapItem then
if 0 < changeCount then
table.insert(self.tbTips, {
bSkill = false,
nTid = nId,
nCount = changeCount,
nTipType = AllEnum.StarTowerTipsType.ItemTip
})
table.insert(self.tbHistoryLog, orderedFormat(ConfigTable.GetUIText("StarTower_Sweep_Log_1"), towerName, LevelData.nCurLevel, changeCount, mapItem.Title))
else
table.insert(self.tbHistoryLog, orderedFormat(ConfigTable.GetUIText("StarTower_Sweep_Log_4"), towerName, LevelData.nCurLevel, math.abs(changeCount), mapItem.Title))
end
end
end
for nId, changeInfo in pairs(mapPotentialChange) do
if 0 < changeInfo.nNextLevel - changeInfo.nLevel then
local mapItem = ConfigTable.GetData_Item(nId)
if nil ~= mapItem then
table.insert(self.tbHistoryLog, orderedFormat(ConfigTable.GetUIText("StarTower_Sweep_Log_2"), towerName, LevelData.nCurLevel, mapItem.Title))
end
end
end
for _, changeInfo in pairs(tbChangeFateCard) do
if changeInfo[4] == 1 then
local mapItem = ConfigTable.GetData_Item(changeInfo[1])
if nil ~= mapItem then
table.insert(self.tbHistoryLog, orderedFormat(ConfigTable.GetUIText("StarTower_Sweep_Log_3"), towerName, LevelData.nCurLevel, mapItem.Title))
end
end
end
if 0 < #self.tbTips then
self._mapNode.Tips:StartShowTips(self.tbTips)
self.tbTips = {}
end
end
function StarTowerFastBattleCtrl:OnEvent_StarTowerFastBattleOpenShop()
if not self.bOpenOption then
return
end
local bSuccess = self._panel.LevelData:OpenShop()
if not bSuccess then
printError("打开商店界面失败")
end
end
function StarTowerFastBattleCtrl:OnEvent_StarTowerFastBattleOpenMachine()
if not self.bOpenOption then
return
end
local bSuccess = self._panel.LevelData:OpenStrengthMachine()
if not bSuccess then
printError("打开强化界面失败")
end
end
function StarTowerFastBattleCtrl:OnEvent_DiscSkillActive(tbParam)
self._panel.LevelData:DiscSkillActive(tbParam)
end
function StarTowerFastBattleCtrl:OnEvent_OpenStarTowerDepot(nTog, nParam)
if nTog == AllEnum.StarTowerDepotTog.CharInfo then
printError("星塔扫荡无法打开星塔背包角色页签")
return
end
local LevelData = self._panel.LevelData
EventManager.Hit("OpenStarTowerDepot", LevelData._mapPotential, LevelData._mapNote, LevelData._mapFateCard, LevelData._mapItem, LevelData.tbActiveSecondaryIds, nTog, nParam)
end
function StarTowerFastBattleCtrl:OnEvent_RefreshNoteCount()
self:RefreshNoteCount()
end
function StarTowerFastBattleCtrl:OnEvent_TryCloseStarTowerLastShop(bMachine, nMachineCost)
local nMinPrice = self._panel.LevelData:GetShopMinPrice()
if bMachine then
nMinPrice = -1 < nMinPrice and math.min(nMinPrice, nMachineCost) or nMachineCost
end
local nCurCoin = self._panel.LevelData._mapItem[AllEnum.CoinItemId.FixedRogCurrency] or 0
local closePanel = function()
EventManager.Hit(EventId.ClosePanel, PanelId.StarTowerFastBattleOption)
end
if nMinPrice <= nCurCoin and -1 < nMinPrice then
local data = {
nType = AllEnum.MessageBox.Confirm,
sContent = ConfigTable.GetUIText("StarTower_FastBattle_Shop_Tip"),
callbackConfirm = closePanel
}
EventManager.Hit(EventId.OpenMessageBox, data)
else
closePanel()
end
end
function StarTowerFastBattleCtrl:OnEvent_AffinityTips(nNpcId, nAffinity)
local tbTips = {}
table.insert(tbTips, {
nNPCId = nNpcId,
nAffinity = nAffinity,
nTipType = AllEnum.StarTowerTipsType.NPCAffinity
})
self._mapNode.Tips:StartShowTips(tbTips)
end
return StarTowerFastBattleCtrl
@@ -0,0 +1,74 @@
local StarTowerFastBattleLogCtrl = class("StarTowerFastBattleLogCtrl", BaseCtrl)
StarTowerFastBattleLogCtrl._mapNodeConfig = {
goWindow = {},
aniWindow = {sNodeName = "goWindow", sComponentName = "Animator"},
goBlur = {
sNodeName = "t_fullscreen_blur_blue"
},
txtWindowTitle = {
sComponentName = "TMP_Text",
sLanguageId = "StarTower_Sweep_Log_Title"
},
btnClose = {
sComponentName = "UIButton",
callback = "OnBtnClick_Close"
},
btnFullScreenClose = {
sComponentName = "UIButton",
callback = "OnBtnClick_Close"
},
EmptyRoot = {},
textEmpty = {
sComponentName = "TMP_Text",
sLanguageId = "StarTower_Sweep_Log_Empty"
},
LogRoot = {},
svLog = {
sComponentName = "LoopScrollView"
}
}
StarTowerFastBattleLogCtrl._mapEventConfig = {}
function StarTowerFastBattleLogCtrl:Awake()
self._mapNode.goBlur:SetActive(false)
self._mapNode.goWindow:SetActive(false)
end
function StarTowerFastBattleLogCtrl:OnEnable()
self._mapNode.goBlur:SetActive(true)
local wait = function()
coroutine.yield(CS.UnityEngine.WaitForEndOfFrame())
self:Refresh()
self._mapNode.goWindow:SetActive(true)
self._mapNode.aniWindow:Play("t_window_04_t_in")
EventManager.Hit(EventId.TemporaryBlockInput, 0.3)
end
cs_coroutine.start(wait)
end
function StarTowerFastBattleLogCtrl:OnDisable()
end
function StarTowerFastBattleLogCtrl:OnDestroy()
end
function StarTowerFastBattleLogCtrl:Refresh()
if nil ~= self._panel.tbHistoryLog and #self._panel.tbHistoryLog > 0 then
self._mapNode.svLog:Init(#self._panel.tbHistoryLog, self, self.OnGridRefreshLog)
self._mapNode.EmptyRoot:SetActive(false)
self._mapNode.LogRoot:SetActive(true)
self._mapNode.svLog:SetScrollGridPos(#self._panel.tbHistoryLog - 1, 0)
else
self._mapNode.LogRoot:SetActive(false)
self._mapNode.EmptyRoot:SetActive(true)
end
end
function StarTowerFastBattleLogCtrl:OnGridRefreshLog(goGrid, gridIndex)
local nLogIndex = gridIndex + 1
local sLog = self._panel.tbHistoryLog[nLogIndex]
local txtLog = goGrid.transform:Find("btnGrid/AnimRoot/imgBg_Log/textLog"):GetComponent("TMP_Text")
NovaAPI.SetTMPText(txtLog, sLog)
end
function StarTowerFastBattleLogCtrl:OnBtnClick_Close()
EventManager.Hit(EventId.TemporaryBlockInput, 0.2)
self._mapNode.aniWindow:Play("t_window_04_t_out")
self:AddTimer(1, 0.2, function()
EventManager.Hit(EventId.ClosePanel, PanelId.StarTowerFastBattleLog)
end, true, true, true)
end
return StarTowerFastBattleLogCtrl
@@ -0,0 +1,18 @@
local StarTowerFastBattleLogPanel = class("StarTowerFastBattleLogPanel", BasePanel)
StarTowerFastBattleLogPanel._bIsMainPanel = false
StarTowerFastBattleLogPanel._tbDefine = {
{
sPrefabPath = "StarTowerFastBattle/StarTowerFastBattleLogPanel.prefab",
sCtrlName = "Game.UI.StarTowerFastBattle.StarTowerFastBattleLogCtrl"
}
}
function StarTowerFastBattleLogPanel:Awake()
self.tbHistoryLog = self:GetPanelParam()[1]
end
function StarTowerFastBattleLogPanel:OnEnable()
end
function StarTowerFastBattleLogPanel:OnDisable()
end
function StarTowerFastBattleLogPanel:OnDestroy()
end
return StarTowerFastBattleLogPanel
@@ -0,0 +1,205 @@
local StarTowerFastBattleOptionCtrl = class("StarTowerFastBattleOptionCtrl", BaseCtrl)
local GamepadUIManager = require("GameCore.Module.GamepadUIManager")
StarTowerFastBattleOptionCtrl._mapNodeConfig = {
goBlur = {
sNodeName = "t_fullscreen_blur_blue"
},
rtSelectOption = {},
TMP_Title = {sComponentName = "TMP_Text"},
rtChoose = {nCount = 5},
btnChoose = {
sComponentName = "NaviButton",
nCount = 5,
callback = "OnBtnClick_Select"
},
imgIconLeave = {nCount = 5},
TMPChoose = {sComponentName = "TMP_Text", nCount = 5},
imgFunc = {nCount = 5},
Select = {nCount = 5},
goCoin = {sNodeName = "imgBg_Coin"},
imgCoin = {sComponentName = "Image"},
textCoinCount = {sComponentName = "TMP_Text"}
}
StarTowerFastBattleOptionCtrl._mapEventConfig = {
RefreshStrengthMachineCost = "OnEvent_RefreshStrengthMachineCost",
RefreshStarTowerCoin = "OnEvent_RefreshStarTowerCoin",
GamepadUIChange = "OnEvent_GamepadUIChange",
GamepadUIReopen = "OnEvent_Reopen"
}
function StarTowerFastBattleOptionCtrl:Awake()
self._mapNode.goBlur:SetActive(false)
self._mapNode.rtSelectOption:SetActive(false)
for i = 1, 5 do
self._mapNode.rtChoose[i]:SetActive(false)
self._mapNode.imgIconLeave[i]:SetActive(false)
self._mapNode.imgFunc[i]:SetActive(false)
self._mapNode.Select[i]:SetActive(false)
NovaAPI.SetTMPText(self._mapNode.TMPChoose[i], "")
if i == 5 then
NovaAPI.SetTMPText(self._mapNode.TMPChoose[i], ConfigTable.GetUIText("StartowerFastBattle_LastRoom_Option"))
end
end
self.tbStrengthMachineCost = ConfigTable.GetConfigNumberArray("StrengthenMachineGoldConsume")
end
function StarTowerFastBattleOptionCtrl:OnEnable()
self.handler = {}
for k, v in ipairs(self._mapNode.btnChoose) do
self.handler[k] = ui_handler(self, self.OnBtnSelect_Select, v, k)
v.onSelect:AddListener(self.handler[k])
end
self.nSelectIdx = 0
self.closeCallBack = self._panel.closeCallback
self._mapNode.goBlur:SetActive(true)
local wait = function()
coroutine.yield(CS.UnityEngine.WaitForEndOfFrame())
self:Refresh()
self._mapNode.rtSelectOption:SetActive(true)
end
cs_coroutine.start(wait)
GamepadUIManager.EnableGamepadUI("StarTowerFastBattleOptionCtrl", self:GetGamepadUINode())
self:SetSprite_Coin(self._mapNode.imgCoin, AllEnum.CoinItemId.FixedRogCurrency)
NovaAPI.SetTMPText(self._mapNode.textCoinCount, self:ThousandsNumber(self._panel.nCoinCount))
end
function StarTowerFastBattleOptionCtrl:OnDisable()
GamepadUIManager.DisableGamepadUI("StarTowerFastBattleOptionCtrl")
if self.closeCallBack ~= nil and type(self.closeCallBack) == "function" then
self.closeCallBack()
end
self.closeCallBack = nil
for k, v in ipairs(self._mapNode.btnChoose) do
v.onSelect:RemoveListener(self.handler[k])
end
end
function StarTowerFastBattleOptionCtrl:OnDestroy()
end
function StarTowerFastBattleOptionCtrl:Refresh()
self._mapNode.rtChoose[1]:SetActive(self._panel.bShop)
NovaAPI.SetTMPText(self._mapNode.TMPChoose[1], ConfigTable.GetUIText("StarTower_Sweep_Option_1"))
self._mapNode.rtChoose[2]:SetActive(self._panel.bMachine)
self:RefreshMachineCost()
NovaAPI.SetTMPText(self._mapNode.TMPChoose[3], ConfigTable.GetUIText("StarTower_Sweep_Option_3"))
self._mapNode.rtChoose[3]:SetActive(not self._panel.bLastFloor)
self._mapNode.rtChoose[5]:SetActive(self._panel.bLastFloor)
local sTips = ConfigTable.GetUIText("StarTower_Sweep_Option_Title")
if self._panel.bLastFloor then
sTips = ConfigTable.GetUIText("StartowerFastBattle_LastRoom_Title")
end
NovaAPI.SetTMPText(self._mapNode.TMP_Title, sTips)
local tbBtnObj = {}
local bFirst = true
local add = function(i)
table.insert(tbBtnObj, self._mapNode.btnChoose[i])
if bFirst then
bFirst = false
self.nSelectIdx = i
end
end
if self._panel.bShop then
add(1)
end
if self._panel.bMachine then
add(2)
end
if self._panel.bLastFloor then
add(5)
else
add(3)
end
GamepadUIManager.SetNavigation(tbBtnObj, false)
self:SelectChoose()
end
function StarTowerFastBattleOptionCtrl:RefreshMachineCost()
self.nMachineCost = 120
if nil ~= self.tbStrengthMachineCost then
local times = self._panel.nMachineCount + 1
self.nMachineCost = self.tbStrengthMachineCost[times]
if self.nMachineCost == nil then
self.nMachineCost = self.tbStrengthMachineCost[#self.tbStrengthMachineCost]
end
self.nMachineCost = self.nMachineCost - self._panel.nDiscount
if self._panel.bFirstFree then
self.nMachineCost = 0
end
end
local sCost = self.nMachineCost == 0 and ConfigTable.GetUIText("ST_StrengthenMachine_Free") or tostring(self.nMachineCost)
NovaAPI.SetTMPText(self._mapNode.TMPChoose[2], orderedFormat(ConfigTable.GetUIText("StarTower_Sweep_Option_2"), self._panel.nCoinCount < self.nMachineCost and "#BD3059" or "#264278", sCost))
end
function StarTowerFastBattleOptionCtrl:OnBtnClick_Select(btn)
local nIdx = table.indexof(self._mapNode.btnChoose, btn)
if nIdx == 1 then
EventManager.Hit("StarTowerFastBattleOpenShop")
elseif nIdx == 2 then
EventManager.Hit("StarTowerFastBattleOpenMachine")
elseif nIdx == 3 then
EventManager.Hit(EventId.ClosePanel, PanelId.StarTowerFastBattleOption)
elseif nIdx == 5 then
EventManager.Hit("TryCloseStarTowerLastShop", self._panel.bMachine, self.nMachineCost)
end
end
function StarTowerFastBattleOptionCtrl:OnEvent_RefreshStrengthMachineCost(nMachineCount, bFirstFree)
self._panel.nMachineCount = nMachineCount
self._panel.bFirstFree = bFirstFree
self:RefreshMachineCost()
end
function StarTowerFastBattleOptionCtrl:OnEvent_RefreshStarTowerCoin(nCoinCount)
self._panel.nCoinCount = nCoinCount
self:RefreshMachineCost()
NovaAPI.SetTMPText(self._mapNode.textCoinCount, self:ThousandsNumber(self._panel.nCoinCount))
end
function StarTowerFastBattleOptionCtrl:OnBtnSelect_Select(btn, nIndex)
if self.nSelectIdx == nIndex then
return
end
for k, v in ipairs(self._mapNode.Select) do
if k == nIndex then
if GamepadUIManager.GetCurUIType() ~= AllEnum.GamepadUIType.Other and GamepadUIManager.GetCurUIType() ~= AllEnum.GamepadUIType.Mouse then
v:SetActive(true)
else
v:SetActive(false)
end
elseif k == self.nSelectIdx then
v:SetActive(false)
end
end
self.nSelectIdx = nIndex
end
function StarTowerFastBattleOptionCtrl:OnEvent_GamepadUIChange(sName, nBeforeType, nAfterType)
if sName ~= "StarTowerFastBattleOptionCtrl" then
return
end
local bNeedSelect = nBeforeType == AllEnum.GamepadUIType.Other and nAfterType ~= AllEnum.GamepadUIType.Mouse or nBeforeType == AllEnum.GamepadUIType.Mouse and nAfterType ~= AllEnum.GamepadUIType.Other
if bNeedSelect then
for k, v in ipairs(self._mapNode.btnChoose) do
if k == self.nSelectIdx then
self._mapNode.Select[k]:SetActive(true)
GamepadUIManager.SetSelectedUI(self._mapNode.btnChoose[self.nSelectIdx].gameObject)
end
end
else
for k, v in ipairs(self._mapNode.btnChoose) do
self._mapNode.Select[k]:SetActive(false)
end
end
end
function StarTowerFastBattleOptionCtrl:OnEvent_Reopen(sName)
if sName ~= "StarTowerFastBattleOptionCtrl" then
return
end
local nSelect = self.nSelectIdx ~= 0 and self.nSelectIdx or 3
GamepadUIManager.SetSelectedUI(self._mapNode.btnChoose[nSelect].gameObject)
self:SelectChoose()
end
function StarTowerFastBattleOptionCtrl:SelectChoose()
local nUIType = GamepadUIManager.GetCurUIType()
if nUIType ~= AllEnum.GamepadUIType.Other and nUIType ~= AllEnum.GamepadUIType.Mouse then
if self.nSelectIdx ~= 0 then
self._mapNode.Select[self.nSelectIdx]:SetActive(true)
GamepadUIManager.SetSelectedUI(self._mapNode.btnChoose[self.nSelectIdx].gameObject)
end
else
for k, v in ipairs(self._mapNode.btnChoose) do
self._mapNode.Select[k]:SetActive(false)
end
end
end
return StarTowerFastBattleOptionCtrl
@@ -0,0 +1,25 @@
local StarTowerFastBattleOptionPanel = class("StarTowerFastBattleOptionPanel", BasePanel)
StarTowerFastBattleOptionPanel._bIsMainPanel = false
StarTowerFastBattleOptionPanel._tbDefine = {
{
sPrefabPath = "StarTowerFastBattle/StarTowerFastBattleOptionPanel.prefab",
sCtrlName = "Game.UI.StarTowerFastBattle.StarTowerFastBattleOptionCtrl"
}
}
function StarTowerFastBattleOptionPanel:Awake()
self.bShop = self:GetPanelParam()[1]
self.bMachine = self:GetPanelParam()[2]
self.nMachineCount = self:GetPanelParam()[3]
self.nCoinCount = self:GetPanelParam()[4]
self.closeCallback = self:GetPanelParam()[5]
self.nDiscount = self:GetPanelParam()[6]
self.bFirstFree = self:GetPanelParam()[7]
self.bLastFloor = self:GetPanelParam()[8]
end
function StarTowerFastBattleOptionPanel:OnEnable()
end
function StarTowerFastBattleOptionPanel:OnDisable()
end
function StarTowerFastBattleOptionPanel:OnDestroy()
end
return StarTowerFastBattleOptionPanel
@@ -0,0 +1,117 @@
local StarTowerFastBattlePanel = class("StarTowerFastBattlePanel", BasePanel)
local GamepadUIManager = require("GameCore.Module.GamepadUIManager")
StarTowerFastBattlePanel._tbDefine = {
{
sPrefabPath = "StarTowerFastBattle/StarTowerFastBattlePanel.prefab",
sCtrlName = "Game.UI.StarTowerFastBattle.StarTowerFastBattleCtrl"
},
{
sPrefabPath = "StarTower/PotentialSelectPanel.prefab",
sCtrlName = "Game.UI.StarTower.Potential.PotentialSelectCtrl"
},
{
sPrefabPath = "StarTower/PotentialLevelUpPanel.prefab",
sCtrlName = "Game.UI.StarTower.Potential.PotentialLevelUpCtrl"
},
{
sPrefabPath = "StarTower/FateCardSelectPanel.prefab",
sCtrlName = "Game.UI.StarTower.FateCard.FateCardSelectCtrl"
},
{
sPrefabPath = "StarTower/DiscSkillActivePanel.prefab",
sCtrlName = "Game.UI.StarTower.DiscTips.DiscSkillActiveCtrl"
},
{
sPrefabPath = "StarTower/StarTowerNotePanel.prefab",
sCtrlName = "Game.UI.StarTower.StarTowerNoteCtrl"
},
{
sPrefabPath = "StarTower/StarTowerDepotPanel.prefab",
sCtrlName = "Game.UI.StarTower.Depot.StarTowerDepotCtrl"
}
}
function StarTowerFastBattlePanel:Awake()
self.trUIRoot = GameObject.Find("---- UI ----").transform
local tbStarTowerInfo = self:GetPanelParam()[1]
local luaClass = require("Game.Adventure.StarTower.StarTowerSweepData")
self.LevelData = luaClass.new(tbStarTowerInfo.Meta.Id)
self.LevelData:Init(tbStarTowerInfo.Meta, tbStarTowerInfo.Room, tbStarTowerInfo.Bag)
EventManager.Hit("SetStarTowerSweepData", self.LevelData)
self.tbTeam = self.LevelData.tbTeam
self.tbDisc = self.LevelData.tbDisc
self.mapCharData = self.LevelData.mapCharData
self.mapDiscData = self.LevelData.mapDiscData
self.mapPotentialAddLevel = self.LevelData.mapPotentialAddLevel
self.nStarTowerId = self.LevelData.nTowerId
self.tbShowNote = {}
local mapCfg = ConfigTable.GetData("StarTower", self.nStarTowerId)
if mapCfg ~= nil then
local nDropGroup = mapCfg.SubNoteSkillDropGroupId
local tbNoteDrop = CacheTable.GetData("_SubNoteSkillDropGroup", nDropGroup)
if tbNoteDrop ~= nil then
for _, v in ipairs(tbNoteDrop) do
table.insert(self.tbShowNote, v.SubNoteSkillId)
end
end
end
table.sort(self.tbShowNote, function(a, b)
return a < b
end)
GamepadUIManager.EnterAdventure(true)
end
function StarTowerFastBattlePanel:SetTop(goCanvas)
local nTopLayer = 0
if nil ~= self.trUIRoot then
local nChildCount = self.trUIRoot.childCount
local trChild
for i = 1, nChildCount do
trChild = self.trUIRoot:GetChild(i - 1)
nTopLayer = math.max(nTopLayer, NovaAPI.GetCanvasSortingOrder(trChild:GetComponent("Canvas")))
end
end
if 0 < nTopLayer then
NovaAPI.SetCanvasSortingOrder(goCanvas, nTopLayer + 1)
end
end
function StarTowerFastBattlePanel:CheckMainChar(nCharId)
if self.tbTeam ~= nil then
for k, v in ipairs(self.tbTeam) do
if v == nCharId then
return k == 1
end
end
end
return false
end
function StarTowerFastBattlePanel:GetSkillLevel(nCharId)
local mapChar = self.mapCharData[nCharId]
local tbList = {}
tbList[GameEnum.skillSlotType.NORMAL] = mapChar and mapChar.tbSkillLvs[1] or 1
tbList[GameEnum.skillSlotType.B] = mapChar and mapChar.tbSkillLvs[2] or 1
tbList[GameEnum.skillSlotType.C] = mapChar and mapChar.tbSkillLvs[3] or 1
tbList[GameEnum.skillSlotType.D] = mapChar and mapChar.tbSkillLvs[4] or 1
return tbList
end
function StarTowerFastBattlePanel:OnEnable()
PlayerData.State:SetStarTowerSweepState(true)
local wait = function()
coroutine.yield(CS.UnityEngine.WaitForEndOfFrame())
EventManager.Hit(EventId.ClosePanel, PanelId.MainlineFormation)
EventManager.Hit(EventId.ClosePanel, PanelId.MainlineFormationDisc)
EventManager.Hit(EventId.ClosePanel, PanelId.RegionBossFormation)
end
cs_coroutine.start(wait)
end
function StarTowerFastBattlePanel:OnDisable()
PlayerData.State:SetStarTowerSweepState(false)
GamepadUIManager.QuitAdventure()
end
function StarTowerFastBattlePanel:OnDestroy()
self.LevelData:UnBindEvent()
EventManager.Hit("SetStarTowerSweepData")
end
function StarTowerFastBattlePanel:OnRelease()
end
function StarTowerFastBattlePanel:OnAfterEnter()
end
return StarTowerFastBattlePanel