DimDoors/build.gradle
2021-02-21 14:37:10 +01:00

174 lines
4.6 KiB
Groovy

plugins {
id "fabric-loom" version "0.6-SNAPSHOT"
id "maven-publish"
id 'com.matthewprenger.cursegradle' version "1.4.0"
}
apply plugin: "java"
sourceCompatibility = 1.8
targetCompatibility = 1.8
repositories {
mavenCentral()
jcenter()
maven {
name = "Fabric maven"
url = "https://maven.fabricmc.net/"
}
maven {
name = "Haven's Maven"
url = "https://hephaestus.dev/release"
}
maven {
url = "https://www.cursemaven.com"
content {
includeGroup "curse.maven"
}
}
maven {
url = "https://jitpack.io"
}
maven {
url = "https://server.bbkr.space/artifactory/libs-release"
content {
includeGroup "io.github.cottonmc"
}
}
maven {
name = "Ladysnake Libs"
url = "https://dl.bintray.com/ladysnake/libs"
}
maven {
url = "https://maven.shedaniel.me/"
}
}
def includeCompile(group, artifact, version) {
project.dependencies {
modCompileOnly("$group:$artifact:$version") {
exclude module: "fabric-api"
}
modRuntime("$group:$artifact:$version") {
exclude module: "fabric-api"
}
include("$group:$artifact:$version")
}
project.publishing {
publications {
mavenJava(MavenPublication) {
pom.withXml {
def depsNode = asNode().appendNode("dependencies")
def depNode = depsNode.appendNode("dependency")
depNode.appendNode("groupId", group)
depNode.appendNode("artifactId", artifact)
depNode.appendNode("version", version)
depNode.appendNode("scope", "compile")
}
}
}
}
}
sourceSets {
main {
java {
srcDir "src/main/schematics"
srcDir "src/main/registry"
srcDir "src/main/config"
}
}
datagen
}
dependencies {
minecraft "com.mojang:minecraft:21w06a"
mappings "net.fabricmc:yarn:21w06a+build.3:v2"
modImplementation "net.fabricmc:fabric-loader:0.11.1"
modImplementation "net.fabricmc.fabric-api:fabric-api:0.30.2+1.17"
includeCompile("com.flowpowered", "flow-math", "1.0.3")
includeCompile("org.jgrapht", "jgrapht-core", "1.1.0")
includeCompile("com.github.DimensionalDevelopment", "poly2tri.java", "0.1.1")
includeCompile("io.github.BoogieMonster1O1", "OpenWorlds", "c57e3ef")
includeCompile("io.github.cottonmc", "LibGui", "3.3.2+1.16.4")
includeCompile("me.shedaniel.cloth", "config-2", "5.0.0")
includeCompile("io.github.onyxstudios.Cardinal-Components-API", "cardinal-components-base", "3.0.0-nightly.21w06a")
includeCompile("io.github.onyxstudios.Cardinal-Components-API", "cardinal-components-item", "3.0.0-nightly.21w06a")
includeCompile("io.github.onyxstudios.Cardinal-Components-API", "cardinal-components-level", "3.0.0-nightly.21w06a")
includeCompile("io.github.onyxstudios.Cardinal-Components-API", "cardinal-components-util", "3.0.0-nightly.21w06a")
includeCompile("io.github.onyxstudios.Cardinal-Components-API", "cardinal-components-world", "3.0.0-nightly.21w06a")
includeCompile("io.github.onyxstudios.Cardinal-Components-API", "cardinal-components-chunk", "3.0.0-nightly.21w06a")
includeCompile("me.sargunvohra.mcmods", "autoconfig1u", "3.3.1")
includeCompile("dev.hephaestus", "seedy-behavior", "1.0.1")
modCompileOnly("io.github.prospector:modmenu:2.0.0-beta.1+build.2") {
exclude module: "fabric-api"
}
modRuntime("io.github.prospector:modmenu:2.0.0-beta.1+build.2") {
exclude module: "fabric-api"
}
modCompileOnly 'com.github.badasintended:wthit:3.0.0'
modRuntime 'com.github.badasintended:wthit:3.0.0'
modCompileOnly "me.shedaniel.cloth.api:cloth-datagen-api-v1:2.0.0"
modRuntime "me.shedaniel.cloth.api:cloth-datagen-api-v1:2.0.0"
datagenImplementation sourceSets.main.output
datagenImplementation sourceSets.main.compileClasspath
datagenRuntimeOnly sourceSets.main.runtimeClasspath
testImplementation('org.junit.jupiter:junit-jupiter:5.5.2')
}
version = computeVersion(project.mod_version)
archivesBaseName = "DimensionalDoors"
static def computeVersion(String version) {
if (version.contains("alpha")) {
return version + "-" + Calendar.getInstance().getTime().format("dd.MM.yyyy")
}
return version
}
processResources {
filesMatching("fabric.mod.json") {
expand "version": project.version
}
inputs.property "version", project.version
}
artifacts {
archives jar
}
curseforge {
if (project.hasProperty('curse_api_key')) {
apiKey = project.getProperty('curse_api_key')
}
project {
id = '284876'
changelog = 'FOR TESTING ONLY. A changelog can be found at https://github.com/DimensionalDevelopment/DimDoors/commits/1.17'
releaseType = 'alpha'
addGameVersion '1.17'
mainArtifact(file("${project.buildDir}/libs/${archivesBaseName}-${version}.jar")) {
displayName = "[21w06a] Dimensional Doors ${version}"
}
afterEvaluate {
uploadTask.dependsOn("remapJar")
}
}
options {
forgeGradleIntegration = false
}
}
test {
useJUnitPlatform()
}