Adds functions to get the full path for level and shape asset files

Updated choose level UI to use getLevelPath function so it works again
Added a check for mis.dso for choose level UI as well in case it was compiled
Updated open asset in shape editor logic to use getShapeFile so it works again
Fixed on-exit crash after drag-n-drop importing of assets into the AB by properly using the import config object as a pointered object
Added sanity check when inspecting a TSStatic, if there isn't a materials inspector group for whatever reason to prevent a crash
Added filter logic so if in select mode for a specific asset type, it won't show datablocks, prefabs or other loosefiles
Removed unneeded setting of AB's current address path when creating a new terrain material asset
Added logic for forcing field validation in the create a new asset window. This fixes a problem where if you'd typed in a field but didn't hit enter and then immediately hit the done button, the typed string wasn't used.
This commit is contained in:
Areloch 2020-08-12 13:11:13 -05:00
parent 3108a08650
commit 69bfbb0978
14 changed files with 221 additions and 153 deletions

View file

@ -200,6 +200,8 @@ bool TerrainAsset::loadTerrain()
mTerrMaterialAssets.clear();
mTerrMaterialAssetIds.clear();
StringTableEntry terrainMatAssetType = StringTable->insert("TerrainMaterialAsset");
//First, load any material, animation, etc assets we may be referencing in our asset
// Find any asset dependencies.
AssetManager::typeAssetDependsOnHash::Iterator assetDependenciesItr = mpOwningAssetManager->getDependedOnAssets()->find(mpAssetDefinition->mAssetId);
@ -212,12 +214,13 @@ bool TerrainAsset::loadTerrain()
{
StringTableEntry assetType = mpOwningAssetManager->getAssetType(assetDependenciesItr->value);
if (assetType == StringTable->insert("TerrainMaterialAsset"))
if (assetType == terrainMatAssetType)
{
mTerrMaterialAssetIds.push_front(assetDependenciesItr->value);
StringTableEntry assetId = StringTable->insert(assetDependenciesItr->value);
mTerrMaterialAssetIds.push_front(assetId);
//Force the asset to become initialized if it hasn't been already
AssetPtr<TerrainMaterialAsset> matAsset = assetDependenciesItr->value;
AssetPtr<TerrainMaterialAsset> matAsset = assetId;
mTerrMaterialAssets.push_front(matAsset);
}