plugins { `maven-publish` id("org.quiltmc.loom") } val groupid: String by project val jakartaAnnotationVersion: String by project val loaderVersion: String by project val modid: String by project val modVersion: String by project val minecraftVersion: String by project val quiltMappings: String by project val wthitVersion: String by project group = groupid version = modVersion repositories { maven { // For WTHIT url = uri("https://maven2.bai.lol") content { includeGroup("lol.bai") includeGroup("mcp.mobius.waila") } } } loom { mods { register(modid) { sourceSet("main") } } } dependencies { minecraft("com.mojang:minecraft:${minecraftVersion}") mappings(loom.layered { mappings("org.quiltmc:quilt-mappings:${minecraftVersion}+build.${quiltMappings}:intermediary-v2") officialMojangMappings() }) modImplementation("org.quiltmc:quilt-loader:${loaderVersion}") modCompileOnly("mcp.mobius.waila:wthit-api:quilt-${wthitVersion}") compileOnly("jakarta.annotation:jakarta.annotation-api:${jakartaAnnotationVersion}") } java { toolchain { languageVersion.set(JavaLanguageVersion.of(17)) } withJavadocJar() withSourcesJar() } publishing { publications { create("maven") { from(components["java"]) } } repositories { maven { url = uri("https://mvn.enes.lv/") credentials { username = (findProperty("mvnUsername") ?: System.getenv("MVN_USERNAME")).toString() password = (findProperty("mvnPassword") ?: System.getenv("MVN_PASSWORD")).toString() } } } } tasks.processResources { inputs.property("loader_version", loaderVersion) inputs.property("minecraft_version", minecraftVersion) inputs.property("version", version) filesMatching("quilt.mod.json") { expand( "loader_version" to loaderVersion, "minecraft_version" to minecraftVersion, "version" to version ) } } tasks.withType().configureEach { options.encoding = "UTF-8" options.release = 17 } tasks.javadoc { (options as StandardJavadocDocletOptions).addBooleanOption("html5", true) } tasks.jar { from("LICENSE") { rename { "${it}_${name}" } } }