buildscript {
    repositories {
        mavenLocal()
        mavenCentral()
        google()
        maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
        jcenter()
    }
    dependencies {
        classpath 'de.richsource.gradle.plugins:gwt-gradle-plugin:0.6'
        classpath 'com.android.tools.build:gradle:3.0.1'
    }
}

allprojects {
    apply plugin: "eclipse"
    apply plugin: "idea"

    version = 'release'
    ext {
        appName = "Mindustry"
        gdxVersion = '1.9.8'
        aiVersion = '1.8.1'
        uCoreVersion = '7749e2d';
    }

    repositories {
        mavenLocal()
        mavenCentral()
        maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
        maven { url "https://oss.sonatype.org/content/repositories/releases/" }
        maven { url 'https://jitpack.io' }
    }
}

project(":desktop") {
    apply plugin: "java"

    dependencies {
        compile project(":core")
        compile project(":kryonet")
        compile "com.badlogicgames.gdx:gdx-backend-lwjgl3:$gdxVersion"
        compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop"
        compile "com.badlogicgames.gdx:gdx-controllers-lwjgl3:$gdxVersion"
        compile "com.github.MinnDevelopment:Java-DiscordRPC:dbd4aac"
    }
}

project(":html") {
    apply plugin: "gwt"
    apply plugin: "war"


    dependencies {
        compile project(":core")
        compile "com.badlogicgames.gdx:gdx-backend-gwt:$gdxVersion"
        compile "com.badlogicgames.gdx:gdx:$gdxVersion:sources"
        compile "com.badlogicgames.gdx:gdx-backend-gwt:$gdxVersion:sources"
        compile "com.badlogicgames.gdx:gdx-ai:$aiVersion:sources"

        compile "com.badlogicgames.gdx:gdx-controllers:$gdxVersion:sources"
        compile "com.badlogicgames.gdx:gdx-controllers-gwt:$gdxVersion"
        compile "com.badlogicgames.gdx:gdx-controllers-gwt:$gdxVersion:sources"
    }
}

project(":android") {
    apply plugin: "android"

    configurations { natives }

    dependencies {
        compile project(":core")
        compile project(":kryonet")
        compile "com.badlogicgames.gdx:gdx-backend-android:$gdxVersion"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi-v7a"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-arm64-v8a"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86"
        natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86_64"
        compile "com.badlogicgames.gdx:gdx-ai:$aiVersion"
        compile "com.badlogicgames.gdx:gdx-controllers-android:$gdxVersion"
    }
}

project(":core") {
    apply plugin: "java"

    dependencies {
        boolean comp = System.properties["release"] == null || System.properties["release"].equals("false");

        if(!comp){
            println("NOTICE: Compiling release build.")
        }else{
            println("Compiling DEBUG build.");
        }

        if(new File('../uCore').exists() && comp){
            compile project(":uCore")
        }else{
            compile "com.github.anuken:ucore:$uCoreVersion"
        }

        if(new File('../GDXGifRecorder').exists() && comp) {
            compile project(":GDXGifRecorder")
        }
        compile "com.badlogicgames.gdx:gdx:$gdxVersion"
        compile "com.badlogicgames.gdx:gdx-ai:$aiVersion"
        compile "com.badlogicgames.gdx:gdx-controllers:$gdxVersion"
    }
}

project(":kryonet") {
    apply plugin: "java"

    dependencies {
        compile project(":core")
        compile 'com.github.crykn:kryonet:2.22.1'
    }
}

tasks.eclipse.doLast {
    delete ".project"
}