add of SR-Core and many more things
Some checks failed
Build / build (push) Failing after 1m19s

This commit is contained in:
unurled 2024-09-06 09:29:26 +02:00
parent d58e3da6ac
commit ced4c0d186
Signed by: unurled
GPG key ID: EFC5F5E709B47DDD
122 changed files with 13914 additions and 524 deletions

View file

@ -1,8 +1,10 @@
import net.minecrell.pluginyml.bukkit.BukkitPluginDescription
plugins {
`java-library`
id("io.papermc.paperweight.userdev") version "1.7.1"
id("io.github.goooler.shadow") version "8.1.7"
id("org.sonarqube") version "4.4.1.3373"
id("io.papermc.paperweight.userdev") version "1.7.2"
id("org.sonarqube") version "5.1.0.4882"
id("net.minecrell.plugin-yml.paper") version "0.6.0"
}
// from 1.20.5+ upward, spigot is not supported
@ -13,23 +15,42 @@ group = "me.unurled.sacredrealms"
version = "0.1.0"
description = "The main SR plugin."
val mcVersion = "1.21-R0.1-SNAPSHOT"
val redisVersion = "5.2.0-beta2"
val invuiVersion = "1.32"
val mcVersion = "1.21.1-R0.1-SNAPSHOT"
val redisVersion = "5.2.0-beta4"
val invuiVersion = "1.36"
val gsonVersion = "2.11.0"
val javaVersion = 21
repositories {
mavenCentral()
maven("https://repo.xenondevs.xyz/releases")
maven {
name = "invui"
url = uri("https://repo.xenondevs.xyz/releases/")
}
maven {
name = "packetevents"
url = uri("https://repo.codemc.io/repository/maven-releases/")
}
maven {
name = "unurled"
url = uri("https://repo.unurled.me/releases")
}
}
dependencies {
paperweight.paperDevBundle(mcVersion)
implementation("redis.clients:jedis:${redisVersion}")
compileOnly("xyz.xenondevs.invui:invui:${invuiVersion}")
paperLibrary("com.google.code.gson", "gson", gsonVersion)
paperLibrary("redis.clients", "jedis", redisVersion)
paperLibrary("com.github.retrooper", "packetevents-spigot", "2.4.0")
paperLibrary("me.unurled", "SR-Core", "0.1.0")
}
java {
@ -45,37 +66,92 @@ tasks {
javadoc {
options.encoding = Charsets.UTF_8.name()
}
processResources {
filteringCharset = Charsets.UTF_8.name()
val props = mapOf(
"name" to project.name,
"version" to project.version,
"description" to project.description,
"apiVersion" to "1.20"
)
inputs.properties(props)
filesMatching("paper-plugin.yml") {
expand(props)
}
}
build {
dependsOn(shadowJar)
}
shadowJar {
archiveClassifier.set("")
relocate("com.google", "libs.com.google")
relocate("org.apache", "libs.org.apache")
relocate("org.intellij", "libs.org.intellij")
relocate("org.jetbrains", "libs.org.jetbrains")
relocate("org.json", "libs.org.json")
relocate("redis", "libs.redis")
// relocate("xyz.xenondevs", "libs.xyz.xenondevs")
exclude("org.slf4j")
}
sonar {
properties {
property("sonar.projectKey", "Sacred-Realms")
property("sonar.host.url", "https://qube.unurled.me")
}
}
}
paper {
main = "me.unurled.sacredrealms.sr.SR"
bootstrapper = "me.unurled.sacredrealms.sr.SRBootstrap"
loader = "me.unurled.sacredrealms.sr.SRLoader"
hasOpenClassloader = false
generateLibrariesJson = true
foliaSupported = false
apiVersion = "1.21"
load = BukkitPluginDescription.PluginLoadOrder.STARTUP
author = "unurled"
prefix = "SR"
defaultPermission = BukkitPluginDescription.Permission.Default.OP
permissions {
register("sr.*") {
children = listOf(
"sr.tutorial",
"sr.spawn",
"sr.attributes",
"sr.clientbuild",
"sr.level",
"sr.entitytype",
"sr.spawnentity",
"sr.admin.item",
"sr.resetadventure",
"sr.treasure.manage",
"sr.difficulty.*",
"sr.cutscene"
)
description = "Gives access to all Sacred Realms permissions."
}
register("sr.tutorial") {
description = "Gives access to the tutorial command."
default = BukkitPluginDescription.Permission.Default.NOT_OP
}
register("sr.spawn") {
description = "Gives access to the spawn command."
default = BukkitPluginDescription.Permission.Default.NOT_OP
}
register("sr.attributes") {
description = "Gives access to the attributes command."
}
register("sr.clientbuild") {
description = "Gives access to the clientbuild command."
}
register("sr.level") {
description = "Gives access to the level command."
}
register("sr.entitytype") {
description = "Gives access to the entitytype command."
}
register("sr.spawnentity") {
description = "Gives access to the spawnentity command."
}
register("sr.admin.item") {
description = "Gives access to the admin item command."
}
register("sr.resetadventure") {
description = "Gives access to the resetadventure command."
}
register("sr.treasure.manage") {
description = "Gives access to the treasure manage command."
}
register("sr.difficulty.*") {
description = "Gives access to all difficulty commands."
children = listOf(
"sr.difficulty.self",
"sr.difficulty.manage"
)
}
register("sr.cutscene") {
description = "Gives access to the cutscene command."
}
}
}