diff --git a/gradle-plugins/factorio-gradle/src/main/kotlin/dev/adamko/factorio_gradle/FactorioModPlugin.kt b/gradle-plugins/factorio-gradle/src/main/kotlin/dev/adamko/factorio_gradle/FactorioModPlugin.kt deleted file mode 100644 index c883d40..0000000 --- a/gradle-plugins/factorio-gradle/src/main/kotlin/dev/adamko/factorio_gradle/FactorioModPlugin.kt +++ /dev/null @@ -1,22 +0,0 @@ -package dev.adamko.factorio_gradle - -import org.gradle.api.Plugin -import org.gradle.api.Project -import org.gradle.kotlin.dsl.create - -abstract class FactorioModPlugin : Plugin { - - override fun apply(target: Project) { - target.createSettings() - } - - private fun Project.createSettings(): FactorioModSettings { - return extensions.create(FACTORIO_GRADLE_EXTENSION_NAME).apply { - - } - } - - companion object { - const val FACTORIO_GRADLE_EXTENSION_NAME = "factorio" - } -} diff --git a/gradle-plugins/factorio-gradle/src/main/kotlin/dev/adamko/gradle/factorio/FactorioModPlugin.kt b/gradle-plugins/factorio-gradle/src/main/kotlin/dev/adamko/gradle/factorio/FactorioModPlugin.kt new file mode 100644 index 0000000..06146b6 --- /dev/null +++ b/gradle-plugins/factorio-gradle/src/main/kotlin/dev/adamko/gradle/factorio/FactorioModPlugin.kt @@ -0,0 +1,44 @@ +package dev.adamko.gradle.factorio + +import javax.inject.Inject +import org.gradle.api.Plugin +import org.gradle.api.Project +import org.gradle.api.model.ObjectFactory +import org.gradle.kotlin.dsl.create + + +abstract class FactorioModPlugin @Inject constructor( + private val objects: ObjectFactory, +) : Plugin { + + override fun apply(target: Project) { + target.createSettings() + + + val factorioModConfiguration = + target.configurations.register(FACTORIO_GRADLE_CONFIGURATION_NAME) { + asConsumer() + factorioModAttributes(objects) + } + + + } + + private fun Project.createSettings(): FactorioModSettings { + return extensions.create(FACTORIO_GRADLE_EXTENSION_NAME).apply { + + } + } + + companion object { + const val FACTORIO_GRADLE_EXTENSION_NAME = "factorioMod" + const val FACTORIO_GRADLE_CONFIGURATION_NAME = "factorioMod" + + const val TASK_GROUP = "factorioMod" + + /** Lifecycle task for publishing the mod locally */ + const val PUBLISH_MOD_LOCAL_TASK_NAME = "publishModLocal" + + const val PUBLISH_MOD_TASK_NAME = "publishMod" + } +}