buildscript { repositories { jcenter() maven { url = "http://files.minecraftforge.net/maven" } maven { url = "http://repo.spongepowered.org/maven" } } dependencies { classpath 'net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT' classpath 'org.spongepowered:mixingradle:0.6-SNAPSHOT' } } plugins { id 'io.franzbecker.gradle-lombok' version '1.11' id 'java' } apply plugin: 'java' apply plugin: 'net.minecraftforge.gradle.forge' apply plugin: 'org.spongepowered.mixin' repositories { maven { url = "https://jitpack.io" } maven { name = 'sonatype' url = 'http://oss.sonatype.org/content/repositories/public/' } maven { url = "http://repo.spongepowered.org/maven" } } configurations { embed coreShadow compile.extendsFrom(embed) } dependencies { embed 'com.flowpowered:flow-math:1.0.3' embed 'org.jgrapht:jgrapht-core:1.1.0' embed 'com.github.DimensionalDevelopment:poly2tri.java:master-SNAPSHOT' compileOnly 'com.github.DimensionalDevelopment:AnnotatedNBT:-SNAPSHOT' compile("org.spongepowered:mixin:0.7.8-SNAPSHOT") { transitive = false } deobfProvided 'io.github.opencubicchunks:cubicchunks:1.12.2-0.0.819.0-SNAPSHOT' } // Mod version version = ext.modversion = "3.0.8" boolean isBeta = false group = "org.dimdev.dimdoors" archivesBaseName = "DimensionalDoors" // Build number String fullVersion = version if (System.getenv("TRAVIS_BUILD_NUMBER") != null) { fullVersion += "+${System.getenv("TRAVIS_BUILD_NUMBER")}" } else { fullVersion += "+UNOFFICIAL" } if (isBeta) { fullVersion += "-b" } String jarVersion = fullVersion.replace("+", "-") // Github/Travis doesn't seem to support + in filenames // Minecraft, MCP, Forge, and Java versions sourceCompatibility = targetCompatibility = "1.8" ext.mcversion = "1.12.2" ext.forgeversion = "14.23.2.2623" String mcpversion = "snapshot_20180227" minecraft { version = "$mcversion-$forgeversion" runDir = "run" mappings = mcpversion replace '${version}', fullVersion makeObfSourceJar = false //noinspection GroovyUnusedAssignment def args = [ "-Dfml.noGrab=false", "-Dfml.coreMods.load=org.dimdev.vanillafix.VanillaFixCoreMod", "-Dmixin.env.compatLevel=JAVA_8", "-Dmixin.debug=true", "-Dmixin.debug.verbose=true", "-Dmixin.debug.export=true", "-Dmixin.checks.interfaces=true" ] } mixin { add sourceSets.main, "org.dimdev.vanillafix.mixins.refmap.json" } // Tasks compileJava { //options.compilerArgs += "-proc:only" // To debug AnnotatedNBT code generation } jar { archiveName = archivesBaseName + "-" + jarVersion + ".jar" from configurations.embed.collect { it.isDirectory() ? it : zipTree(it) } manifest { attributes( "TweakClass": "org.spongepowered.asm.launch.MixinTweaker", "FMLCorePlugin": "org.dimdev.vanillafix.VanillaFixCoreMod", "TweakOrder": 0, "MixinConfigs": "org.dimdev.vanillafix.mixins.json", "ForceLoadAsMod": "true" ) } } task sourcesJar(type: Jar, dependsOn: classes) { archiveName = archivesBaseName + "-" + jarVersion + "-sources.jar" classifier = 'sources' from sourceSets.main.allSource } artifacts { archives sourcesJar } processResources { // This will ensure that this task is redone when the versions change. inputs.property "version", project.version inputs.property "mcversion", project.minecraft.version // Replace stuff in mcmod.info, nothing else from(sourceSets.main.resources.srcDirs) { include 'mcmod.info' // replace version and mcversion expand 'version': project.version, 'mcversion': project.minecraft.version } // Copy everything else except mcmod.info from(sourceSets.main.resources.srcDirs) { exclude 'mcmod.info' } } task generatePocketSchematics(dependsOn: jar, type: JavaExec, group: "dimdoors") { classpath = files('build/libs/' + jar.archiveName) classpath += sourceSets.main.runtimeClasspath main = "org.dimdev.dimdoors.shared.tools.SchematicGenerator" //noinspection GroovyAssignabilityCheck (IntelliJ is wrong) args "src/main/resources/assets/dimdoors/pockets/schematic" }