112 lines
3.2 KiB
Groovy
112 lines
3.2 KiB
Groovy
buildscript {
|
|
repositories {
|
|
jcenter()
|
|
maven { url = "http://files.minecraftforge.net/maven" }
|
|
}
|
|
dependencies {
|
|
classpath 'net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT'
|
|
}
|
|
}
|
|
|
|
plugins {
|
|
id 'io.franzbecker.gradle-lombok' version '1.11'
|
|
id 'java'
|
|
}
|
|
|
|
apply plugin: 'java'
|
|
apply plugin: 'net.minecraftforge.gradle.forge'
|
|
|
|
repositories {
|
|
maven { url "https://jitpack.io" }
|
|
}
|
|
|
|
configurations {
|
|
embed
|
|
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'
|
|
compileOnly 'com.github.OpenCubicChunks:CubicChunks:MC_1.12-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
|
|
}
|
|
|
|
// 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) }
|
|
}
|
|
|
|
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"
|
|
}
|