plugins { id 'fabric-loom' version "${fabric_loom_version}" id 'java' } version = "${mod_version}+${minecraft_version}" group = mod_group base { archivesName = "bettershulkers" } repositories { maven { url = 'https://maven.shedaniel.me/' } maven { url = 'https://maven.terraformersmc.com/releases/' } maven { url = 'https://maven.parchmentmc.org' content { includeGroupByRegex("org\\.parchmentmc\\..*") } } } loom { accessWidenerPath = file("src/main/resources/${mod_id}.accesswidener") } dependencies { minecraft "com.mojang:minecraft:${minecraft_version}" mappings loom.layered() { officialMojangMappings() parchment("org.parchmentmc.data:${parchment_mappings}@zip") } modImplementation "net.fabricmc:fabric-loader:${fabric_loader_version}" Set apiModules = [ "fabric-api-base", "fabric-resource-loader-v1", "fabric-networking-api-v1" ] apiModules.forEach { modImplementation(fabricApi.module(it, fabric_api_version)) } modCompileOnlyApi("me.shedaniel.cloth:cloth-config-fabric:${cloth_config_version}") { exclude(group: "net.fabricmc.fabric-api") } modCompileOnly "com.terraformersmc:modmenu:${modmenu_version}" } processResources { filesMatching('fabric.mod.json') { expand 'mod_version': mod_version, 'minecraft_version': minecraft_version, 'fabric_loader_version': fabric_loader_version, 'cloth_config_version': cloth_config_version, 'modmenu_version': modmenu_version } } java { toolchain { languageVersion = JavaLanguageVersion.of(21) } // withSourcesJar() } tasks.withType(JavaCompile).configureEach { it.options.release = 21 } jar { from("LICENSE") { rename { "${it}_${base.archivesName.get()}" } } }