Adds logic to up-convert non-embedded terrain materials and materials to have embedded definitions

This commit is contained in:
JeffR 2022-03-31 00:40:24 -05:00
parent 85bb4cbff3
commit c2857efe28
2 changed files with 38 additions and 2 deletions

View file

@ -778,7 +778,26 @@ function TerrainMaterialDlg::saveDirtyMaterial( %this, %materialAssetId )
%fxMat.customImpactSound = getField(%impactSound, 1);
//Save the material asset
%assetDef.saveAsset();
%didEmbed = false;
%matScriptFile = %assetDef.getScriptPath();
if(%matScriptFile !$= "")
{
//lets up-convert to embedded
%assetDef.add(%mat);
%assetDef.add(%fxMat);
%assetDef.scriptFile = "";
%didEmbed = true;
}
//write it out
if(%assetDef.saveAsset())
{
if(%didEmbed)
{
fileDelete(%matScriptFile); //cleanup the old definition file
}
}
%this.schedule(32, "cleanupDirtyMaterial");
}