mirror of
https://github.com/SquidDev-CC/CC-Tweaked
synced 2024-12-15 12:40:30 +00:00
8152f19b6e
- Add support for Fabric. This is mostly pretty simple, though does require a lot more mixins than Forge. Half this diff is due to data generators: we run them separately as some aspects (recipes mostly) are different between the loaders. - Add integration with Iris (same as our Oculus support) and REI (mostly the same as our JEI support). - Generic peripherals only support inventories (or rather InventoryStorage) right now. Supporting more of the Fabric storage API is going to be tricky due to the slotted nature of the API: maybe something to revisit after Transfer API V3 (V4?, I've lost track). Note, this does /not/ mean I will be publishing a Fabric version of CC:T. My plan is to rebase CC:R on top of this, hopefully simplifying the maintenance work on their end and making the two mods a little more consistent.
67 lines
1.7 KiB
Plaintext
67 lines
1.7 KiB
Plaintext
/** Default configuration for Fabric projects. */
|
|
|
|
import cc.tweaked.gradle.CCTweakedExtension
|
|
import cc.tweaked.gradle.CCTweakedPlugin
|
|
import cc.tweaked.gradle.IdeaRunConfigurations
|
|
import cc.tweaked.gradle.MinecraftConfigurations
|
|
|
|
plugins {
|
|
`java-library`
|
|
id("fabric-loom")
|
|
id("io.github.juuxel.loom-quiltflower")
|
|
id("cc-tweaked.java-convention")
|
|
}
|
|
|
|
plugins.apply(CCTweakedPlugin::class.java)
|
|
|
|
val mcVersion: String by extra
|
|
|
|
repositories {
|
|
maven("https://maven.parchmentmc.org/") {
|
|
name = "Parchment"
|
|
content {
|
|
includeGroup("org.parchmentmc.data")
|
|
}
|
|
}
|
|
}
|
|
|
|
loom {
|
|
splitEnvironmentSourceSets()
|
|
splitModDependencies.set(true)
|
|
}
|
|
|
|
MinecraftConfigurations.setup(project)
|
|
|
|
extensions.configure(CCTweakedExtension::class.java) {
|
|
linters(minecraft = true, loader = "fabric")
|
|
}
|
|
|
|
dependencies {
|
|
val libs = project.extensions.getByType<VersionCatalogsExtension>().named("libs")
|
|
|
|
minecraft("com.mojang:minecraft:$mcVersion")
|
|
mappings(
|
|
loom.layered {
|
|
officialMojangMappings()
|
|
parchment(
|
|
project.dependencies.create(
|
|
group = "org.parchmentmc.data",
|
|
name = "parchment-${libs.findVersion("parchmentMc").get()}",
|
|
version = libs.findVersion("parchment").get().toString(),
|
|
ext = "zip",
|
|
),
|
|
)
|
|
},
|
|
)
|
|
|
|
modImplementation(libs.findLibrary("fabric-loader").get())
|
|
modImplementation(libs.findLibrary("fabric-api").get())
|
|
|
|
// Depend on error prone annotations to silence a lot of compile warnings.
|
|
compileOnlyApi(libs.findLibrary("errorProne.annotations").get())
|
|
}
|
|
|
|
tasks.ideaSyncTask {
|
|
doLast { IdeaRunConfigurations(project).patch() }
|
|
}
|