63 lines
No EOL
1.7 KiB
Lua
63 lines
No EOL
1.7 KiB
Lua
--=================
|
|
--主界面模式入口面板
|
|
--=================
|
|
local XUiSSBMainPanelEntrance = {}
|
|
--=================
|
|
--面板
|
|
--=================
|
|
local Panel = {}
|
|
--=================
|
|
--模式入口控件列表(按模式优先级排序)
|
|
--=================
|
|
local Entrances = {}
|
|
--=================
|
|
--初始化入口
|
|
--=================
|
|
local InitEntrances = function()
|
|
if Panel.GridEntrance then
|
|
--先把模板隐藏
|
|
Panel.GridEntrance.gameObject:SetActiveEx(false)
|
|
local entranceScript = require("XUi/XUiSuperSmashBros/Main/Grids/XUiSSBMainEntranceGrid")
|
|
local modes = XDataCenter.SuperSmashBrosManager.GetAllModes()
|
|
for priority, mode in pairs(modes) do
|
|
local entranceGo = CS.UnityEngine.Object.Instantiate(Panel.GridEntrance, Panel.Transform)
|
|
Entrances[priority] = entranceScript.New(entranceGo, mode)
|
|
Entrances[priority]:Show()
|
|
end
|
|
end
|
|
end
|
|
--=================
|
|
--初始化
|
|
--=================
|
|
function XUiSSBMainPanelEntrance.Init(ui)
|
|
Panel = XTool.InitUiObjectByUi(Panel, ui.PanelEntrance)
|
|
InitEntrances()
|
|
end
|
|
--=================
|
|
--显示时
|
|
--=================
|
|
function XUiSSBMainPanelEntrance.OnEnable()
|
|
for _, entrance in pairs(Entrances) do
|
|
entrance:OnEnable()
|
|
end
|
|
end
|
|
--=================
|
|
--隐藏时
|
|
--=================
|
|
function XUiSSBMainPanelEntrance.OnDisable()
|
|
for _, entrance in pairs(Entrances) do
|
|
entrance:OnDisable()
|
|
end
|
|
end
|
|
--=================
|
|
--销毁时
|
|
--=================
|
|
function XUiSSBMainPanelEntrance.OnDestroy()
|
|
for _, entrance in pairs(Entrances) do
|
|
entrance:OnDestroy()
|
|
end
|
|
Panel = {}
|
|
Entrances = {}
|
|
end
|
|
|
|
return XUiSSBMainPanelEntrance |