Unicopia/build.gradle

158 lines
5.5 KiB
Groovy
Raw Normal View History

2022-12-18 22:07:24 +01:00
buildscript {
dependencies {
classpath 'com.github.dexman545:Outlet:1.3.10'
}
}
2020-01-16 12:35:46 +01:00
plugins {
id 'java-library'
2022-06-25 00:19:55 +02:00
id 'fabric-loom' version '0.12-SNAPSHOT'
2022-12-18 22:07:24 +01:00
id 'com.modrinth.minotaur' version '2.+'
2021-08-04 15:38:03 +02:00
id 'org.ajoberstar.reckon' version '0.13.0'
2018-09-12 01:29:35 +02:00
}
2022-12-18 22:07:24 +01:00
apply plugin: 'dex.plugins.outlet'
2018-09-12 01:29:35 +02:00
2021-08-04 15:38:03 +02:00
java {
toolchain {
2021-12-22 10:15:09 +01:00
languageVersion = JavaLanguageVersion.of(17)
2021-08-04 15:38:03 +02:00
}
2022-06-25 00:19:55 +02:00
withSourcesJar()
2021-06-26 13:15:42 +02:00
}
2021-02-13 20:53:11 +01:00
2022-12-18 22:07:24 +01:00
outlet.allowSnapshotsForProject = false
outlet.mcVersionRange = project.minecraft_version_range
2021-06-26 13:15:42 +02:00
group = project.group
description = project.displayname
archivesBaseName = project.name
2021-02-13 20:53:11 +01:00
2021-12-22 10:15:09 +01:00
loom {
mixin.defaultRefmapName = 'unicopia.mixin.refmap.json'
accessWidenerPath = file('src/main/resources/unicopia.aw')
2024-03-12 19:54:19 +01:00
runs {
datagen {
server()
name "Data Generation"
vmArg "-Dfabric-api.datagen"
vmArg "-Dfabric-api.datagen.modid=unicopia"
vmArg "-Dfabric-api.datagen.output-dir=${file("src/main/generated")}"
runDir "build/datagen"
}
}
2021-08-04 15:38:03 +02:00
}
2024-03-12 19:54:19 +01:00
//assemble.dependsOn(runDatagen)
2021-08-04 15:38:03 +02:00
reckon {
scopeFromProp()
stageFromProp 'beta', 'rc', 'final'
2021-08-04 15:38:03 +02:00
}
repositories {
mavenLocal()
flatDir { dirs 'lib' }
maven { name 'entity-reach-attributes'; url 'https://maven.jamieswhiteshirt.com/libs-release' }
2023-08-04 19:25:52 +02:00
maven { name 'trinkets'; url 'https://maven.ladysnake.org/releases' }
maven { name 'mod-menu'; url 'https://maven.terraformersmc.com/' }
maven { name 'minelp-snapshot'; url 'https://repo.minelittlepony-mod.com/maven/snapshot' }
maven { name 'minelp-releases'; url 'https://repo.minelittlepony-mod.com/maven/release' }
2023-05-25 20:02:08 +02:00
maven { name 'TerraformersMC'; url 'https://maven.terraformersmc.com/' }
maven { name 'Nodium'; url 'https://maven.cafeteria.dev/releases/' }
2024-02-08 23:59:21 +01:00
maven { name 'Modrinth'; url 'https://api.modrinth.com/maven' }
maven { name 'JitPack'; url 'https://jitpack.io'; content { includeGroup "com.github.Virtuoel" } }
2018-09-12 01:29:35 +02:00
}
dependencies {
2021-06-26 13:15:42 +02:00
minecraft "com.mojang:minecraft:${project.minecraft_version}"
mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2"
modApi "net.fabricmc:fabric-loader:${project.loader_version}"
modApi "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}"
2021-08-04 15:38:03 +02:00
modApi "com.minelittlepony:minelittlepony:${project.minelp_version}"
2020-04-22 22:41:00 +02:00
2021-08-04 15:38:03 +02:00
modApi "com.minelittlepony:kirin:${project.kirin_version}"
include "com.minelittlepony:kirin:${project.kirin_version}"
2020-01-16 12:35:46 +01:00
modApi "com.jamieswhiteshirt:reach-entity-attributes:${project.reach_attributes_version}"
include "com.jamieswhiteshirt:reach-entity-attributes:${project.reach_attributes_version}"
modApi "com.sollace:fabwork:${project.fabwork_version}"
include "com.sollace:fabwork:${project.fabwork_version}"
compileOnly "com.sollace:Romanizer:Romanizer:1.0.2"
include "com.sollace:Romanizer:Romanizer:1.0.2"
2022-12-07 21:47:33 +01:00
modCompileOnly "com.terraformersmc:modmenu:${project.modmenu_version}"
2023-08-04 19:25:52 +02:00
modCompileOnly "dev.emi:trinkets:${project.trinkets_version}"
2023-05-25 20:02:08 +02:00
modImplementation "com.terraformersmc.terraform-api:terraform-wood-api-v1:${project.terraformer_api_version}"
include "com.terraformersmc.terraform-api:terraform-wood-api-v1:${project.terraformer_api_version}"
modImplementation "me.luligabi:NoIndium:${project.nodium_version}"
include "me.luligabi:NoIndium:${project.nodium_version}"
2023-05-20 12:22:46 +02:00
2024-02-08 23:59:21 +01:00
modCompileOnly "maven.modrinth:farmers-delight-fabric:${project.farmers_delight_version}", { exclude group: "net.fabricmc.fabric-api" }
2024-02-11 01:28:39 +01:00
if (project.use_pehkui == '1') {
modCompileOnly "maven.modrinth:pehkui:${project.pehkui_version}", { exclude group: "net.fabricmc.fabric-api" }
modCompileOnly "com.github.Virtuoel:KanosConfig:0.4.1", { exclude group: "net.fabricmc.fabric-api" }
}
if (project.use_sodium == '1') {
modCompileOnly "maven.modrinth:indium:${project.indium_version}", { exclude group: "net.fabricmc.fabric-api" }
2024-02-11 01:28:39 +01:00
modCompileOnly "maven.modrinth:sodium:${project.sodium_version}", { exclude group: "net.fabricmc.fabric-api" }
// modCompileOnly "maven.modrinth:iris:${project.iris_version}", { exclude group: "net.fabricmc.fabric-api" }
2024-02-11 01:28:39 +01:00
}
2024-02-08 23:59:21 +01:00
2023-05-31 20:43:58 +02:00
if (project.tmi_type == 'emi') {
2023-05-30 23:52:02 +02:00
modCompileOnly "dev.emi:emi-fabric:${project.emi_version}"
} else {
2023-05-31 20:43:58 +02:00
modCompileOnly "dev.emi:emi-fabric-dummy:${project.emi_version}"
}
2021-06-26 13:15:42 +02:00
}
2024-03-12 19:54:19 +01:00
sourceSets {
main {
resources {
srcDirs += [ "src/main/generated" ]
}
}
}
2021-06-26 13:15:42 +02:00
processResources {
2021-08-04 15:38:03 +02:00
inputs.property "version", project.version.toString()
2021-02-10 19:36:19 +01:00
2021-06-26 13:15:42 +02:00
filesMatching("fabric.mod.json") {
2023-09-10 17:35:11 +02:00
expand "version": project.version.toString(),
"minecraftVersion": project.minecraft_version_range,
"loaderVersion": ">=${project.loader_version}",
"fabricVersion": ">=${project.fabric_version}",
"fabworkVersion": ">=${project.fabwork_version}",
"kirinVersion": ">=${project.kirin_version}"
2021-02-18 23:07:22 +01:00
}
2021-06-26 13:15:42 +02:00
}
2021-02-18 23:07:22 +01:00
2021-06-26 13:15:42 +02:00
tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
}
2022-12-18 22:07:24 +01:00
tasks.modrinth {
onlyIf {
def stage = version.version.stage.value
stage == null || stage.name != 'beta'
}
}
modrinth {
token = System.env.MODRINTH_KEY
projectId = project.modrinth_project_id
//featured = true
versionNumber = version.toString()
versionName = archivesBaseName + '-' + version
changelog = "[Changelog](https://github.com/Sollace/Unicopia/releases/tag/${version.toString()})"
uploadFile = remapJar
outlet.mcVersions().each{ver ->
gameVersions.add ver
}
dependencies {
2023-05-25 20:02:08 +02:00
required.project '9K7RJlvM'
2022-12-18 22:07:24 +01:00
}
}