Esempio n. 1
0
    public override void OnInspectorGUI()
    {
        EditorGUILayout.BeginVertical();

        //
        EditorGUILayout.Space();
        EditorGUILayout.LabelField("Map Size:", map.mapSize.x + "x" + map.mapSize.y);

        //
        EditorGUILayout.Space();
        EditorGUILayout.LabelField(
            "Map Items:",
            EditorStyle.guiMessageStyle
            );

        //
        var oldItems = map.mapItems;

        itemList.DoLayoutList();
        serializedObject.ApplyModifiedProperties();
        if (oldItems != map.mapItems)
        {
            LoadGemItemSpritesAsCache();
            UpdateCalculations();
            NewBrush();
        }

        if (GUILayout.Button("Save Map Items"))
        {
            FileAccessor.WriteData(map.SaveItems(), "Save Gem Items", ReadPostName() + "_items.txt", "txt");
        }
        if (GUILayout.Button("Load Map Items"))
        {
            map.LoadItems(FileAccessor.ReadTextFromFile("Load Gem Items", "txt"));
        }

        //
        if (map.mapItems.Count == 0)
        {
            EditorGUILayout.HelpBox(
                "You have not selected a texture 2D yet.",
                MessageType.Warning
                );
        }
        else
        {
            EditorGUILayout.Space();
            EditorGUILayout.Space();
            EditorGUILayout.LabelField("Gem Size:", map.itemSize.x + "x" + map.itemSize.y);
            EditorGUILayout.LabelField("Grid Size In Units:", map.gridSize.x + "x" + map.gridSize.y);
            EditorGUILayout.LabelField("Pixels To Units:", map.pixelsToUnits.ToString());
            UpdateBrush(map.currentItemBrush);
        }

        EditorGUILayout.EndVertical();
    }