89 lines
2.6 KiB
Groovy
89 lines
2.6 KiB
Groovy
|
|
buildscript {
|
|
repositories {
|
|
jcenter()
|
|
maven { url = "http://files.minecraftforge.net/maven" }
|
|
mavenCentral()
|
|
}
|
|
dependencies {
|
|
classpath "net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT"
|
|
}
|
|
}
|
|
|
|
apply plugin: 'forge'
|
|
|
|
version = project.mc_version + "-" + project.mod_version
|
|
|
|
archivesBaseName = project.mod_name
|
|
|
|
sourceCompatibility = targetCompatibility = '1.8'
|
|
|
|
configurations {
|
|
shade
|
|
compile.extendsFrom shade
|
|
}
|
|
|
|
dependencies {
|
|
shade project(":core")
|
|
}
|
|
|
|
minecraft {
|
|
version = project.mc_version + "-" + project.forge_version + "-" + project.mc_version
|
|
runDir = "run"
|
|
|
|
mappings = project.mcp_mappings
|
|
|
|
srgExtra "PK: kotlin matterlink/repack/kotlin"
|
|
srgExtra "PK: org/jetbrains/annotations matterlink/repack/org/jetbrains/annotations"
|
|
srgExtra "PK: com/google/gson matterlink/repack/com/google/gson"
|
|
srgExtra "PK: org/apache/commons matterlink/repack/org/apache/commons"
|
|
srgExtra "PK: org/apache/http matterlink/repack/org/apache/http"
|
|
srgExtra "PK: org/intelij matterlink/repack/org/intelij"
|
|
}
|
|
|
|
compileKotlin.doFirst {
|
|
def target = "src/main/kotlin/matterlink/gen"
|
|
copy {
|
|
from("src/templates/kotlin/matterlink/Constants.kt")
|
|
into(target)
|
|
}
|
|
ant.replaceregexp(match:'@MODVERSION@', replace: project.mod_version, flags:'g', byline:true) {
|
|
fileset(dir: target, includes: 'Constants.kt')
|
|
}
|
|
ant.replaceregexp(match:'@MCVERSION@', replace: project.mc_version, flags:'g', byline:true) {
|
|
fileset(dir: target, includes: 'Constants.kt')
|
|
}
|
|
ant.replaceregexp(match:'@FORGELIN-VERSION@', replace: project.forgelin_version, flags:'g', byline:true) {
|
|
fileset(dir: target, includes: 'Constants.kt')
|
|
}
|
|
ant.replaceregexp(match:'@FORGE-VERSION@', replace: project.forge_version, flags:'g', byline:true) {
|
|
fileset(dir: target, includes: 'Constants.kt')
|
|
}
|
|
}
|
|
|
|
processResources {
|
|
// this will ensure that this task is redone when the versions change.
|
|
inputs.property "version", project.mod_version
|
|
inputs.property "mcversion", project.minecraft.version
|
|
|
|
// replace stuff in mcmod.info, nothing else
|
|
from(project(":core").sourceSets.main.resources.srcDirs) {
|
|
include 'mcmod.info'
|
|
|
|
// replace version and mcversion
|
|
expand 'version': project.mod_version, 'mcversion': project.minecraft.version
|
|
}
|
|
|
|
// copy everything else except the mcmod.info
|
|
from(project(":core").sourceSets.main.resources.srcDirs) {
|
|
exclude 'mcmod.info'
|
|
}
|
|
}
|
|
|
|
jar {
|
|
configurations.shade.each { dep ->
|
|
from (project.zipTree(dep)) {
|
|
exclude "META-INF", "META-INF/**"
|
|
}
|
|
}
|
|
} |