private static ResourceType DetermineResourceTypeByCompilerIdentifier(SpecialDependencies.SpecialDependency input)
{
var identifier = input.CompilerIdentifier;
if (identifier.StartsWith("Compile", StringComparison.Ordinal))
{
identifier = identifier.Remove(0, "Compile".Length);
}
// Special mappings and otherwise different identifiers
switch (identifier)
{
case "Psf": return ResourceType.ParticleSnapshot;
case "AnimGroup": return ResourceType.AnimationGroup;
case "VPhysXData": return ResourceType.PhysicsCollisionMesh;
case "Font": return ResourceType.BitmapFont;
case "RenderMesh": return ResourceType.Mesh;
case "Panorama":
switch (input.String)
{
case "Panorama Style Compiler Version": return ResourceType.PanoramaStyle;
case "Panorama Script Compiler Version": return ResourceType.PanoramaScript;
case "Panorama Layout Compiler Version": return ResourceType.PanoramaLayout;
case "Panorama Dynamic Images Compiler Version": return ResourceType.PanoramaDynamicImages;
}
return ResourceType.Panorama;
}
ResourceType resourceType;
if (Enum.TryParse(identifier, false, out resourceType))
{
return resourceType;
}
return ResourceType.Unknown;
}