Scripts/lom/src/main/kotlin/io/gitlab/jfronny/scripts/LoomExt.kt

33 lines
1.9 KiB
Kotlin
Raw Normal View History

package io.gitlab.jfronny.scripts
2022-10-06 19:30:52 +02:00
2022-10-07 18:42:33 +02:00
import net.fabricmc.loom.LoomGradleExtension
2022-10-06 19:30:52 +02:00
import net.fabricmc.loom.api.LoomGradleExtensionAPI
import net.fabricmc.loom.task.RemapJarTask
import net.fabricmc.loom.task.UnpickJarTask
import org.gradle.api.Action
import org.gradle.api.DefaultTask
import org.gradle.api.Project
import org.gradle.api.artifacts.dsl.DependencyHandler
import org.gradle.api.tasks.SourceSet
import org.gradle.api.tasks.SourceSetContainer
import org.gradle.api.tasks.TaskContainer
import org.gradle.kotlin.dsl.named
2022-10-07 18:42:33 +02:00
val Project.loom: LoomGradleExtensionAPI get() = LoomGradleExtension.get(this)
2022-10-06 19:30:52 +02:00
fun Project.loom(configure: Action<LoomGradleExtensionAPI>) = extensions.configure("loom", configure)
fun DependencyHandler.minecraft(dependencyNotation: Any) = add("minecraft", dependencyNotation)
fun DependencyHandler.mappings(dependencyNotation: Any) = add("mappings", dependencyNotation)
fun DependencyHandler.modImplementation(dependencyNotation: Any) = add("modImplementation", dependencyNotation)
fun DependencyHandler.testmodImplementation(dependencyNotation: Any) = add("testmodImplementation", dependencyNotation)
fun DependencyHandler.clientImplementation(dependencyNotation: Any) = add("clientImplementation", dependencyNotation)
2022-10-07 18:42:33 +02:00
val SourceSetContainer.main get() = named<SourceSet>("main")
val SourceSetContainer.client get() = named<SourceSet>("client")
val SourceSetContainer.testmod get() = named<SourceSet>("testmod")
2022-10-06 19:30:52 +02:00
fun TaskContainer.remapJar(configure: RemapJarTask.() -> Unit) = named<RemapJarTask>("remapJar").configure(configure)
2022-10-07 18:42:33 +02:00
val TaskContainer.genClientOnlySources get() = named<DefaultTask>("genClientOnlySources")
val TaskContainer.genCommonSources get() = named<DefaultTask>("genCommonSources")
val TaskContainer.unpickClientOnlyJar get() = named<UnpickJarTask>("unpickClientOnlyJar")
val TaskContainer.unpickCommonJar get() = named<UnpickJarTask>("unpickCommonJar")