2 using System.Collections.Immutable;
3 using System.Reflection;
8 [RequiredByCorePackage]
10 sealed
class SoundsFile : GenericPrefabFile<SoundPrefab>
14 protected override PrefabCollection<SoundPrefab> Prefabs => SoundPrefab.Prefabs;
16 protected override SoundPrefab CreatePrefab(ContentXElement element)
18 var elemName = element.NameAsIdentifier();
19 if (SoundPrefab.TagToDerivedPrefab.ContainsKey(elemName))
21 return Activator.CreateInstance(SoundPrefab.TagToDerivedPrefab[elemName],
new object[] { element, this }) as SoundPrefab;
23 return new SoundPrefab(element,
this);
26 protected override bool MatchesPlural(Identifier identifier) => identifier ==
"sounds";
28 protected override bool MatchesSingular(Identifier identifier) => !MatchesPlural(identifier);
readonly ContentPackage ContentPackage
sealed override Md5Hash CalculateHash()
static readonly Md5Hash Blank
SoundsFile(ContentPackage contentPackage, ContentPath path)