import java.util.stream.Collectors plugins { id "com.github.johnrengelman.shadow" version "5.0.0" } configurations { shadow } architectury { platformSetupLoomIde() } dependencies { minecraft("com.mojang:minecraft:${rootProject.minecraft_version}") mappings(minecraft.officialMojangMappings()) modCompile("net.fabricmc:fabric-loader:${rootProject.fabric_loader_version}") modCompile("net.fabricmc.fabric-api:fabric-api:${rootProject.fabric_api_version}") //TODO this is a hack, needs a Fabric alternative compile 'com.electronwill.night-config:core:3.6.2' compile 'com.electronwill.night-config:toml:3.6.2' compileOnly(project(path: ":common")) { transitive = false } runtimeOnly(project(path: ":common", configuration: "transformDevelopmentFabric")) { transitive = false } shadow(project(path: ":common", configuration: "transformProductionFabric")) { transitive = false } } processResources { inputs.property "version", project.version filesMatching("fabric.mod.json") { expand "version": project.version } } shadowJar { configurations = [project.configurations.shadow] classifier "shadow" } remapJar { dependsOn(shadowJar) input.set(shadowJar.archivePath) classifier "fabric" } def fcMixinConfigs = ["predicates", "fastmap", "nopropertymap", "mrl", "dedupmultipart", "blockstatecache"].stream() .map({s -> archivesBaseName+"."+s+".mixin.json"}) .collect(Collectors.toList()) loom { mixinConfigs = fcMixinConfigs }