import net.minecrell.pluginyml.bukkit.BukkitPluginDescription group = "net.hareworks" version = "1.0" val exposedVersion = "0.54.0" plugins { kotlin("jvm") version "2.0.20" kotlin("plugin.serialization") version "2.0.20" id("net.minecrell.plugin-yml.bukkit") version "0.6.0" id("com.github.johnrengelman.shadow") version "8.1.1" } repositories { mavenCentral() maven("https://repo.papermc.io/repository/maven-public/") maven("https://repo.codemc.io/repository/maven-public/") } dependencies { compileOnly("io.papermc.paper:paper-api:1.21.3-R0.1-SNAPSHOT") implementation("net.kyori:adventure-api:4.17.0") implementation("net.kyori:adventure-text-minimessage:4.17.0") // implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.7.1") implementation("org.postgresql:postgresql:42.7.1") implementation("org.jetbrains.exposed:exposed-core:$exposedVersion") implementation("org.jetbrains.exposed:exposed-dao:$exposedVersion") implementation("org.jetbrains.exposed:exposed-jdbc:$exposedVersion") implementation("org.jetbrains.kotlinx:kotlinx-datetime:0.6.1") implementation("org.jetbrains.exposed:exposed-kotlin-datetime:$exposedVersion") compileOnly("de.tr7zw:item-nbt-api-plugin:2.14.0") implementation("com.michael-bull.kotlin-result:kotlin-result:2.0.0") } tasks { shadowJar { archiveBaseName.set("SimplyMCDB") archiveClassifier.set("") } } bukkit { main = "net.hareworks.simplymcdb.App" name = "Simply-Minecraft-DB" description = "It provides a simple way to manage player data through a database." version = getVersion().toString() apiVersion = "1.21.3" authors = listOf("Hare-K02") depend = listOf("NBTAPI") permissions { register("simplydb.*") { children = listOf("simplydb.command", "simplydb.admin") } register("simplydb.command") { description = "Allows access to the /simplydb command" default = BukkitPluginDescription.Permission.Default.TRUE } register("simplydb.command.*") { children = listOf( "simplydb.command.config", "simplydb.command.config.*", "simplydb.command.on", "simplydb.command.off", ) } register("simplydb.command.config") { description = "Allows access to the /simplydb config command" default = BukkitPluginDescription.Permission.Default.OP } register("simplydb.command.config.*") { children = listOf( "simplydb.command.config.reload", "simplydb.command.config.fetch", "simplydb.command.config.upload", ) } register("simplydb.command.config.reload") { description = "Allows access to the /simplydb config reload command" default = BukkitPluginDescription.Permission.Default.OP } register("simplydb.command.config.fetch") { description = "Allows access to the /simplydb config fetch command" default = BukkitPluginDescription.Permission.Default.OP } register("simplydb.command.config.upload") { description = "Allows access to the /simplydb config upload command" default = BukkitPluginDescription.Permission.Default.OP } register("simplydb.command.on") { description = "Allows access to the /simplydb on command" default = BukkitPluginDescription.Permission.Default.OP } register("simplydb.command.off") { description = "Allows access to the /simplydb off command" default = BukkitPluginDescription.Permission.Default.OP } register("simplydb.admin") { description = "Allows configration/manage simplydb" default = BukkitPluginDescription.Permission.Default.OP } } }