diff options
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") } |
