Beispiel #1
0
    public override void OnInspectorGUI()
    {
        EditorGUI.BeginChangeCheck();
        GUILayout.Label("Map settings");
        wfc.Size     = EditorGUILayout.Vector3IntField("Map size", wfc.Size);
        wfc.SlotSize = EditorGUILayout.IntField("Slot size", wfc.SlotSize);


        EditorGUILayout.BeginFoldoutHeaderGroup(true, "Up");
        p_UpConnectors.arraySize = EditorGUILayout.IntField("size", p_UpConnectors.arraySize);
        for (int i = 0; i < p_UpConnectors.arraySize; i++)
        {
            EditorGUILayout.PropertyField(p_UpConnectors.GetArrayElementAtIndex(i), new GUIContent("connector"));
        }
        EditorGUILayout.EndFoldoutHeaderGroup();
        EditorGUILayout.BeginFoldoutHeaderGroup(true, "Down");
        p_DownConnectors.arraySize = EditorGUILayout.IntField("Down size", p_DownConnectors.arraySize);
        for (int i = 0; i < p_DownConnectors.arraySize; i++)
        {
            EditorGUILayout.PropertyField(p_DownConnectors.GetArrayElementAtIndex(i), new GUIContent("connector"));
        }
        EditorGUILayout.EndFoldoutHeaderGroup();
        EditorGUILayout.BeginFoldoutHeaderGroup(true, "Horizontal");
        p_HorizontalConnectors.arraySize = EditorGUILayout.IntField("Down size", p_HorizontalConnectors.arraySize);
        for (int i = 0; i < p_HorizontalConnectors.arraySize; i++)
        {
            EditorGUILayout.PropertyField(p_HorizontalConnectors.GetArrayElementAtIndex(i), new GUIContent("connector"));
        }
        EditorGUILayout.EndFoldoutHeaderGroup();

        GUILayout.Label("Prototypes");
        wfc.SceneLoader = (GameObject)EditorGUILayout.ObjectField("Prototypes", wfc.SceneLoader, typeof(GameObject), false);
        if (GUILayout.Button("Reload Prototypes"))
        {
            LoadPrototypes();
        }

        if (GUILayout.Button("Generate map"))
        {
            Debug.Log("Removing children");
            wfc.ClearChildren();
            Debug.Log("Start generate map");
            wfc.StartGeneration();
        }

        if (EditorGUI.EndChangeCheck())
        {
            serializedObject.ApplyModifiedProperties();
        }
    }