diff options
| author | devmikka <64923699+DevMikka@users.noreply.github.com> | 2025-11-08 10:23:57 +0100 |
|---|---|---|
| committer | devmikka <64923699+DevMikka@users.noreply.github.com> | 2025-11-08 10:23:57 +0100 |
| commit | fdd8fd0f059bba93f70b6a317c27f2549b380fb6 (patch) | |
| tree | daff88a790f3aba1f0f9bda56c2caa0f7c7b6594 /build.gradle.kts | |
| parent | 3b9a84b529a2b9535129249481f71510889c7758 (diff) | |
Diffstat (limited to 'build.gradle.kts')
| -rw-r--r-- | build.gradle.kts | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 0000000..6d075c8 --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,71 @@ +import net.minecrell.pluginyml.bukkit.BukkitPluginDescription +import net.minecrell.pluginyml.paper.PaperPluginDescription + +plugins { + alias(libs.plugins.kotlin.jvm) + alias(libs.plugins.plugin.yml.paper) + alias(libs.plugins.run.paper) + alias(libs.plugins.spotless) +} + +group = "dev.mikka.cortex.help" + +version = "1.0-SNAPSHOT" + +repositories { + mavenCentral() + maven("https://repo.papermc.io/repository/maven-public/") + maven("https://repo.codemc.io/repository/maven-releases/") +} + +dependencies { + compileOnly(libs.paper.api) + paperLibrary(libs.kotlin.stdlib) + + compileOnly( + libs.luckperms.api + ) // Bukkit SPI - It would be actually safer to include the API on the server, however we can't for this demonstration + compileOnly(libs.protocollib) // Direct Ref + paperLibrary(libs.packetevents.spigot) // Library with initializer +} + +kotlin { jvmToolchain(17) } + +paper { + name = "TestPlugin" + version = "0.1.0" + description = "Accessing other plugins" + author = "devmikka" + main = "dev.mikka.cortex.help.TestPlugin" + loader = "dev.mikka.cortex.help.loader.TestPluginLoader" + generateLibrariesJson = true + apiVersion = "1.20" + load = BukkitPluginDescription.PluginLoadOrder.STARTUP + + serverDependencies { + register("LuckPerms") { + load = PaperPluginDescription.RelativeLoadOrder.BEFORE + required = false + } + register("ProtocolLib") { + load = PaperPluginDescription.RelativeLoadOrder.BEFORE + required = true + joinClasspath = true + } + } +} + +spotless { + kotlin { ktfmt().kotlinlangStyle().configure { it.setMaxWidth(120) } } + kotlinGradle { ktfmt().kotlinlangStyle().configure { it.setMaxWidth(140) } } + java { + removeUnusedImports() + importOrder() + formatAnnotations() + palantirJavaFormat() + } +} + +tasks.generatePaperPluginDescription { useDefaultCentralProxy() } + +tasks.runServer { minecraftVersion("1.20.1") } |
