Exemplo n.º 1
0
    void LoadingRooms()
    {
        GetRoomsFromDatabase();
        EditorGUILayout.LabelField("Number of rooms: ", rooms.Count.ToString());
        if (rooms.Count == 0)
        {
            GUILayout.Label("There are no rooms in the database!");
            if (GUILayout.Button("Back"))
            {
                states = States.noRoom;
            }
            return;
        }
        EditorGUILayout.LabelField("Previewing: ", (loadID + 1).ToString());
        EditorGUILayout.LabelField("Name: ", rooms[loadID].name);
        GUILayout.Label(AssetPreview.GetAssetPreview(rooms[loadID]), EditorStyles.centeredGreyMiniLabel);

        if (GUILayout.Button("Load"))
        {
            RM.LoadRoom((GameObject)rooms[loadID]);
            roomName = rooms[loadID].name;
        }
        if (GUILayout.Button("Remove") && EditorUtility.DisplayDialog("DELETE?", "Are you sure you want to delete this room? CANNOT be undone!", "YES!", "Cancel"))
        {
            FileUtil.DeleteFileOrDirectory(pathName + rooms[loadID].name + ".prefab");
            EditorUtility.UnloadUnusedAssetsImmediate();
            AssetDatabase.Refresh();
            GetRoomsFromDatabase();
            if (loadID >= rooms.Count)
            {
                loadID = rooms.Count - 1;
            }
        }
        EditorGUILayout.BeginHorizontal();
        if (GUILayout.Button("Prev"))
        {
            loadID--;
            if (loadID < 0)
            {
                loadID = rooms.Count - 1;
            }
        }
        if (GUILayout.Button("Next"))
        {
            loadID++;
            if (loadID >= rooms.Count)
            {
                loadID = 0;
            }
        }
        EditorGUILayout.EndHorizontal();
        if (GUILayout.Button("Back"))
        {
            states = States.noRoom;
        }
    }