plugins {
    id "architectury-plugin" version "3.4-SNAPSHOT"
	id "dev.architectury.loom" version "$loom_version" apply false
	id "io.github.juuxel.loom-vineflower" version "1.+" apply false
    id "io.github.pacifistmc.forgix" version "1.2.6"
}

println "building for $minecraft_version_out (as $minecraft_version) and I fucking hate gradle —PoolloverNathan"

architectury {
    minecraft = rootProject.minecraft_version_out
}

subprojects {
    apply plugin: "dev.architectury.loom"
	  //apply plugin: "io.github.juuxel.loom-vineflower"

    loom {
        silentMojangMappingsLicense()
    }

    repositories {
        maven { url 'https://maven.quiltmc.org/repository/release/' }
        maven {
            name = "Figura Maven Release"
            url = uri("https://maven.figuramc.org/releases")
        }
        maven {
            name = "Figura Maven Snapshots"
            url = uri("https://maven.figuramc.org/snapshots")
        }
        maven { url 'https://jitpack.io' }
    }

    dependencies {
        minecraft "com.mojang:minecraft:$minecraft_version_out"

        mappings loom.layered {
			mappings("org.quiltmc:quilt-mappings:$minecraft_version_out+build.$mappings:intermediary-v2")
			officialMojangMappings()
		}
    }
}

allprojects {
    apply plugin: "java"
    apply plugin: "architectury-plugin"
    apply plugin: "maven-publish"

    java_version = rootProject.java_version
	archivesBaseName = rootProject.archives_base_name
	version = rootProject.mod_version + "+" + rootProject.minecraft_version_out
	group = rootProject.maven_group
    figura_version = rootProject.figura_version

    repositories {
        maven {
    		name = "Terraformers"
		    url = "https://maven.terraformersmc.com/"
	    }
        // Add repositories to retrieve artifacts from in here.
        // You should only use this when depending on other mods because
        // Loom adds the essential maven repositories to download Minecraft and libraries from automatically.
        // See https://docs.gradle.org/current/userguide/declaring_repositories.html
        // for more information about repositories.
    }

    tasks.withType(JavaCompile) {
        options.encoding = "UTF-8"
        options.release = 17
    }

    java {
        withSourcesJar()
    }
}

tasks.named("build") {
    finalizedBy("mergeJars")
}

forgix {
    group = rootProject.maven_group
    mergedJarName = "$archives_base_name-$mod_version+${minecraft_version_out}.jar"
}
