import net.minecrell.pluginyml.paper.PaperPluginDescription group = "net.hareworks.hcu" version = "1.0-SNAPSHOT" plugins { kotlin("jvm") version "2.2.21" kotlin("plugin.serialization") version "2.2.21" id("de.eldoria.plugin-yml.paper") version "0.8.0" id("com.gradleup.shadow") version "9.2.2" } repositories { mavenCentral() maven("https://repo.papermc.io/repository/maven-public/") } val exposedVersion = "1.0.0-rc-4" dependencies { compileOnly("io.papermc.paper:paper-api:1.21.10-R0.1-SNAPSHOT") compileOnly("org.jetbrains.kotlin:kotlin-stdlib") // Component Dependencies compileOnly("net.hareworks.hcu:hcu-core:1.3") compileOnly("net.hareworks.hcu:faction:1.0") compileOnly("net.hareworks.hcu:lands:1.0") // Libs compileOnly("com.michael-bull.kotlin-result:kotlin-result:2.1.0") compileOnly("net.hareworks:kommand-lib:1.1") compileOnly("net.hareworks:permits-lib") implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.8.0") // Visualizer Lib (Bundled & Relocated) implementation("net.hareworks.hcu:visualizer-lib:1.0") // Database (Exposed v1) compileOnly("org.jetbrains.exposed:exposed-core:$exposedVersion") compileOnly("org.jetbrains.exposed:exposed-dao:$exposedVersion") compileOnly("org.jetbrains.exposed:exposed-jdbc:$exposedVersion") // Adventure API compileOnly("net.kyori:adventure-api:4.25.0") compileOnly("net.kyori:adventure-text-minimessage:4.25.0") } tasks { withType { archiveBaseName.set("landsector") } shadowJar { archiveClassifier.set("min") minimize() dependencies { exclude(dependency("org.jetbrains.kotlin:kotlin-stdlib")) exclude(dependency("org.jetbrains.kotlin:kotlin-reflect")) exclude(dependency("org.jetbrains.kotlin:kotlin-stdlib-jdk8")) exclude(dependency("org.jetbrains.kotlin:kotlin-stdlib-jdk7")) } relocate("net.hareworks.hcu.visualizer", "net.hareworks.hcu.landsector.libs.visualizer") } } paper { main = "net.hareworks.hcu.landsector.LandSectorPlugin" name = "landsector" description = "Land sector management plugin for HCU server" version = getVersion().toString() apiVersion = "1.21.10" serverDependencies { register("hcu-core") { required = true load = PaperPluginDescription.RelativeLoadOrder.BEFORE } register("faction") { required = true load = PaperPluginDescription.RelativeLoadOrder.BEFORE } register("lands") { required = true load = PaperPluginDescription.RelativeLoadOrder.BEFORE } } authors = listOf("Hare-K02") }