plugins { id 'fabric-loom' version '1.8.13' } def mc = providers.gradleProperty('mcVersion').getOrElse('1.21.1') if (!(mc in ['1.20.1', '1.21.1'])) throw new GradleException('Use the modern build for 26.x') def targetJava = mc == '1.20.1' ? 17 : 21 loom { mixin { defaultRefmapName = 'scopenet.refmap.json' } } if (providers.gradleProperty('verifyMixins').isPresent()) { loom { runs { server { vmArg '-Dscopenet.verifyMixins=true' } } } } java.sourceCompatibility = JavaVersion.toVersion(targetJava) java.targetCompatibility = JavaVersion.toVersion(targetJava) dependencies { minecraft "com.mojang:minecraft:${mc}" mappings loom.officialMojangMappings() modImplementation 'net.fabricmc:fabric-loader:0.16.10' implementation project(':common') } sourceSets.main.java.srcDirs += ['../minecraft/src/main/java', "../minecraft/src/${mc}/java"] sourceSets.main.resources.srcDirs += ['../minecraft/src/main/resources'] apply from: '../minecraft/build-info.gradle' processResources { inputs.properties(version: project.version, mc: mc, java: targetJava) filesMatching('fabric.mod.json') { expand(version: project.version, mc: mc, java: targetJava) } } jar { archiveBaseName = "scopenet-fabric-${mc}" from project(':common').sourceSets.main.output } base.archivesName = "scopenet-fabric-${mc}"