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

apply plugin: 'net.minecraftforge.gradle.forge'
apply plugin: 'com.github.johnrengelman.shadow'

dependencies {
    compile project(':core')
    compile 'org.spongepowered:spongeapi:3.1.0-SNAPSHOT'
    compile 'com.sk89q.worldedit:worldedit-forge-mc1.8.9:6.1.1'
}

sourceCompatibility = 1.8
targetCompatibility = 1.8

repositories {
    maven {
        name = 'forge'
        url = 'http://files.minecraftforge.net/maven'
    }
    maven {
        name = "Sponge"
        url = "https://repo.spongepowered.org/maven"
    }
    maven {
        name = "Sponge Metrics"
        url = "http://repo.mcstats.org/content/repositories/releases/"
    }
}
minecraft {
    version = "1.11-13.19.0.2157"
    mappings = "snapshot_20161123"
    runDir = 'run'
}

project.archivesBaseName = "${project.archivesBaseName}-mc${minecraft.version}"

processResources {
    from(sourceSets.main.resources.srcDirs) {
        expand 'version': project.version,
                'mcVersion': project.minecraft.version
        exclude 'mcmod.info'
    }
}

shadowJar {
    relocate 'org.yaml.snakeyaml', 'com.boydti.fawe.yaml'
    dependencies {
        include(dependency('com.github.luben:zstd-jni:1.1.1'))
//        include(dependency('org.javassist:javassist:3.22.0-CR1'))
        include(dependency('co.aikar:fastutil-lite:1.0'))
        include(dependency(':core'))
        include(dependency('org.yaml:snakeyaml:1.16'))
    }
    archiveName = "${parent.name}-${project.name}-${parent.version}.jar"
    destinationDir = file '../target'
    manifest {
        attributes("Main-Class": "com.boydti.fawe.installer.InstallerFrame")
    }
}
shadowJar.doLast {
    task ->
        ant.checksum file: task.archivePath
}


reobf {
    shadowJar {
        mappingType = 'SEARGE'
    }
}

task deobfJar(type: Jar) {
    from sourceSets.main.output
    classifier = 'dev'
}

artifacts {
    archives deobfJar
}

build.dependsOn(shadowJar)