//file:noinspection GradlePackageVersionRange
plugins {
    id 'fabric-loom' version '1.8-SNAPSHOT'
    id 'maven-publish'
}

version = "${project.mod_version}+${project.minecraft_base_version}"
group = project.maven_group

base {
    archivesName = project.archives_base_name
}

repositories {
    maven { url "https://maven.wispforest.io/releases/" }
}

loom {
    accessWidenerPath = file("src/main/resources/isometricrenders.accesswidener")
}

dependencies {
    //to change the versions see the gradle.properties file
    minecraft "com.mojang:minecraft:${project.minecraft_version}"
    mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2"
    modImplementation "net.fabricmc:fabric-loader:${project.loader_version}"

    // Fabric API. This is technically optional, but you probably want it anyway.
    modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}"

    modImplementation "io.wispforest:worldmesher:${project.worldmesher_version}"
    include "io.wispforest:worldmesher:${project.worldmesher_version}"

    modImplementation "io.wispforest:exo:${project.exo_version}"

    modImplementation "io.wispforest:owo-lib:${project.owo_version}"
    include "io.wispforest:owo-sentinel:${project.owo_version}"
}

processResources {
    inputs.property "version", project.version

    filesMatching("fabric.mod.json") {
        expand "version": project.version
    }
}

tasks.withType(JavaCompile).configureEach {
    it.options.release = 21
}

java {
    withSourcesJar()

    sourceCompatibility = JavaVersion.VERSION_21
    targetCompatibility = JavaVersion.VERSION_21
}

jar {
    from("LICENSE") {
        rename { "${it}_${project.base.archivesName.get()}"}
    }
}
