From 87bd7bbeae98d0b3874a5aa2366d9086d04f91c4 Mon Sep 17 00:00:00 2001 From: Areloch Date: Sun, 21 Feb 2021 02:16:34 -0600 Subject: [PATCH] Fixes script presentation logic in the AB so it only shows scripts that isn't an asset file for an asset. Also fixes a reference to the Inspector for refreshing purposes. Adds a pop call to ensure AB is in focus when shown --- .../assetBrowser/scripts/assetBrowser.tscript | 27 ++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/Templates/BaseGame/game/tools/assetBrowser/scripts/assetBrowser.tscript b/Templates/BaseGame/game/tools/assetBrowser/scripts/assetBrowser.tscript index 33f67ddf7..3831adf2e 100644 --- a/Templates/BaseGame/game/tools/assetBrowser/scripts/assetBrowser.tscript +++ b/Templates/BaseGame/game/tools/assetBrowser/scripts/assetBrowser.tscript @@ -256,7 +256,7 @@ function AssetBrowser::selectAsset( %this, %asset ) %this.changeAsset(); } - EWInspectorWindow.refresh(); + Inspector.refresh(); AssetBrowser.hideDialog(); } @@ -270,6 +270,7 @@ function AssetBrowser::showDialog( %this, %AssetTypeFilter, %selectCallback, %ta AssetBrowser.fieldTargetObject = %targetObj; AssetBrowser.fieldTargetName = %fieldName; + Canvas.popDialog(AssetBrowser); Canvas.pushDialog(AssetBrowser); AssetBrowser.setVisible(1); AssetBrowserWindow.setVisible(1); @@ -1701,6 +1702,30 @@ function AssetBrowser::doRebuildAssetArray(%this) %tscriptPattern = %breadcrumbPath @ "/" @ "*.tscript"; for (%fullScriptPath = findFirstFile(%tscriptPattern); %fullScriptPath !$= ""; %fullScriptPath = findNextFile(%tscriptPattern)) { + //If it's associated to an asset, we'll want to do extra checks + %assetQuery = new AssetQuery(); + %foundAssets = AssetDatabase.findAssetLooseFile(%assetQuery, %fullScriptPath); + + if(%foundAssets != 0) + { + %doSkip = false; + %count = %assetQuery.getCount(); + for(%i=0; %i < %count; %i++) + { + %assetId = %assetQuery.getAsset(%i); + %foundAssetType = AssetDatabase.getAssetType(%assetId); + + if(%foundAssetType !$= "ScriptAsset" && %foundAssetType !$= "GUIAsset") + { + %doSkip = true; + break; + } + } + + if(%doSkip) + continue; + } + %tscriptPath = filePath(%fullScriptPath); %tscriptName = fileName(%fullScriptPath);