public static void OpenWindow()
    {
        ImportRoomBaseWindow window = (ImportRoomBaseWindow)EditorWindow.GetWindow(typeof(ImportRoomBaseWindow));
        Texture    icon             = AssetDatabase.LoadAssetAtPath <Texture>("Assets/Sprites/Gear.png");
        GUIContent titleContent     = new GUIContent("Rooms", icon);

        window.titleContent = titleContent;
        window.Show();
    }
示例#2
0
        public override void OnInspectorGUI()
        {
            serializedObject.Update();

            EditorGUILayout.BeginHorizontal();
            EditorGUILayout.LabelField("Current Room Number");
            RoomNumber = EditorGUILayout.IntField(RoomNumber);
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.Space(5f);

            var defaultColor = GUI.backgroundColor;

            GUI.backgroundColor = Color.red;
            if (GUILayout.Button("Apply Changes", GUILayout.Height(50f)))
            {
                BuildAsssetBundles.BuildRoomAssetBundles();
            }

            EditorGUILayout.Space(5f);

            GUI.backgroundColor = Color.green;
            if (GUILayout.Button("Import", GUILayout.Height(40f)))
            {
                var rooms = GetAllRooms();

                ImportRoomBaseWindow.OpenWindow();
            }

            if (GUILayout.Button("Export", GUILayout.Height(40f)))
            {
                if (EditorUtility.DisplayDialog("Warning", "Are you sure? The RoomBase will be overlaped!", "Export", "Do Not Export"))
                {
                    Export();

                    AssetDatabase.SaveAssets();
                    AssetDatabase.Refresh();
                }
            }

            EditorGUILayout.Space(5f);

            GUI.backgroundColor = defaultColor;
            if (GUILayout.Button("Clear All"))
            {
                if (EditorUtility.DisplayDialog("Warning", "Are you sure?", "Clear", "Do Not Clear"))
                {
                    _context.ClearAll();
                }
            }

            if (GUILayout.Button("Clear Tilemaps"))
            {
                if (EditorUtility.DisplayDialog("Warning", "Are you sure?", "Clear", "Do Not Clear"))
                {
                    _context.ClearAllTilemaps();
                }
            }

            if (GUILayout.Button("Clear Objects"))
            {
                if (EditorUtility.DisplayDialog("Warning", "Are you sure?", "Clear", "Do Not Clear"))
                {
                    _context.ClearAllObjects();
                }
            }

            serializedObject.ApplyModifiedProperties();
        }