plugins { id 'fabric-loom' version '0.10-SNAPSHOT' id 'maven-publish' id 'idea' } archivesBaseName = "${mod_name}-fabric-${minecraft_version}" dependencies { minecraft "com.mojang:minecraft:${minecraft_version}" mappings loom.officialMojangMappings() modImplementation "net.fabricmc:fabric-loader:${fabric_loader_version}" modImplementation "net.fabricmc.fabric-api:fabric-api:${fabric_version}" include 'me.hypherionmc.night-config:toml:3.6.5_custom' include 'me.hypherionmc.night-config:core:3.6.5_custom' implementation project(":Common") } loom { accessWidenerPath = project(":Common").file("src/main/resources/craterlib.aw") runs { client { client() setConfigName("Fabric Client") ideConfigGenerated(true) runDir("run") } server { server() setConfigName("Fabric Server") ideConfigGenerated(true) runDir("run") } } } processResources { from project(":Common").sourceSets.main.resources inputs.property "version", project.version filesMatching("fabric.mod.json") { expand "version": project.version } filesMatching('*.mixins.json') { expand "refmap_target": "${archivesBaseName}-" } } tasks.withType(JavaCompile) { source(project(":Common").sourceSets.main.allSource) } jar { from("LICENSE") { rename { "${it}_${mod_name}" } } } publishing { publications { mavenJava(MavenPublication) { groupId project.group artifactId project.archivesBaseName version project.version from components.java pom.withXml { Node pomNode = asNode() pomNode.dependencies.'*'.findAll() { it.artifactId.text() == 'regutils-joined-fabric' || it.artifactId.text() == 'core' || it.artifactId.text() == 'toml' }.each() { it.parent().remove(it) } } } } repositories { maven { url "https://maven.firstdarkdev.xyz/" + (project.isSnapshot ? "snapshots" : "releases") credentials { username System.getenv("MAVEN_USER") password System.getenv("MAVEN_PASS") } } } } task delDevJar { doLast { def tree = fileTree('build/libs') tree.include '**/*-dev.jar' tree.each { it.delete() } } } build.finalizedBy delDevJar task copyAllArtifacts(type: Copy) { from "$buildDir/libs" into "$rootDir/artifacts" include("*.jar") } build.finalizedBy(copyAllArtifacts);