buildscript {
    repositories {
        mavenCentral()
        maven {
            name = "forge"
            url = "http://files.minecraftforge.net/maven"
        }
		 maven {
            name = "sonatype"
            url = "https://oss.sonatype.org/content/repositories/snapshots/"
        }
    }
    dependencies {
        classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
    }
}

// define the properties file
ext.configFile = file "build.prop"

configFile.withReader {
    // read config.  it shall from now on be referenced as simply config or as project.config
    def prop = new Properties()
    prop.load(it)
    project.ext.config = new ConfigSlurper().parse prop
}

allprojects {
    apply plugin: 'java'
    apply plugin: 'forge'
    group = config.group_name
    version = config.mod_version
	archivesBaseName = "[${config.minecraft_version}]${config.mod_id}"

    minecraft {
        version = config.minecraft_version + "-" + config.forge_version
        if(file('../run').exists()){
            runDir = "../run"
        } else {
            runDir = ""
        }
    }
}

//Creates a compiled de-obfuscated jar
task deobfJar(type: Jar) {
    from sourceSets.main.output
    appendix = 'deobf'
}

//creates a jar containing only the src
task sourceJar(type: Jar) {
    from sourceSets.main.allSource
    appendix = 'src'
}

tasks.build.dependsOn('sourceJar', 'deobfJar')

dependencies {
    // Copy "[1.7.10]TerraFirmaCraft-deobf-0.79.13.jar" file
    // into the ./libs directory
}

processResources {
    //First we just copy in the mcmod.info file
    from(sourceSets.main.resources.srcDirs) {
        include '**/*.info'
        include '**/*.prop'

        // replaces
        expand ([
            'mod_version': version,
            'minecraft_version': project.config.minecraft_version,
        ])
    }
    // copy everything else, thats we didnt do before
    from(sourceSets.main.resources.srcDirs) {
        exclude '**/*.info'
        exclude '**/*.prop'
    }
}
