少年修仙传客户端代码仓库
client_Wu Xijin
2018-08-27 48c963425709dcd449fa5bc98049d2393dfd56ef
UI/Common/WindowConfig.cs
@@ -8,6 +8,8 @@
{
    public WindowTable[] windows;
    public Dictionary<string, List<string>> parentChildrenTable = new Dictionary<string, List<string>>();
    public List<string> childWindows = new List<string>();
    static WindowConfig config;
    public static WindowConfig Get()
@@ -15,11 +17,21 @@
        if (config == null)
        {
            config = Resources.Load<WindowConfig>("ScriptableObject/Config/WindowConfig");
            for (int i = 0; i < config.windows.Length; i++)
            {
                var table = config.windows[i];
                var children = config.parentChildrenTable[table.parent] = new List<string>();
                for (int j = 0; j < table.orderTables.Length; j++)
                {
                    children.Add(table.orderTables[j].window);
                }
                config.childWindows.AddRange(children);
            }
        }
        return config;
    }
    public bool FindChildWindow(string _parent, int _order, out string _child)
    {
@@ -63,6 +75,23 @@
        return false;
    }
    public List<string> FindChildWindows(string _parent)
    {
        if (parentChildrenTable.ContainsKey(_parent))
        {
            return parentChildrenTable[_parent];
        }
        else
        {
            return null;
        }
    }
    public bool IsChildWindow(string _name)
    {
        return childWindows.Contains(_name);
    }
    [Serializable]
    public struct WindowTable
    {