private void SetupLoaders()
{
// Get the list where the Texture DatabaseLoader are stored
Type gdType = typeof(GameDatabase);
List<DatabaseLoader<GameDatabase.TextureInfo>> textureLoaders =
(from fld in gdType.GetFields(BindingFlags.Instance | BindingFlags.NonPublic)
where fld.FieldType == typeof(List<DatabaseLoader<GameDatabase.TextureInfo>>)
select (List<DatabaseLoader<GameDatabase.TextureInfo>>)fld.GetValue(GameDatabase.Instance)).FirstOrDefault();
foreach (var textureLoader in textureLoaders)
{
if (textureLoader.GetType().Name != "DatabaseLoaderTexture_ATM")
{
Log("Disabling " + textureLoader.GetType().Name);
textureLoader.extensions.RemoveAll(i => DatabaseLoaderTexture_ATM.ExtensionList.Contains(i));
Log(textureLoader.GetType().Name + " now has extensions: " + String.Join(", ", textureLoader.extensions.ToArray()));
}
}
}