plugins { id 'fabric-loom' version '0.5-SNAPSHOT' id 'io.freefair.lombok' version '5.2.1' id 'maven-publish' } archivesBaseName = project.archives_base_name version = project.mod_version as Object group = project.maven_group as Object 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. //TODO try this approach to fabric api in the future to avoid unneeded modules. // for some reason it asks for like fabric-biomes and stuff right now. // Set apiModules = [ // "fabric-api-base", // "fabric-registry-sync-v0" // ] // // // Add each module as a dependency // apiModules.forEach { // modImplementation(fabricApi.module(it, project.fabric_version)) // } // Fabric API. modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}" // Cloth Config / Autoconfig modImplementation("me.shedaniel.cloth:config-2:${project.cloth_version}") { exclude(group: "net.fabricmc.fabric-api") exclude(module: "modmenu") } modImplementation("me.sargunvohra.mcmods:autoconfig1u:${project.autoconfig_version}") { exclude(group: "net.fabricmc.fabric-api") } include("me.shedaniel.cloth:config-2:${project.cloth_version}") include("me.sargunvohra.mcmods:autoconfig1u:${project.autoconfig_version}") modImplementation("io.github.prospector:modmenu:${project.modmenu_version}") } minecraft { accessWidener "src/main/resources/$archivesBaseName" + ".accesswidener" } processResources { inputs.property "version", project.version from(sourceSets.main.resources.srcDirs) { include "fabric.mod.json" expand "version": project.version } from(sourceSets.main.resources.srcDirs) { exclude "fabric.mod.json" } } // ensure that the encoding is set to UTF-8, no matter what the system default is // this fixes some edge cases with special characters not displaying correctly // see http://yodaconditions.net/blog/fix-for-java-file-encoding-problems-with-gradle.html tasks.withType(JavaCompile) { options.encoding = "UTF-8" } task sourcesJar(type: Jar, dependsOn: classes) { getArchiveClassifier().set("sources") from sourceSets.main.allSource } jar { from "LICENSE" } // configure the maven publication //publishing {}