예제 #1
0
    public override void OnInspectorGUI()
    {
        serializedObject.Update();

        string[] elementIdentifierMaps = AssetDatabase.FindAssets("t:ElementIdentifierMap");
        if (elementIdentifierMaps.Length <= 0)
        {
            GUILayout.Label("Couldn't find an element identifier map, here's the default inspector");
            DrawDefaultInspector();
            return;
        }

        if (elementIdentifierMaps.Length > 1)
        {
            GUILayout.Label("More than one element identifier map, using the first one");
        }

        GlyphMap             glyphMap             = (GlyphMap)target;
        ElementIdentifierMap elementIdentifierMap = AssetDatabase.LoadAssetAtPath <ElementIdentifierMap>(AssetDatabase.GUIDToAssetPath(elementIdentifierMaps[0]));

        ElementIdentifierMap.ControllerMapping controllerMapping = elementIdentifierMap.GetMappingForGuid(glyphMap.controllerGuid);

        if (controllerMapping == null)
        {
            GUILayout.Label("GUID doesn't match any known controllers, here's the default inspector");
            DrawDefaultInspector();
            return;
        }

        DrawControllerMapping(controllerMapping);

        serializedObject.ApplyModifiedProperties();
    }
예제 #2
0
    public override void OnInspectorGUI()
    {
        ElementIdentifierMap elementIdentifierMap = (ElementIdentifierMap)target;

        DrawDefaultInspector();

        if (GUILayout.Button("Reload from file"))
        {
            elementIdentifierMap.LoadMap();
        }
    }