Allow content to skip certain paths in client/server resource copying

Intended so content can ignore the MapImages folder
This commit is contained in:
PJB3005
2025-07-11 18:15:10 +02:00
parent e52a6bbbf2
commit 74a318c521
3 changed files with 24 additions and 3 deletions

View File

@@ -39,7 +39,7 @@ END TEMPLATE-->
### New features
*None yet*
* `RobustClientPackaging.WriteClientResources()` and `RobustServerPackaging.WriteServerResources()` now have an overload taking in a set of things to ignore in the content resources directory.
### Bugfixes

View File

@@ -19,7 +19,19 @@ public sealed class RobustClientPackaging
AssetPass pass,
CancellationToken cancel = default)
{
var ignoreSet = ClientIgnoredResources.Union(RobustSharedPackaging.SharedIgnoredResources).ToHashSet();
await WriteClientResources(contentDir, pass, new HashSet<string>(), cancel);
}
public static async Task WriteClientResources(
string contentDir,
AssetPass pass,
IReadOnlySet<string> additionalIgnoredResources,
CancellationToken cancel = default)
{
var ignoreSet = ClientIgnoredResources
.Union(RobustSharedPackaging.SharedIgnoredResources)
.Union(additionalIgnoredResources)
.ToHashSet();
await RobustSharedPackaging.DoResourceCopy(Path.Combine(contentDir, "Resources"), pass, ignoreSet, cancel: cancel);
}

View File

@@ -15,13 +15,22 @@ public sealed class RobustServerPackaging
string contentDir,
AssetPass pass,
CancellationToken cancel = default)
{
await WriteServerResources(contentDir, pass, new HashSet<string>(), cancel);
}
public static async Task WriteServerResources(
string contentDir,
AssetPass pass,
IReadOnlySet<string> additionalIgnoredResources,
CancellationToken cancel = default)
{
var ignoreSet = ServerIgnoresResources.Union(RobustSharedPackaging.SharedIgnoredResources).ToHashSet();
await RobustSharedPackaging.DoResourceCopy(
Path.Combine(contentDir, "Resources"),
pass,
ignoreSet,
ignoreSet.Union(additionalIgnoredResources).ToHashSet(),
cancel: cancel);
await RobustSharedPackaging.DoResourceCopy(