Add new text file merge asset pass to RobustClientAssetGraph

This commit is contained in:
PJB3005
2025-07-25 15:57:47 +02:00
parent d1c6c11755
commit cd9616c87c

View File

@@ -15,6 +15,9 @@ public sealed class RobustClientAssetGraph
public AssetPassPipe PresetPasses { get; }
public AssetPassPipe Output { get; }
public AssetPassNormalizeText NormalizeText { get; }
public AssetPassMergeTextDirectories MergePrototypeDirectories { get; }
public AssetPassMergeTextDirectories MergeLocaleDirectories { get; }
// internal AssetPassPackRsis PackRsis { get; }
/// <summary>
/// Collection of all passes in this preset graph.
@@ -30,11 +33,38 @@ public sealed class RobustClientAssetGraph
PresetPasses = new AssetPassPipe { Name = "RobustClientAssetGraphPresetPasses" };
Output = new AssetPassPipe { Name = "RobustClientAssetGraphOutput", CheckDuplicates = true };
NormalizeText = new AssetPassNormalizeText { Name = "RobustClientAssetGraphNormalizeText" };
MergePrototypeDirectories = new AssetPassMergeTextDirectories(
"Prototypes",
"yml",
// Separate each merged YAML file with a document to provide proper isolation.
formatterHead: file => $"--- # BEGIN {file}",
formatterTail: file => $"# END {file}")
{
Name = "RobustClientAssetGraphMergePrototypeDirectories"
};
MergeLocaleDirectories = new AssetPassMergeTextDirectories(
"Locale",
"ftl",
formatterHead: file => $"# BEGIN {file}",
formatterTail: file => $"# END {file}")
{
Name = "RobustClientAssetGraphMergeLocaleDirectories"
};
// PackRsis = new AssetPassPackRsis
// {
// Name = "RobustClientAssetGraphPackRsis",
// };
PresetPasses.AddDependency(Input);
//PackRsis.AddDependency(PresetPasses).AddBefore(NormalizeText);
MergePrototypeDirectories.AddDependency(PresetPasses).AddBefore(NormalizeText);
MergeLocaleDirectories.AddDependency(PresetPasses).AddBefore(NormalizeText);
NormalizeText.AddDependency(PresetPasses).AddBefore(Output);
Output.AddDependency(PresetPasses);
Output.AddDependency(NormalizeText);
Output.AddDependency(MergePrototypeDirectories);
Output.AddDependency(MergeLocaleDirectories);
//Output.AddDependency(PackRsis);
AllPasses = new AssetPass[]
{
@@ -42,6 +72,9 @@ public sealed class RobustClientAssetGraph
PresetPasses,
Output,
NormalizeText,
MergePrototypeDirectories,
MergeLocaleDirectories,
// texPackRsis
};
}
}