Ejemplo n.º 1
0
    public void OnEnable()
    {
        bool loadFromTemp = InputBuildingUtility.IsTempUpToDate();

        inputDefaults = (inputDefaults == null || inputDefaults.Count == 0)? InputBuildingUtility.ImportDefaultInputs(loadFromTemp).ToList():inputDefaults.Where(x => x != null).ToList();
        //string[] assetGUIDS = AssetDatabase.FindAssets("t: InputControllerDefault");
        //for(int i = 0; i < assetGUIDS.Length; i++)
        //{
        //    InputControllerDefault item = AssetDatabase.LoadAssetAtPath<InputControllerDefault>(AssetDatabase.GUIDToAssetPath(assetGUIDS[i]));
        //    if (item != null)
        //    {
        //        inputDefaults.Add(item);
        //    }
        //}
        idGUIS = new Dictionary <InputControllerDefault, DefaultsEditor>();
        for (int i = 0; i < inputDefaults.Count; i++)
        {
            idGUIS.Add(inputDefaults[i], new DefaultsEditor(inputDefaults[i]));
            idGUIS[inputDefaults[i]].OnEnable();
        }
        currentID = inputDefaults.Count > 0? inputDefaults[0]:null;
        Undo.undoRedoPerformed += OnUndo;
        UnitySave.OnSaveAssets += SaveSettings;
    }
Ejemplo n.º 2
0
    private void RuntimePlatformTabGUI()
    {
        float width = position.width;

        horizontalScrollPost = EditorGUILayout.BeginScrollView(horizontalScrollPost, GUILayout.Height(EditorGUIUtility.singleLineHeight * 2.5f));
        GUILayoutOption[] buttonTabGUILO = new GUILayoutOption[] { GUILayout.Width(width / 4), GUILayout.MinWidth(120) };
        EditorGUILayout.BeginHorizontal();

        if (GUILayout.Button("+", EditorStyles.miniButton))
        {
            EditorGUILayout.EndScrollView();
            EditorGUILayout.EndHorizontal();
            InputControllerDefault inputControllerDefault = CreateInstance <InputControllerDefault>();
            Undo.RegisterCreatedObjectUndo(inputControllerDefault, "Create Platform Default");
            inputDefaults.Insert(0, inputControllerDefault);
            ReInit();
            return;
        }

        for (int i = 0; i < inputDefaults.Count; i++)
        {
            if (inputDefaults[i] == null)
            {
                ReInit(); goto End;
            }
            EditorGUI.BeginDisabledGroup(inputDefaults[i] == currentID);
            if (GUILayout.Button(Enum.GetName(typeof(RuntimePlatform), ((InputControllerDefault)idGUIS[inputDefaults[i]].target).runtimePlatform), buttonTabGUILO))
            {
                currentID = inputDefaults[i];
            }
            EditorGUI.EndDisabledGroup();
        }
End:
        EditorGUILayout.EndScrollView();
        EditorGUILayout.EndHorizontal();
    }