Beispiel #1
0
    /// <summary>
    /// Assign variables, and hookup to API.
    /// </summary>
    private void Start()
    {
        TimeManager.Instance.EveryFrame += Instance_EveryFrame;

        // Root should already exist just grab child
        columnRootObjects = new List <GameObject>();
        foreach (Transform child in transform)
        {
            columnRootObjects.Add(child.gameObject);
        }

        // Load Settings
        allGroups = new Dictionary <PerformanceGroup, BasePerformanceHUDElement[]>();

        PerformanceGroup[] groups = PrototypeManager.PerformanceHUD.Values.SelectMany(x => x.groups).ToArray();

        allGroups.Add(new PerformanceGroup("none", new string[0], new Parameter[0], true), new BasePerformanceHUDElement[0]);
        List <BasePerformanceHUDElement> elements = new List <BasePerformanceHUDElement>();

        // Convert the dictionary of specialised elements to a more generalised format
        for (int i = 0; i < groups.Length; i++)
        {
            for (int j = 0; j < groups[i].elementData.Length; j++)
            {
                if (FunctionsManager.PerformanceHUD.HasFunction("Get" + groups[i].elementData[j]))
                {
                    BasePerformanceHUDElement element = FunctionsManager.PerformanceHUD.Call("Get" + groups[i].elementData[j]).ToObject <BasePerformanceHUDElement>();
                    element.parameterData = groups[i].parameterData[j];
                    element.InitializeLUA();
                    elements.Add(element);
                }
                else
                {
                    Debug.LogWarning("Get" + groups[i] + groups[i].elementData[j] + "() Doesn't exist");
                }
            }

            allGroups.Add(groups[i], elements.ToArray());
            elements.Clear();
        }

        // Setup UI
        DirtyUI();
    }
    /// <summary>
    /// Assign variables, and hookup to API.
    /// </summary>
    private void Start()
    {
        TimeManager.Instance.EveryFrame += Instance_EveryFrame;

        // Root should already exist just grab child
        columnRootObjects = new List <GameObject>();
        foreach (Transform child in transform)
        {
            columnRootObjects.Add(child.gameObject);
        }

        // Load Settings
        allGroups = new Dictionary <PerformanceGroup, BasePerformanceHUDElement[]>();

        PerformanceGroup[] groups = PrototypeManager.PerformanceHUD.Values.SelectMany(x => x.groups).ToArray();

        allGroups.Add(new PerformanceGroup("none", new string[0], true), new BasePerformanceHUDElement[0]);

        for (int i = 0; i < groups.Length; i++)
        {
            BasePerformanceHUDElement[] elements = new BasePerformanceHUDElement[groups[i].elementNames.Length];

            for (int j = 0; j < groups[i].elementNames.Length; j++)
            {
                if (FunctionsManager.PerformanceHUD.HasFunction("Get" + groups[i].elementNames[j]))
                {
                    elements[j] = FunctionsManager.PerformanceHUD.Call("Get" + groups[i].elementNames[j]).ToObject <BasePerformanceHUDElement>();
                }
                else
                {
                    Debug.LogWarning("Get" + groups[i].elementNames[j] + "() Doesn't exist");
                }
            }

            allGroups.Add(groups[i], elements);
        }

        // Setup UI
        DirtyUI();
    }