load maps only from MapFolders defined separately in mod.yaml

This commit is contained in:
Matthias Mailänder
2013-10-27 09:22:10 +01:00
parent c87c4cfda2
commit 74692bde66
6 changed files with 16 additions and 7 deletions

View File

@@ -19,7 +19,7 @@ namespace OpenRA.FileFormats
public class Manifest
{
public readonly string[]
Mods, Folders, Rules, ServerTraits,
Mods, Folders, MapFolders, Rules, ServerTraits,
Sequences, VoxelSequences, Cursors, Chrome, Assemblies, ChromeLayout,
Weapons, Voices, Notifications, Music, Movies, Translations, TileSets,
ChromeMetrics, PackageContents;
@@ -39,6 +39,7 @@ namespace OpenRA.FileFormats
// TODO: Use fieldloader
Folders = YamlList(yaml, "Folders");
MapFolders = YamlList(yaml, "MapFolders");
Packages = yaml["Packages"].NodesDict.ToDictionary(x => x.Key, x => x.Value.Value);
Rules = YamlList(yaml, "Rules");
ServerTraits = YamlList(yaml, "ServerTraits");

View File

@@ -149,7 +149,7 @@ namespace OpenRA
Dictionary<string, Map> FindMaps()
{
var paths = Manifest.Folders.SelectMany(f => FindMapsIn(f));
var paths = Manifest.MapFolders.SelectMany(f => FindMapsIn(f));
var ret = new Dictionary<string, Map>();

View File

@@ -8,9 +8,11 @@ Folders:
.
./mods/cnc
./mods/cnc/bits
./mods/cnc/maps
./mods/cnc/uibits
~^/Content/cnc
MapFolders:
./mods/cnc/maps
~^/maps/cnc
Packages:

View File

@@ -8,12 +8,14 @@ Folders:
.
./mods/d2k
./mods/d2k/bits
./mods/d2k/maps
./mods/d2k/uibits
./mods/ra/uibits
~^/Content/d2k
~^/Content/d2k/GAMESFX
~^/Content/d2k/Music
MapFolders:
./mods/d2k/maps
~^/maps/d2k
Packages:

View File

@@ -9,9 +9,11 @@ Folders:
./mods/ra
./mods/ra/bits
./mods/ra/bits/desert
./mods/ra/maps
./mods/ra/uibits
~^/Content/ra
MapFolders:
./mods/ra/maps
~^/maps/ra
Packages:

View File

@@ -9,13 +9,15 @@ Folders:
# Tiberian Sun
./mods/ts
./mods/ts/bits
./mods/ts/maps
./mods/ts/uibits
~^/Content/ts
~^/maps/ts
# Red Alert
./mods/ra/uibits
MapFolders:
./mods/ts/maps
~^/maps/ts
Packages:
# Red Alert
interior.mix