Переглянути джерело

Added multi type filter support to AB select mode
Adjusted logic for World Editor's Assets tab to filter by ShapeAssets and Datablocks
Improved ShapeEditor's Assets tab filter and select logic
Added ability for AB search to work on creator section
Fixed icon display of AB on preview cards when in list mode

JeffR 3 роки тому
батько
коміт
81eec1dcb4

+ 1 - 1
Templates/BaseGame/game/tools/assetBrowser/guis/assetBrowser.gui

@@ -771,7 +771,7 @@ $guiContent = new GuiControl(AssetBrowser) {
                   position = "0 0";
                   extent = "23 23";
                   minExtent = "8 2";
-                  horizSizing = "left";
+                  horizSizing = "right";
                   vertSizing = "bottom";
                   profile = "ToolsGuiSolidDefaultProfile";
                   visible = "1";

+ 27 - 2
Templates/BaseGame/game/tools/assetBrowser/scripts/assetBrowser.tscript

@@ -527,6 +527,7 @@ function AssetBrowser::buildAssetPreview( %this, %asset, %moduleName )
       %previewButton.iconLocation = "Left";
       %previewButton.textLocation = "Right";
       %previewButton.setextent(120,20);
+      %previewButton.buttonMargin = "0 0";
       
       AssetBrowser.previewListMode = true;
    }
@@ -1519,7 +1520,11 @@ function AssetBrowser::doRebuildAssetArray(%this)
          {
             if(AssetBrowser.assetTypeFilter !$= "")
             {
-               if(AssetBrowser.assetTypeFilter $= %assetType)
+               %filtersCount = getWordCount(AssetBrowser.assetTypeFilter);
+               for(%fltrIdx = 0; %fltrIdx < %filtersCount; %fltrIdx++)
+               {
+                  %fltr = getWord(AssetBrowser.assetTypeFilter, %fltrIdx);
+                  if(%fltr $= %assetType)
                {
                   $AssetBrowser::AssetArray.add( %moduleName, %assetId );
                   
@@ -1527,6 +1532,7 @@ function AssetBrowser::doRebuildAssetArray(%this)
                      %finalAssetCount++;
                }
             }
+            }
             else
             {
                //got it.	
@@ -1574,7 +1580,22 @@ function AssetBrowser::doRebuildAssetArray(%this)
    }
 
    //Add Non-Asset Scripted Objects. Datablock, etc based
-   if(AssetBrowser.assetTypeFilter $= "" && %breadcrumbPath !$= "" && isDirectory(%breadcrumbPath))
+   %hasDBFilter = true;
+   if(AssetBrowser.assetTypeFilter !$= "")
+   {
+      %hasDBFilter = false;
+      %filterCount = getWordCount(AssetBrowser.assetTypeFilter);
+      for(%fltrIdx = 0; %fltrIdx < %filterCount; %fltrIdx++)
+      {
+         %fltr = getWord(AssetBrowser.assetTypeFilter, %fltrIdx);
+         if(%fltr $= "Datablock" || %fltr $= "Datablocks")
+         {
+            %hasDBFilter = true;
+            break;  
+         }
+      }
+   }
+   if(%hasDBFilter && %breadcrumbPath !$= "" && isDirectory(%breadcrumbPath))
    {
       %category = getWord( %breadcrumbPath, 1 );                  
       %dataGroup = "DataBlockGroup";
@@ -1792,6 +1813,10 @@ function AssetBrowser::doRebuildAssetArray(%this)
             %name = %creatorObj.val[1];
             %func = %creatorObj.val[2];
             
+               %searchActive = AssetSearchTerms.count() != 0;
+               if(%searchActive && !matchesSearch(%name, "Creator"))
+                  continue;
+                     
             $AssetBrowser::AssetArray.add( %name, "Creator" TAB %creatorObj );
          }               
       }   

+ 8 - 3
Templates/BaseGame/game/tools/shapeEditor/scripts/shapeEditor.ed.tscript

@@ -3224,9 +3224,14 @@ function showShapeEditorPreview()
 //
 function ShapeEditorTabbook::onTabSelected( %this )
 {
-   if( EditorTreeTabBook.getSelectedPage() == 1)
+   if( ShapeEditorTabbook.getSelectedPage() == 1)
    {
-      AssetBrowser.toggleDialog();
-      AssetBrowser.toggleAssetTypeFilter(12); //show only shapeAssets
+      AssetBrowser.showDialog("ShapeAsset", "openShapeInShapeEditor");
    }
+}
+
+function openShapeInShapeEditor(%shapeAssetId)
+{
+   %assetDef = AssetDatabase.acquireAsset(%shapeAssetId);
+   AssetBrowser.editShapeAsset(%assetDef);  
 }

+ 1 - 4
Templates/BaseGame/game/tools/worldEditor/scripts/EditorGui.ed.tscript

@@ -1932,11 +1932,8 @@ function EditorTreeTabBook::onTabSelected( %this )
    }
    else
    {
-      AssetBrowser.toggleDialog();
+      AssetBrowser.showDialog("ShapeAsset Datablock");
       EditorTreeTabBook.selectPage(0);
-      EWTreeWindow-->DeleteSelection.visible = false;
-      EWTreeWindow-->LockSelection.visible = false;
-      EWTreeWindow-->AddSimGroup.visible = false;
    }
 }