Files
TAIGA/build.gradle
Robert Sosnitzka 374f1f1d24 Added nuggets + json files. F
Removed unnecessary lignite ores.
Fixed oreDict
2016-07-22 00:44:17 +02:00

217 lines
5.9 KiB
Groovy

// For those who want the bleeding edge
buildscript {
repositories {
jcenter()
maven {
name = "forge"
url = "http://files.minecraftforge.net/maven"
}
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath 'net.minecraftforge.gradle:ForgeGradle:2.2-SNAPSHOT'
classpath 'gradle.plugin.com.matthewprenger:CurseGradle:1.0.7'
}
}
apply plugin: 'net.minecraftforge.gradle.forge'
apply plugin: "com.matthewprenger.cursegradle"
repositories {
mavenLocal()
mavenCentral()
maven {
name = "chickenbones"
url = "http://chickenbones.net/maven/"
}
maven {
name 'DVS1 Maven FS'
url 'http://dvs1.progwml6.com/files/maven'
}
}
group = "com.sosnitzka" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = "taiga"
task buildInfo {
if (System.getenv().TAIGA_TAG != null) {
ext.revision = System.getenv().TAIGA_TAG
} else {
ext.revision = "snapshot"
}
if (System.getenv().BUILD_NUMBER != null) {
ext.buildNum = System.getenv().BUILD_NUMBER
}
if (System.getenv().TAIGA_CHANGES != null) {
ext.changes = System.getenv().TAIGA_CHANGES
} else {
ext.changes = ""
}
}
version = project.buildInfo.revision
minecraft {
version = "1.10.2-12.18.1.2011"
runDir = "run"
// the mappings can be changed at any time, and must be in the following format.
// snapshot_YYYYMMDD snapshot are built nightly.
// stable_# stables are built at the discretion of the MCP team.
// Use non-default mappings at your own risk. they may not allways work.
// simply re-run your setup task after changing the mappings to update your workspace.
mappings = "snapshot_20160701"
// makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable.
replace "${version}", project.version
}
ext.mc_version = project.minecraft.version.split('-')[0]
version = "${mc_version}-${project.buildInfo.revision}"
dependencies {
//deobfCompile "codechicken:CodeChickenLib:1.9.4-2.0.2.39:deobf"
//deobfCompile "codechicken:CodeChickenCore:1.9.4-2.0.3.65:deobf"
//deobfCompile "codechicken:NotEnoughItems:1.9-${nei_version}:dev"
deobfCompile "slimeknights.mantle:Mantle:1.10.2-0.10.3.jenkins161:deobf"
//Old: deobfCompile "slimeknights.mantle:Mantle:1.9-0.10.0.jenkins132:deobf"
deobfCompile "mezz.jei:jei_1.10.2:3.7.6.231"
deobfCompile "slimeknights:TConstruct:1.10-2.3.3a.jenkins271:deobf"
//compile files('libs/TConstruct-1.9-2.3.1.DEV.1d4c1de-deobf.jar')
}
sourceSets {
main {
resources {
srcDir 'resources'
}
}
}
//noinspection GroovyAssignabilityCheck
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, thats not the mcmod.info
from(sourceSets.main.resources.srcDirs) {
exclude 'mcmod.info'
}
}
task deobfJar(type: Jar) {
from sourceSets.main.output
classifier = 'deobf'
}
artifacts {
archives deobfJar
}
curseforge {
apiKey = System.getenv().CURSE_API_KEY ? System.getenv().CURSE_API_KEY : "devBuild"
project {
id = '247661'
changelog = project.buildInfo.changes // A file can also be set using: changelog = file('changelog.txt')
releaseType = 'release'
mainArtifact(jar) {
displayName = "taiga-${project.buildInfo.revision}"
}
}
}
/* FOR AUTO JSON
ext.args = [:]
ext.requireArgument = {String property, String displayValue ->
def value = args[property]
if (value == null) {
throw new InvalidUserDataException("$property must be set with \'$property=$displayValue\'")
}
return value
}
tasks.addRule("Pattern: <property>=<value>: Passes arguments to the scripts") { String taskName ->
def match = taskName =~ /(.*?)=(.*?$)/
if (match) {
def property = match[0][1]
def value = match[0][2]
ext.args[property] = value;
task(taskName) << {
println "Passes value \'$value\' to args[\'$property\']"
}
}
}
import org.apache.tools.ant.filters.FixCrLfFilter
class CopyJsonTemplate extends DefaultTask {
@Input
def template
@Input
def arguments
@Input
def jsonRename
@TaskAction
def build() {
def args = arguments()
project.copy {
from("templates/${template}") {
expand(args)
filter(FixCrLfFilter, eol: FixCrLfFilter.CrLf.newInstance('crlf'))
}
into 'src/main/resources'
rename { String filename ->
def match = filename =~ /(.*)\.json/
if (match) {
def prevFilename = match[0][1]
def newFilename = jsonRename.call(prevFilename)
return "${newFilename}.json"
}
else {
return filename
}
}
}
}
}
task generateBlockModel(type: CopyJsonTemplate) {
template 'block'
arguments {
def blockName = requireArgument('blockName', 'block_name')
return ['modid':archivesBaseName, 'block_name':blockName]
}
jsonRename {
return args['blockName']
}
}
task generateItemModel(type: CopyJsonTemplate) {
template 'item'
arguments {
def itemName = requireArgument('itemName', 'item_name')
return ['modid':archivesBaseName, 'item_name':itemName]
}
jsonRename {
return args['itemName']
}
}*/