plugins { id 'net.fabricmc.fabric-loom' version "${loom_version}" id 'maven-publish' id "com.modrinth.minotaur" version "2.+" id 'net.darkhax.curseforgegradle' version '1.+' } version = project.mod_version group = project.maven_group base { archivesName = project.archives_base_name } repositories { // 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. } dependencies { // Minecraft minecraft "com.mojang:minecraft:${project.minecraft_version}" // Fabric Loader implementation "net.fabricmc:fabric-loader:${project.loader_version}" // Fabric API. This is technically optional, but you probably want it anyway. implementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}" } processResources { inputs.property "version", project.version filesMatching("fabric.mod.json") { expand "version": inputs.properties.version } } tasks.withType(JavaCompile).configureEach { it.options.release = 25 } java { // Loom will automatically attach sourcesJar to a RemapSourcesJar task and to the "build" task // if it is present. // If you remove this line, sources will not be generated. withSourcesJar() sourceCompatibility = JavaVersion.VERSION_25 targetCompatibility = JavaVersion.VERSION_25 } jar { inputs.property "archivesName", project.base.archivesName } modrinth { token = findProperty('modrinthKey') ?: '0' projectId = "z440MEwJ" versionNumber = project.version versionName = "No Chat Restrictions " + project.version versionType = "release" changelog = rootProject.file("../CHANGELOG.md").text uploadFile = jar gameVersions = [ project.minecraft_version ] loaders = [ 'fabric' ] dependencies { required.project "P7dR8mSH" } } task curseforge(type: net.darkhax.curseforgegradle.TaskPublishCurseForge) { disableVersionDetection() apiToken = findProperty('curseKey') ?: '0' def projectId = '1442925' def mainFile = upload(projectId, jar) mainFile.changelogType = 'markdown' mainFile.changelog = rootProject.file("../CHANGELOG.md").text mainFile.releaseType = 'release' mainFile.addModLoader('Fabric') mainFile.addJavaVersion('Java 25') mainFile.addGameVersion(project.minecraft_version) mainFile.addRequirement('fabric-api') } afterEvaluate { tasks.named('modrinth') { dependsOn(jar) } tasks.named('curseforge') { dependsOn(jar) } } task upload { dependsOn('modrinth') dependsOn('curseforge') }