diff options
Diffstat (limited to 'src/main/java/net/fabricmc/loom/LoomGradleExtension.java')
-rw-r--r-- | src/main/java/net/fabricmc/loom/LoomGradleExtension.java | 50 |
1 files changed, 49 insertions, 1 deletions
diff --git a/src/main/java/net/fabricmc/loom/LoomGradleExtension.java b/src/main/java/net/fabricmc/loom/LoomGradleExtension.java index 060a094b..85855067 100644 --- a/src/main/java/net/fabricmc/loom/LoomGradleExtension.java +++ b/src/main/java/net/fabricmc/loom/LoomGradleExtension.java @@ -42,6 +42,13 @@ import net.fabricmc.loom.configuration.LoomDependencyManager; import net.fabricmc.loom.configuration.accesswidener.AccessWidenerFile; import net.fabricmc.loom.configuration.processors.JarProcessorManager; import net.fabricmc.loom.configuration.providers.MinecraftProviderImpl; +import net.fabricmc.loom.configuration.providers.forge.FieldMigratedMappingsProvider; +import net.fabricmc.loom.configuration.providers.forge.ForgeProvider; +import net.fabricmc.loom.configuration.providers.forge.ForgeUniversalProvider; +import net.fabricmc.loom.configuration.providers.forge.ForgeUserdevProvider; +import net.fabricmc.loom.configuration.providers.forge.McpConfigProvider; +import net.fabricmc.loom.configuration.providers.forge.PatchProvider; +import net.fabricmc.loom.configuration.providers.forge.SrgProvider; import net.fabricmc.loom.configuration.providers.mappings.MappingsProviderImpl; import net.fabricmc.loom.configuration.providers.minecraft.MinecraftMappedProvider; import net.fabricmc.loom.extension.LoomFiles; @@ -81,7 +88,7 @@ public interface LoomGradleExtension extends LoomGradleExtensionAPI { } default MappingsProviderImpl getMappingsProvider() { - return getDependencyManager().getProvider(MappingsProviderImpl.class); + return getDependencyManager().getProvider(isForge() ? FieldMigratedMappingsProvider.class : MappingsProviderImpl.class); } default MinecraftMappedProvider getMinecraftMappedProvider() { @@ -108,4 +115,45 @@ public interface LoomGradleExtension extends LoomGradleExtensionAPI { List<AccessWidenerFile> getTransitiveAccessWideners(); void addTransitiveAccessWideners(List<AccessWidenerFile> accessWidenerFiles); + + // =================== + // Architectury Loom + // =================== + default PatchProvider getPatchProvider() { + return getDependencyManager().getProvider(PatchProvider.class); + } + + default McpConfigProvider getMcpConfigProvider() { + return getDependencyManager().getProvider(McpConfigProvider.class); + } + + default boolean isDataGenEnabled() { + return isForge() && !getForge().getDataGenMods().isEmpty(); + } + + default boolean isForgeAndOfficial() { + return isForge() && getMcpConfigProvider().isOfficial(); + } + + default boolean isForgeAndNotOfficial() { + return isForge() && !getMcpConfigProvider().isOfficial(); + } + + boolean supportsInclude(); + + default SrgProvider getSrgProvider() { + return getDependencyManager().getProvider(SrgProvider.class); + } + + default ForgeUniversalProvider getForgeUniversalProvider() { + return getDependencyManager().getProvider(ForgeUniversalProvider.class); + } + + default ForgeUserdevProvider getForgeUserdevProvider() { + return getDependencyManager().getProvider(ForgeUserdevProvider.class); + } + + default ForgeProvider getForgeProvider() { + return getDependencyManager().getProvider(ForgeProvider.class); + } } |