2024-09-03 06:54:50 +02:00
|
|
|
plugins {
|
|
|
|
id("geyser.modded-conventions")
|
|
|
|
id("geyser.modrinth-uploading-conventions")
|
|
|
|
}
|
|
|
|
|
2024-02-23 17:58:39 +01:00
|
|
|
architectury {
|
|
|
|
platformSetupLoomIde()
|
|
|
|
fabric()
|
|
|
|
}
|
|
|
|
|
2024-03-19 23:05:30 +01:00
|
|
|
val includeTransitive: Configuration = configurations.getByName("includeTransitive")
|
|
|
|
|
2024-02-23 17:58:39 +01:00
|
|
|
dependencies {
|
|
|
|
modImplementation(libs.fabric.loader)
|
|
|
|
modApi(libs.fabric.api)
|
|
|
|
|
|
|
|
api(project(":mod", configuration = "namedElements"))
|
|
|
|
shadow(project(path = ":mod", configuration = "transformProductionFabric")) {
|
|
|
|
isTransitive = false
|
|
|
|
}
|
2024-03-19 23:05:30 +01:00
|
|
|
shadow(projects.core) { isTransitive = false }
|
|
|
|
includeTransitive(projects.core)
|
|
|
|
|
2024-09-24 15:37:25 +02:00
|
|
|
// These are NOT transitively included, and instead shadowed (+ relocated, if not under the org.geyser namespace).
|
2024-03-19 23:05:30 +01:00
|
|
|
// Avoids fabric complaining about non-SemVer versioning
|
|
|
|
shadow(libs.protocol.connection) { isTransitive = false }
|
|
|
|
shadow(libs.protocol.common) { isTransitive = false }
|
|
|
|
shadow(libs.protocol.codec) { isTransitive = false }
|
|
|
|
shadow(libs.raknet) { isTransitive = false }
|
|
|
|
shadow(libs.mcprotocollib) { isTransitive = false }
|
|
|
|
|
|
|
|
// Since we also relocate cloudburst protocol: shade erosion common
|
|
|
|
shadow(libs.erosion.common) { isTransitive = false }
|
|
|
|
|
2024-04-14 00:16:26 +02:00
|
|
|
// Let's shade in our own api/common module
|
2024-03-24 17:12:40 +01:00
|
|
|
shadow(projects.api) { isTransitive = false }
|
2024-04-01 23:33:12 +02:00
|
|
|
shadow(projects.common) { isTransitive = false }
|
2024-03-24 17:12:40 +01:00
|
|
|
|
2024-07-12 06:56:42 +02:00
|
|
|
modImplementation(libs.cloud.fabric)
|
|
|
|
include(libs.cloud.fabric)
|
2024-02-23 17:58:39 +01:00
|
|
|
}
|
|
|
|
|
2024-07-12 06:56:42 +02:00
|
|
|
tasks.withType<Jar> {
|
|
|
|
manifest.attributes["Main-Class"] = "org.geysermc.geyser.platform.fabric.GeyserFabricMain"
|
2024-02-23 17:58:39 +01:00
|
|
|
}
|
|
|
|
|
2024-03-19 23:05:30 +01:00
|
|
|
relocate("org.cloudburstmc.netty")
|
|
|
|
relocate("org.cloudburstmc.protocol")
|
|
|
|
|
2024-02-23 17:58:39 +01:00
|
|
|
tasks {
|
|
|
|
remapJar {
|
|
|
|
archiveBaseName.set("Geyser-Fabric")
|
|
|
|
}
|
|
|
|
|
|
|
|
remapModrinthJar {
|
|
|
|
archiveBaseName.set("geyser-fabric")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
modrinth {
|
|
|
|
loaders.add("fabric")
|
2024-06-17 21:31:54 +02:00
|
|
|
uploadFile.set(tasks.getByPath("remapModrinthJar"))
|
2024-02-23 17:58:39 +01:00
|
|
|
dependencies {
|
|
|
|
required.project("fabric-api")
|
|
|
|
}
|
2024-07-07 04:49:28 +02:00
|
|
|
}
|