Files
SCOPENET-MC/integrations/forge/build.gradle

45 lines
1.9 KiB
Groovy

buildscript {
repositories {
maven { url = 'https://maven.minecraftforge.net/' }
mavenCentral()
gradlePluginPortal()
}
dependencies {
classpath 'net.minecraftforge.gradle:ForgeGradle:6.0.42'
classpath 'org.spongepowered:mixingradle:0.7.38'
}
}
apply plugin: 'net.minecraftforge.gradle'
apply plugin: 'org.spongepowered.mixin'
repositories {
exclusiveContent {
forRepository { maven { url = 'https://libraries.minecraft.net/' } }
filter { includeGroup 'org.lwjgl' }
}
}
def mc = (providers.gradleProperty('mcVersion').orNull ?: project.findProperty('mcVersion') ?: '1.21.1').toString().trim()
def forgeVersions = ['1.20.1': '47.4.10', '1.21.1': '52.1.0']
if (!forgeVersions.containsKey(mc)) throw new GradleException("Unsupported Minecraft version '${mc}'")
java.sourceCompatibility = JavaVersion.toVersion(mc == '1.20.1' ? 17 : 21)
java.targetCompatibility = java.sourceCompatibility
minecraft { mappings channel: 'official', version: mc }
dependencies {
minecraft "net.minecraftforge:forge:${mc}-${forgeVersions[mc]}"
implementation project(':common')
annotationProcessor 'org.spongepowered:mixin:0.8.5:processor'
}
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'
mixin { add sourceSets.main, 'scopenet.refmap.json'; config 'scopenet.mixins.json' }
processResources {
inputs.properties(version: project.version, mc: mc)
filesMatching('META-INF/mods.toml') { expand(version: project.version, mc: mc, forge: forgeVersions[mc].split('\\.')[0]) }
}
base.archivesName = "scopenet-forge-${mc}"
jar {
from project(':common').sourceSets.main.output
manifest { attributes('MixinConfigs': 'scopenet.mixins.json') }
finalizedBy 'reobfJar'
}