From 5d615bc63e9203313923b706b22ab98ff26b1772 Mon Sep 17 00:00:00 2001 From: Denis Istratov Date: Tue, 22 Aug 2023 03:27:05 +0300 Subject: [PATCH] Added commands and messages modules --- architecture/build.gradle.kts | 8 +- commands/.gitignore | 42 ++++++ commands/build.gradle.kts | 123 ++++++++++++++++++ .../kotlinbukkitkit/commands/Polygon.kt | 9 ++ .../commands/annotations/Aliases.kt | 3 + .../commands/annotations/Command.kt | 4 + .../commands/annotations/Default.kt | 4 + .../commands/annotations/Description.kt | 4 + .../commands/annotations/Optional.kt | 4 + .../commands/annotations/Permission.kt | 4 + .../commands/annotations/SubCommand.kt | 4 + .../commands/annotations/TabComplete.kt | 4 + .../commands/annotations/Usage.kt | 4 + .../exceptions/UnsupportedTypeException.kt | 3 + .../commands/manager/CommandManager.kt | 99 ++++++++++++++ .../commands/manager/CommandRegister.kt | 47 +++++++ extensions/build.gradle.kts | 8 +- .../kotlinbukkitkit/extensions/ExPlayer.kt | 3 + .../kotlinbukkitkit/extensions/ExServer.kt | 14 +- genref/build.gradle.kts | 8 +- .../genref/plugin/PluginVisitor.kt | 14 +- .../genref/plugin/annotations/OnDisable.kt | 2 +- .../genref/plugin/annotations/Plugin.kt | 2 +- .../genref/processor/GenRefProcessor.kt | 6 +- .../genref/processor/ProcessorProvider.kt | 2 +- ...ols.ksp.processing.SymbolProcessorProvider | 2 +- messages/build.gradle.kts | 8 +- .../messages/container/Messages.java | 18 +-- .../messages/container/impl/MessagesImpl.java | 12 +- .../messages/factory/MessageFactory.java | 6 +- .../factory/impl/LegacyFactoryImpl.java | 10 +- .../factory/impl/MessageFactoryImpl.java | 12 +- .../messages/kotlin/MessagesExtensions.kt | 8 +- .../messages/kotlin/TriumphGuiExtensions.kt | 4 +- .../messages/model/AbstractMessage.java | 2 +- .../messages/model/Message.java | 2 +- .../messages/model/impl/ComponentMessage.java | 6 +- .../messages/model/impl/NullMessage.java | 4 +- .../impl/serialized/SerializedMessage.java | 6 +- .../impl/serialized/impl/LegacyMessage.java | 4 +- .../messages/utils/MD5ColorUtils.java | 2 +- .../messages/verifier/MessageVerifier.java | 2 +- .../verifier/impl/FileMessageVerifier.java | 4 +- serialization/build.gradle.kts | 8 +- settings.gradle.kts | 1 + 45 files changed, 457 insertions(+), 89 deletions(-) create mode 100644 commands/.gitignore create mode 100644 commands/build.gradle.kts create mode 100644 commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/Polygon.kt create mode 100644 commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Aliases.kt create mode 100644 commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Command.kt create mode 100644 commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Default.kt create mode 100644 commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Description.kt create mode 100644 commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Optional.kt create mode 100644 commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Permission.kt create mode 100644 commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/SubCommand.kt create mode 100644 commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/TabComplete.kt create mode 100644 commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Usage.kt create mode 100644 commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/exceptions/UnsupportedTypeException.kt create mode 100644 commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/manager/CommandManager.kt create mode 100644 commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/manager/CommandRegister.kt rename genref/src/main/kotlin/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/genref/plugin/PluginVisitor.kt (90%) rename genref/src/main/kotlin/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/genref/plugin/annotations/OnDisable.kt (61%) rename genref/src/main/kotlin/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/genref/plugin/annotations/Plugin.kt (61%) rename genref/src/main/kotlin/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/genref/processor/GenRefProcessor.kt (85%) rename genref/src/main/kotlin/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/genref/processor/ProcessorProvider.kt (88%) rename messages/src/main/java/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/messages/container/Messages.java (92%) rename messages/src/main/java/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/messages/container/impl/MessagesImpl.java (89%) rename messages/src/main/java/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/messages/factory/MessageFactory.java (62%) rename messages/src/main/java/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/messages/factory/impl/LegacyFactoryImpl.java (76%) rename messages/src/main/java/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/messages/factory/impl/MessageFactoryImpl.java (73%) rename messages/src/main/java/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/messages/kotlin/MessagesExtensions.kt (82%) rename messages/src/main/java/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/messages/kotlin/TriumphGuiExtensions.kt (64%) rename messages/src/main/java/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/messages/model/AbstractMessage.java (97%) rename messages/src/main/java/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/messages/model/Message.java (97%) rename messages/src/main/java/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/messages/model/impl/ComponentMessage.java (82%) rename messages/src/main/java/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/messages/model/impl/NullMessage.java (89%) rename messages/src/main/java/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/messages/model/impl/serialized/SerializedMessage.java (84%) rename messages/src/main/java/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/messages/model/impl/serialized/impl/LegacyMessage.java (67%) rename messages/src/main/java/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/messages/utils/MD5ColorUtils.java (94%) rename messages/src/main/java/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/messages/verifier/MessageVerifier.java (66%) rename messages/src/main/java/{me/redtea/carcadex => tech/carcadex/kotlinbukkitkit}/messages/verifier/impl/FileMessageVerifier.java (90%) diff --git a/architecture/build.gradle.kts b/architecture/build.gradle.kts index ea26dbb..429dbca 100644 --- a/architecture/build.gradle.kts +++ b/architecture/build.gradle.kts @@ -65,12 +65,12 @@ publishing { version = version name.set(globalArtifactId) description.set(globalArtifactId) - url.set("https://github.com/iRedTea/CarcadeX") + url.set("https://github.com/CarcadeX/KotlinBukkitKit") licenses { license { - name.set("GNU General Public License v3.0") - url.set("https://www.gnu.org/licenses/gpl-3.0.en.html") + name.set("MIT") + url.set("https://mit-license.org/") } } developers { @@ -83,7 +83,7 @@ publishing { scm { connection.set("scm:https://github.com/CarcadeX/$globalName.git") developerConnection.set("git@github.com:CarcadeX/$globalName.git") - url.set("https://github.com/iRedTea/CarcadeX") + url.set("https://github.com/CarcadeX/KotlinBukkitKit") } } diff --git a/commands/.gitignore b/commands/.gitignore new file mode 100644 index 0000000..b63da45 --- /dev/null +++ b/commands/.gitignore @@ -0,0 +1,42 @@ +.gradle +build/ +!gradle/wrapper/gradle-wrapper.jar +!**/src/main/**/build/ +!**/src/test/**/build/ + +### IntelliJ IDEA ### +.idea/modules.xml +.idea/jarRepositories.xml +.idea/compiler.xml +.idea/libraries/ +*.iws +*.iml +*.ipr +out/ +!**/src/main/**/out/ +!**/src/test/**/out/ + +### Eclipse ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache +bin/ +!**/src/main/**/bin/ +!**/src/test/**/bin/ + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ + +### VS Code ### +.vscode/ + +### Mac OS ### +.DS_Store \ No newline at end of file diff --git a/commands/build.gradle.kts b/commands/build.gradle.kts new file mode 100644 index 0000000..544771a --- /dev/null +++ b/commands/build.gradle.kts @@ -0,0 +1,123 @@ +plugins { + id("java") + kotlin("jvm") + id("com.github.johnrengelman.shadow") version "7.1.2" + id("maven-publish") + id("signing") +} + +group = "tech.carcadex" +val globalArtifactId = "kotlinbukkitkit-commands" +val globalName = "kotlinbukkitkit-commands" + +repositories { + mavenCentral() + maven { + name = "spigotmc-repo" + url = uri("https://hub.spigotmc.org/nexus/content/repositories/snapshots/") + } +} + +dependencies { + compileOnly("org.spigotmc:spigot-api:1.16.5-R0.1-SNAPSHOT") + compileOnly(project(":extensions")) + implementation(kotlin("reflect")) +} + +tasks.test { + useJUnitPlatform() +} + +kotlin { + jvmToolchain(8) +} + +kotlin { + sourceSets.main { + kotlin.srcDir("build/generated/ksp/main/kotlin") + } + sourceSets.test { + kotlin.srcDir("build/generated/ksp/test/kotlin") + } +} + +java { + withJavadocJar() + withSourcesJar() +} + +publishing { + publications { + create("maven") { + artifactId = globalArtifactId + groupId = "tech.carcadex" + version = version + from(components["java"]) + versionMapping { + usage("java-api") { + fromResolutionOf("runtimeClasspath") + } + usage("java-runtime") { + fromResolutionResult() + } + } + pom { + artifactId = globalArtifactId + groupId = "tech.carcadex" + version = version + name.set(globalArtifactId) + description.set(globalArtifactId) + url.set("https://github.com/CarcadeX/KotlinBukkitKit") + + licenses { + license { + name.set("MIT") + url.set("https://mit-license.org/") + } + } + developers { + developer { + id.set("itzRedTea") + name.set("Red Tea") + email.set("red__tea@outlook.com") + } + } + scm { + connection.set("scm:https://github.com/CarcadeX/$globalName.git") + developerConnection.set("git@github.com:CarcadeX/$globalName.git") + url.set("https://github.com/CarcadeX/KotlinBukkitKit") + } + } + + } + } + + + + repositories { + maven { + val releasesRepoUrl = "https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/" + val snapshotsRepoUrl = "https://s01.oss.sonatype.org/content/repositories/snapshots/" + url = uri(if (version.toString().endsWith("SNAPSHOT")) snapshotsRepoUrl else releasesRepoUrl) + credentials { + username = "itzRedTea" + password = project.findProperty("password").toString() + } + } + + } +} + +signing { + useGpgCmd() + sign(publishing.publications.getByName("maven")) +} + +tasks.shadowJar { + dependencies { + exclude { + it.moduleGroup.startsWith("org.jetbrains") + } + } + +} \ No newline at end of file diff --git a/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/Polygon.kt b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/Polygon.kt new file mode 100644 index 0000000..5298789 --- /dev/null +++ b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/Polygon.kt @@ -0,0 +1,9 @@ +package tech.carcadex.kotlinbukkitkit.commands + +import org.bukkit.command.CommandSender +import tech.carcadex.kotlinbukkitkit.commands.annotations.Command +import tech.carcadex.kotlinbukkitkit.commands.annotations.Permission +import tech.carcadex.kotlinbukkitkit.commands.manager.CommandManager + +typealias Sender = CommandSender + diff --git a/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Aliases.kt b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Aliases.kt new file mode 100644 index 0000000..3e54590 --- /dev/null +++ b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Aliases.kt @@ -0,0 +1,3 @@ +package tech.carcadex.kotlinbukkitkit.commands.annotations + +annotation class Aliases(val aliases: Array) diff --git a/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Command.kt b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Command.kt new file mode 100644 index 0000000..3147a07 --- /dev/null +++ b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Command.kt @@ -0,0 +1,4 @@ +package tech.carcadex.kotlinbukkitkit.commands.annotations + +@Retention(AnnotationRetention.RUNTIME) +annotation class Command(val name: String) diff --git a/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Default.kt b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Default.kt new file mode 100644 index 0000000..e56792b --- /dev/null +++ b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Default.kt @@ -0,0 +1,4 @@ +package tech.carcadex.kotlinbukkitkit.commands.annotations + +@Retention(AnnotationRetention.RUNTIME) +annotation class Default() diff --git a/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Description.kt b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Description.kt new file mode 100644 index 0000000..0b0a25d --- /dev/null +++ b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Description.kt @@ -0,0 +1,4 @@ +package tech.carcadex.kotlinbukkitkit.commands.annotations + +@Retention(AnnotationRetention.RUNTIME) +annotation class Description(val desc: String) diff --git a/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Optional.kt b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Optional.kt new file mode 100644 index 0000000..564d2ba --- /dev/null +++ b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Optional.kt @@ -0,0 +1,4 @@ +package tech.carcadex.kotlinbukkitkit.commands.annotations + +@Retention(AnnotationRetention.RUNTIME) +annotation class Optional() diff --git a/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Permission.kt b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Permission.kt new file mode 100644 index 0000000..6b4cf9b --- /dev/null +++ b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Permission.kt @@ -0,0 +1,4 @@ +package tech.carcadex.kotlinbukkitkit.commands.annotations + +@Retention(AnnotationRetention.RUNTIME) +annotation class Permission(val perm: String) diff --git a/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/SubCommand.kt b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/SubCommand.kt new file mode 100644 index 0000000..b607f32 --- /dev/null +++ b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/SubCommand.kt @@ -0,0 +1,4 @@ +package tech.carcadex.kotlinbukkitkit.commands.annotations + +@Retention(AnnotationRetention.RUNTIME) +annotation class SubCommand(val name: String) diff --git a/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/TabComplete.kt b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/TabComplete.kt new file mode 100644 index 0000000..b7ffec9 --- /dev/null +++ b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/TabComplete.kt @@ -0,0 +1,4 @@ +package tech.carcadex.kotlinbukkitkit.commands.annotations + +@Retention(AnnotationRetention.RUNTIME) +annotation class TabComplete(val complete: Array) diff --git a/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Usage.kt b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Usage.kt new file mode 100644 index 0000000..3b824c1 --- /dev/null +++ b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/annotations/Usage.kt @@ -0,0 +1,4 @@ +package tech.carcadex.kotlinbukkitkit.commands.annotations + +@Retention(AnnotationRetention.RUNTIME) +annotation class Usage(val usage: String) diff --git a/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/exceptions/UnsupportedTypeException.kt b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/exceptions/UnsupportedTypeException.kt new file mode 100644 index 0000000..62e659f --- /dev/null +++ b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/exceptions/UnsupportedTypeException.kt @@ -0,0 +1,3 @@ +package tech.carcadex.kotlinbukkitkit.commands.exceptions + +class UnsupportedTypeException(msg: String) : RuntimeException(msg) \ No newline at end of file diff --git a/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/manager/CommandManager.kt b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/manager/CommandManager.kt new file mode 100644 index 0000000..7951030 --- /dev/null +++ b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/manager/CommandManager.kt @@ -0,0 +1,99 @@ +package tech.carcadex.kotlinbukkitkit.commands.manager + +import org.bukkit.Bukkit +import org.bukkit.Material +import org.bukkit.OfflinePlayer +import org.bukkit.World +import org.bukkit.command.CommandExecutor +import org.bukkit.command.CommandSender +import org.bukkit.entity.Player +import org.bukkit.plugin.Plugin +import tech.carcadex.kotlinbukkitkit.commands.annotations.Command +import tech.carcadex.kotlinbukkitkit.commands.exceptions.UnsupportedTypeException +import tech.carcadex.kotlinbukkitkit.extensions.offlinePlayerOrNull +import kotlin.reflect.KClass +import kotlin.reflect.KFunction +import kotlin.reflect.KParameter +import kotlin.reflect.KType +import kotlin.reflect.full.callSuspendBy +import kotlin.reflect.full.findAnnotations +import kotlin.reflect.full.hasAnnotation +import kotlin.reflect.full.isSubtypeOf +import kotlin.reflect.jvm.javaType + +class CommandManager(val plugin: Plugin) { + private val types = mutableMapOf Any?>() + + init { + types[CommandSender::class.qualifiedName!!] = { it } + types[String::class.qualifiedName!!] = { it } + types["java.lang.String"] = { it } + types[Int::class.qualifiedName!!] = { it.toInt() } + types["java.lang.Integer"] = { it.toInt() } + types[UInt::class.qualifiedName!!] = { it.toUInt() } + types[Long::class.qualifiedName!!] = { it.toLong() } + types["java.lang.Long"] = { it.toInt() } + types[ULong::class.qualifiedName!!] = { it.toULong() } + types[Short::class.qualifiedName!!] = { it.toShort() } + types["java.lang.Short"] = { it.toInt() } + types[UShort::class.qualifiedName!!] = { it.toUShort() } + types[Float::class.qualifiedName!!] = { it.toFloat() } + types["java.lang.Float"] = { it.toInt() } + types[Double::class.qualifiedName!!] = { it.toDouble() } + types["java.lang.Double"] = { it.toInt() } + types[Byte::class.qualifiedName!!] = { it.toByte() } + types["java.lang.Byte"] = { it.toInt() } + types[UByte::class.qualifiedName!!] = { it.toUByte() } + types[Boolean::class.qualifiedName!!] = { it.toBoolean() } + types["java.lang.Boolean"] = { it.toInt() } + + types[Player::class.qualifiedName!!] = { Bukkit.getPlayer(it) } + types[OfflinePlayer::class.qualifiedName!!] = { offlinePlayerOrNull(it) } + types[World::class.qualifiedName!!] = { Bukkit.getWorld(it) } + types[Material::class.qualifiedName!!] = { Material.matchMaterial(it) } + } + + private fun register(commandExecutor: CommandExecutor, aliases: Array, + desc: String = "", usage: String = "") { + CommandRegister.reg(plugin, commandExecutor, aliases, desc, usage); + } + fun register(f: KFunction) { + if(f.hasAnnotation()) { + val cmdName = f.findAnnotations().first().name + val argsParsers = mutableListOf<(String) -> Any?>({ + return@mutableListOf types[CommandSender::class.qualifiedName!!]!!(it) + }) + + for (argType in f.parameters) { + val clazz = Class.forName(argType.type.javaType.typeName) + if(argType.type.javaType.typeName in this.types) { + argsParsers.add(this.types[argType.type.javaType.typeName]!!) + } else if(!clazz.isEnum) throw UnsupportedTypeException("Type ${argType.type.javaType.typeName} is not supported") else { + argsParsers.add { + for(e in clazz.enumConstants) { + if((e as Enum<*>).name.equals(it, ignoreCase = true)) return@add e; + } + throw NoSuchElementException("No such value in enum") + } + } + } + + register(CommandExecutor { sender, command, label, args -> + val finalArgs = mutableListOf(sender) + finalArgs.addAll(args.mapIndexed { i, it -> argsParsers[i](it) }) + val map = mutableMapOf() + var i = 0; + for(arg in finalArgs) { + map[f.parameters[i]] = arg + ++i + } + f.callBy(map) + return@CommandExecutor true; + }, arrayOf(cmdName)) + } else throw IllegalArgumentException("It must be a command!") + } + + fun type(clazz: KClass<*>, converter: (String) -> Any) { + types[clazz.qualifiedName!!] = converter + } +} \ No newline at end of file diff --git a/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/manager/CommandRegister.kt b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/manager/CommandRegister.kt new file mode 100644 index 0000000..f4b1ba5 --- /dev/null +++ b/commands/src/main/kotlin/tech/carcadex/kotlinbukkitkit/commands/manager/CommandRegister.kt @@ -0,0 +1,47 @@ +package tech.carcadex.kotlinbukkitkit.commands.manager + +import org.bukkit.Bukkit +import org.bukkit.command.* +import org.bukkit.plugin.Plugin +import java.util.* + + +class CommandRegister( + aliases: Array, + desc: String?, + usage: String?, + protected val owner: CommandExecutor, + protected val registeredWith: Any, + val pl: Plugin +) : Command(aliases[0], desc!!, usage!!, Arrays.asList(*aliases)), PluginIdentifiableCommand { + + + override fun execute(sender: CommandSender, label: String, args: Array): Boolean { + if (!testPermission(sender)) { + return true + } + return if (owner.onCommand(sender, this, label, args)) { + true + } else { + sender.sendMessage(usageMessage) + false + } + } + + companion object { + fun reg(plugin: Plugin, executor: CommandExecutor, aliases: Array, desc: String?, usage: String?) { + if(aliases.size < 1) throw IllegalArgumentException("Could not found name") + try { + val reg = CommandRegister(aliases, desc, usage, executor, Any(), plugin) + val field = Bukkit.getServer().javaClass.getDeclaredField("commandMap") + field.isAccessible = true + val map = field[Bukkit.getServer()] as CommandMap + map.register(plugin.description.name, reg) + } catch (e: Exception) { + e.printStackTrace() + } + } + } + + override fun getPlugin(): Plugin = pl +} \ No newline at end of file diff --git a/extensions/build.gradle.kts b/extensions/build.gradle.kts index cd6c711..206a499 100644 --- a/extensions/build.gradle.kts +++ b/extensions/build.gradle.kts @@ -66,12 +66,12 @@ publishing { version = version name.set(globalArtifactId) description.set(globalArtifactId) - url.set("https://github.com/iRedTea/CarcadeX") + url.set("https://github.com/CarcadeX/KotlinBukkitKit") licenses { license { - name.set("GNU General Public License v3.0") - url.set("https://www.gnu.org/licenses/gpl-3.0.en.html") + name.set("MIT") + url.set("https://mit-license.org/") } } developers { @@ -84,7 +84,7 @@ publishing { scm { connection.set("scm:https://github.com/CarcadeX/$globalName.git") developerConnection.set("git@github.com:CarcadeX/$globalName.git") - url.set("https://github.com/iRedTea/CarcadeX") + url.set("https://github.com/CarcadeX/KotlinBukkitKit") } } diff --git a/extensions/src/main/kotlin/tech/carcadex/kotlinbukkitkit/extensions/ExPlayer.kt b/extensions/src/main/kotlin/tech/carcadex/kotlinbukkitkit/extensions/ExPlayer.kt index 7836237..709cbcc 100644 --- a/extensions/src/main/kotlin/tech/carcadex/kotlinbukkitkit/extensions/ExPlayer.kt +++ b/extensions/src/main/kotlin/tech/carcadex/kotlinbukkitkit/extensions/ExPlayer.kt @@ -8,10 +8,12 @@ Thanks DevSrSouza for KotlinBukkitAPI package tech.carcadex.kotlinbukkitkit.extensions +import org.bukkit.Bukkit import org.bukkit.Effect import org.bukkit.Instrument import org.bukkit.Material import org.bukkit.Note +import org.bukkit.OfflinePlayer import org.bukkit.Sound import org.bukkit.command.CommandSender import org.bukkit.entity.Player @@ -42,3 +44,4 @@ public fun Player.resetWalkSpeed() { public fun Player.resetFlySpeed() { flySpeed = 0.1f } + diff --git a/extensions/src/main/kotlin/tech/carcadex/kotlinbukkitkit/extensions/ExServer.kt b/extensions/src/main/kotlin/tech/carcadex/kotlinbukkitkit/extensions/ExServer.kt index d9ac671..e9a467d 100644 --- a/extensions/src/main/kotlin/tech/carcadex/kotlinbukkitkit/extensions/ExServer.kt +++ b/extensions/src/main/kotlin/tech/carcadex/kotlinbukkitkit/extensions/ExServer.kt @@ -7,10 +7,7 @@ Thanks DevSrSouza for KotlinBukkitAPI */ package tech.carcadex.kotlinbukkitkit.extensions -import org.bukkit.GameMode -import org.bukkit.OfflinePlayer -import org.bukkit.World -import org.bukkit.WorldCreator +import org.bukkit.* import org.bukkit.entity.Player import org.bukkit.inventory.ItemStack import org.bukkit.inventory.Recipe @@ -26,6 +23,15 @@ public val isPrimaryThread: Boolean get() = server.isPrimaryThread public fun offlinePlayer(uuid: UUID): OfflinePlayer = server.getOfflinePlayer(uuid) public fun offlinePlayer(name: String): OfflinePlayer = server.getOfflinePlayer(name) +public fun offlinePlayerOrNull(name: String, ignoreCase: Boolean = false): OfflinePlayer? { + val onlinePlayer = Bukkit.getPlayer(name) + if(onlinePlayer != null) return onlinePlayer + + for(player in Bukkit.getOfflinePlayers()) { + if(player.name.equals(name, ignoreCase = ignoreCase)) return player + } + return null +} public fun player(uuid: UUID): Player? = server.getPlayer(uuid) public fun player(name: String): Player? = server.getPlayer(name) diff --git a/genref/build.gradle.kts b/genref/build.gradle.kts index 3046568..e578740 100644 --- a/genref/build.gradle.kts +++ b/genref/build.gradle.kts @@ -69,12 +69,12 @@ publishing { version = version name.set(globalArtifactId) description.set(globalArtifactId) - url.set("https://github.com/iRedTea/CarcadeX") + url.set("https://github.com/CarcadeX/KotlinBukkitKit") licenses { license { - name.set("GNU General Public License v3.0") - url.set("https://www.gnu.org/licenses/gpl-3.0.en.html") + name.set("MIT") + url.set("https://mit-license.org/") } } developers { @@ -87,7 +87,7 @@ publishing { scm { connection.set("scm:https://github.com/CarcadeX/$globalName.git") developerConnection.set("git@github.com:CarcadeX/$globalName.git") - url.set("https://github.com/iRedTea/CarcadeX") + url.set("https://github.com/CarcadeX/KotlinBukkitKit") } } diff --git a/genref/src/main/kotlin/me/redtea/carcadex/genref/plugin/PluginVisitor.kt b/genref/src/main/kotlin/tech/carcadex/kotlinbukkitkit/genref/plugin/PluginVisitor.kt similarity index 90% rename from genref/src/main/kotlin/me/redtea/carcadex/genref/plugin/PluginVisitor.kt rename to genref/src/main/kotlin/tech/carcadex/kotlinbukkitkit/genref/plugin/PluginVisitor.kt index 163190c..b0826d8 100644 --- a/genref/src/main/kotlin/me/redtea/carcadex/genref/plugin/PluginVisitor.kt +++ b/genref/src/main/kotlin/tech/carcadex/kotlinbukkitkit/genref/plugin/PluginVisitor.kt @@ -1,8 +1,9 @@ -package me.redtea.carcadex.genref.plugin +package tech.carcadex.kotlinbukkitkit.genref.plugin import com.google.devtools.ksp.KspExperimental import com.google.devtools.ksp.getAnnotationsByType import com.google.devtools.ksp.processing.CodeGenerator +import com.google.devtools.ksp.processing.Dependencies import com.google.devtools.ksp.processing.KSPLogger import com.google.devtools.ksp.symbol.KSFile import com.google.devtools.ksp.symbol.KSFunctionDeclaration @@ -10,8 +11,8 @@ import com.google.devtools.ksp.symbol.KSVisitorVoid import com.squareup.kotlinpoet.* import com.squareup.kotlinpoet.ksp.KotlinPoetKspPreview import com.squareup.kotlinpoet.ksp.writeTo -import me.redtea.carcadex.genref.plugin.annotations.OnDisable -import me.redtea.carcadex.genref.plugin.annotations.Plugin +import tech.carcadex.kotlinbukkitkit.genref.plugin.annotations.OnDisable +import tech.carcadex.kotlinbukkitkit.genref.plugin.annotations.Plugin import tech.carcadex.kotlinbukkitkit.architecture.KotlinPlugin @OptIn(KotlinPoetKspPreview::class) @@ -54,10 +55,9 @@ class PluginVisitor(private val codeGenerator: CodeGenerator, .build() ) }.build() - try { - fileSpec.writeTo(codeGenerator, true) - } catch (ignored: FileAlreadyExistsException) { - } + + //todo try catch? + fileSpec.writeTo(codeGenerator, Dependencies(false)) } @OptIn(KspExperimental::class) diff --git a/genref/src/main/kotlin/me/redtea/carcadex/genref/plugin/annotations/OnDisable.kt b/genref/src/main/kotlin/tech/carcadex/kotlinbukkitkit/genref/plugin/annotations/OnDisable.kt similarity index 61% rename from genref/src/main/kotlin/me/redtea/carcadex/genref/plugin/annotations/OnDisable.kt rename to genref/src/main/kotlin/tech/carcadex/kotlinbukkitkit/genref/plugin/annotations/OnDisable.kt index 86adc59..c00d572 100644 --- a/genref/src/main/kotlin/me/redtea/carcadex/genref/plugin/annotations/OnDisable.kt +++ b/genref/src/main/kotlin/tech/carcadex/kotlinbukkitkit/genref/plugin/annotations/OnDisable.kt @@ -1,4 +1,4 @@ -package me.redtea.carcadex.genref.plugin.annotations +package tech.carcadex.kotlinbukkitkit.genref.plugin.annotations @Target(AnnotationTarget.FUNCTION) @Retention(AnnotationRetention.SOURCE) diff --git a/genref/src/main/kotlin/me/redtea/carcadex/genref/plugin/annotations/Plugin.kt b/genref/src/main/kotlin/tech/carcadex/kotlinbukkitkit/genref/plugin/annotations/Plugin.kt similarity index 61% rename from genref/src/main/kotlin/me/redtea/carcadex/genref/plugin/annotations/Plugin.kt rename to genref/src/main/kotlin/tech/carcadex/kotlinbukkitkit/genref/plugin/annotations/Plugin.kt index d28356f..e144c41 100644 --- a/genref/src/main/kotlin/me/redtea/carcadex/genref/plugin/annotations/Plugin.kt +++ b/genref/src/main/kotlin/tech/carcadex/kotlinbukkitkit/genref/plugin/annotations/Plugin.kt @@ -1,4 +1,4 @@ -package me.redtea.carcadex.genref.plugin.annotations +package tech.carcadex.kotlinbukkitkit.genref.plugin.annotations @Target(AnnotationTarget.FUNCTION) @Retention(AnnotationRetention.SOURCE) diff --git a/genref/src/main/kotlin/me/redtea/carcadex/genref/processor/GenRefProcessor.kt b/genref/src/main/kotlin/tech/carcadex/kotlinbukkitkit/genref/processor/GenRefProcessor.kt similarity index 85% rename from genref/src/main/kotlin/me/redtea/carcadex/genref/processor/GenRefProcessor.kt rename to genref/src/main/kotlin/tech/carcadex/kotlinbukkitkit/genref/processor/GenRefProcessor.kt index 579909c..930180f 100644 --- a/genref/src/main/kotlin/me/redtea/carcadex/genref/processor/GenRefProcessor.kt +++ b/genref/src/main/kotlin/tech/carcadex/kotlinbukkitkit/genref/processor/GenRefProcessor.kt @@ -1,4 +1,4 @@ -package me.redtea.carcadex.genref.processor +package tech.carcadex.kotlinbukkitkit.genref.processor import com.google.devtools.ksp.KspExperimental import com.google.devtools.ksp.isAnnotationPresent @@ -9,8 +9,8 @@ import com.google.devtools.ksp.processing.SymbolProcessor import com.google.devtools.ksp.symbol.KSAnnotated import com.google.devtools.ksp.symbol.KSFunctionDeclaration import com.google.devtools.ksp.validate -import me.redtea.carcadex.genref.plugin.PluginVisitor -import me.redtea.carcadex.genref.plugin.annotations.Plugin +import tech.carcadex.kotlinbukkitkit.genref.plugin.PluginVisitor +import tech.carcadex.kotlinbukkitkit.genref.plugin.annotations.Plugin class GenRefProcessor(private val codeGenerator: CodeGenerator, private val logger: KSPLogger) : SymbolProcessor { diff --git a/genref/src/main/kotlin/me/redtea/carcadex/genref/processor/ProcessorProvider.kt b/genref/src/main/kotlin/tech/carcadex/kotlinbukkitkit/genref/processor/ProcessorProvider.kt similarity index 88% rename from genref/src/main/kotlin/me/redtea/carcadex/genref/processor/ProcessorProvider.kt rename to genref/src/main/kotlin/tech/carcadex/kotlinbukkitkit/genref/processor/ProcessorProvider.kt index 0c583cc..99e488d 100644 --- a/genref/src/main/kotlin/me/redtea/carcadex/genref/processor/ProcessorProvider.kt +++ b/genref/src/main/kotlin/tech/carcadex/kotlinbukkitkit/genref/processor/ProcessorProvider.kt @@ -1,4 +1,4 @@ -package me.redtea.carcadex.genref.processor +package tech.carcadex.kotlinbukkitkit.genref.processor import com.google.devtools.ksp.processing.SymbolProcessor import com.google.devtools.ksp.processing.SymbolProcessorEnvironment diff --git a/genref/src/main/resources/META-INF/services/com.google.devtools.ksp.processing.SymbolProcessorProvider b/genref/src/main/resources/META-INF/services/com.google.devtools.ksp.processing.SymbolProcessorProvider index 3b1b8f6..a680745 100644 --- a/genref/src/main/resources/META-INF/services/com.google.devtools.ksp.processing.SymbolProcessorProvider +++ b/genref/src/main/resources/META-INF/services/com.google.devtools.ksp.processing.SymbolProcessorProvider @@ -1 +1 @@ -me.redtea.carcadex.genref.processor.ProcessorProvider \ No newline at end of file +tech.carcadex.kotlinbukkitkit.genref.processor.ProcessorProvider \ No newline at end of file diff --git a/messages/build.gradle.kts b/messages/build.gradle.kts index 4432378..188cf0d 100644 --- a/messages/build.gradle.kts +++ b/messages/build.gradle.kts @@ -76,12 +76,12 @@ publishing { version = version name.set(globalArtifactId) description.set(globalArtifactId) - url.set("https://github.com/iRedTea/CarcadeX") + url.set("https://github.com/CarcadeX/KotlinBukkitKit") licenses { license { - name.set("GNU General Public License v3.0") - url.set("https://www.gnu.org/licenses/gpl-3.0.en.html") + name.set("MIT") + url.set("https://mit-license.org/") } } developers { @@ -94,7 +94,7 @@ publishing { scm { connection.set("scm:https://github.com/CarcadeX/$globalName.git") developerConnection.set("git@github.com:CarcadeX/$globalName.git") - url.set("https://github.com/iRedTea/CarcadeX") + url.set("https://github.com/CarcadeX/KotlinBukkitKit") } } diff --git a/messages/src/main/java/me/redtea/carcadex/messages/container/Messages.java b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/container/Messages.java similarity index 92% rename from messages/src/main/java/me/redtea/carcadex/messages/container/Messages.java rename to messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/container/Messages.java index 7cb8ee7..72d9a10 100644 --- a/messages/src/main/java/me/redtea/carcadex/messages/container/Messages.java +++ b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/container/Messages.java @@ -1,13 +1,13 @@ -package me.redtea.carcadex.messages.container; +package tech.carcadex.kotlinbukkitkit.messages.container; -import me.redtea.carcadex.messages.factory.impl.MessageFactoryImpl; -import me.redtea.carcadex.messages.model.Message; -import me.redtea.carcadex.messages.container.impl.MessagesImpl; -import me.redtea.carcadex.messages.factory.MessageFactory; -import me.redtea.carcadex.messages.factory.impl.LegacyFactoryImpl; -import me.redtea.carcadex.messages.model.impl.NullMessage; -import me.redtea.carcadex.messages.verifier.MessageVerifier; -import me.redtea.carcadex.messages.verifier.impl.FileMessageVerifier; +import tech.carcadex.kotlinbukkitkit.messages.factory.impl.MessageFactoryImpl; +import tech.carcadex.kotlinbukkitkit.messages.model.Message; +import tech.carcadex.kotlinbukkitkit.messages.container.impl.MessagesImpl; +import tech.carcadex.kotlinbukkitkit.messages.factory.MessageFactory; +import tech.carcadex.kotlinbukkitkit.messages.factory.impl.LegacyFactoryImpl; +import tech.carcadex.kotlinbukkitkit.messages.model.impl.NullMessage; +import tech.carcadex.kotlinbukkitkit.messages.verifier.MessageVerifier; +import tech.carcadex.kotlinbukkitkit.messages.verifier.impl.FileMessageVerifier; import org.bukkit.configuration.ConfigurationSection; import org.bukkit.configuration.file.YamlConfiguration; import org.bukkit.plugin.Plugin; diff --git a/messages/src/main/java/me/redtea/carcadex/messages/container/impl/MessagesImpl.java b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/container/impl/MessagesImpl.java similarity index 89% rename from messages/src/main/java/me/redtea/carcadex/messages/container/impl/MessagesImpl.java rename to messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/container/impl/MessagesImpl.java index 4945ece..44df7c8 100644 --- a/messages/src/main/java/me/redtea/carcadex/messages/container/impl/MessagesImpl.java +++ b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/container/impl/MessagesImpl.java @@ -1,10 +1,10 @@ -package me.redtea.carcadex.messages.container.impl; +package tech.carcadex.kotlinbukkitkit.messages.container.impl; -import me.redtea.carcadex.messages.container.Messages; -import me.redtea.carcadex.messages.model.Message; -import me.redtea.carcadex.messages.factory.MessageFactory; -import me.redtea.carcadex.messages.model.impl.NullMessage; -import me.redtea.carcadex.messages.verifier.MessageVerifier; +import tech.carcadex.kotlinbukkitkit.messages.container.Messages; +import tech.carcadex.kotlinbukkitkit.messages.model.Message; +import tech.carcadex.kotlinbukkitkit.messages.factory.MessageFactory; +import tech.carcadex.kotlinbukkitkit.messages.model.impl.NullMessage; +import tech.carcadex.kotlinbukkitkit.messages.verifier.MessageVerifier; import org.bukkit.configuration.ConfigurationSection; import org.bukkit.configuration.file.YamlConfiguration; import org.jetbrains.annotations.NotNull; diff --git a/messages/src/main/java/me/redtea/carcadex/messages/factory/MessageFactory.java b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/factory/MessageFactory.java similarity index 62% rename from messages/src/main/java/me/redtea/carcadex/messages/factory/MessageFactory.java rename to messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/factory/MessageFactory.java index fb0d5b1..64e314e 100644 --- a/messages/src/main/java/me/redtea/carcadex/messages/factory/MessageFactory.java +++ b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/factory/MessageFactory.java @@ -1,7 +1,7 @@ -package me.redtea.carcadex.messages.factory; +package tech.carcadex.kotlinbukkitkit.messages.factory; -import me.redtea.carcadex.messages.container.Messages; -import me.redtea.carcadex.messages.model.Message; +import tech.carcadex.kotlinbukkitkit.messages.container.Messages; +import tech.carcadex.kotlinbukkitkit.messages.model.Message; import java.util.List; diff --git a/messages/src/main/java/me/redtea/carcadex/messages/factory/impl/LegacyFactoryImpl.java b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/factory/impl/LegacyFactoryImpl.java similarity index 76% rename from messages/src/main/java/me/redtea/carcadex/messages/factory/impl/LegacyFactoryImpl.java rename to messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/factory/impl/LegacyFactoryImpl.java index f78d45e..3ae707e 100644 --- a/messages/src/main/java/me/redtea/carcadex/messages/factory/impl/LegacyFactoryImpl.java +++ b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/factory/impl/LegacyFactoryImpl.java @@ -1,10 +1,10 @@ -package me.redtea.carcadex.messages.factory.impl; +package tech.carcadex.kotlinbukkitkit.messages.factory.impl; import com.google.common.collect.Lists; -import me.redtea.carcadex.messages.model.Message; -import me.redtea.carcadex.messages.utils.MD5ColorUtils; -import me.redtea.carcadex.messages.factory.MessageFactory; -import me.redtea.carcadex.messages.model.impl.serialized.impl.LegacyMessage; +import tech.carcadex.kotlinbukkitkit.messages.model.Message; +import tech.carcadex.kotlinbukkitkit.messages.utils.MD5ColorUtils; +import tech.carcadex.kotlinbukkitkit.messages.factory.MessageFactory; +import tech.carcadex.kotlinbukkitkit.messages.model.impl.serialized.impl.LegacyMessage; import org.bukkit.plugin.Plugin; import java.util.List; diff --git a/messages/src/main/java/me/redtea/carcadex/messages/factory/impl/MessageFactoryImpl.java b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/factory/impl/MessageFactoryImpl.java similarity index 73% rename from messages/src/main/java/me/redtea/carcadex/messages/factory/impl/MessageFactoryImpl.java rename to messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/factory/impl/MessageFactoryImpl.java index 854805d..cb3b944 100644 --- a/messages/src/main/java/me/redtea/carcadex/messages/factory/impl/MessageFactoryImpl.java +++ b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/factory/impl/MessageFactoryImpl.java @@ -1,11 +1,11 @@ -package me.redtea.carcadex.messages.factory.impl; +package tech.carcadex.kotlinbukkitkit.messages.factory.impl; import com.google.common.collect.Lists; -import me.redtea.carcadex.messages.model.Message; -import me.redtea.carcadex.messages.utils.MD5ColorUtils; -import me.redtea.carcadex.messages.factory.MessageFactory; -import me.redtea.carcadex.messages.model.impl.ComponentMessage; -import me.redtea.carcadex.messages.model.impl.serialized.impl.LegacyMessage; +import tech.carcadex.kotlinbukkitkit.messages.model.Message; +import tech.carcadex.kotlinbukkitkit.messages.utils.MD5ColorUtils; +import tech.carcadex.kotlinbukkitkit.messages.factory.MessageFactory; +import tech.carcadex.kotlinbukkitkit.messages.model.impl.ComponentMessage; +import tech.carcadex.kotlinbukkitkit.messages.model.impl.serialized.impl.LegacyMessage; import org.bukkit.plugin.Plugin; import java.util.List; diff --git a/messages/src/main/java/me/redtea/carcadex/messages/kotlin/MessagesExtensions.kt b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/kotlin/MessagesExtensions.kt similarity index 82% rename from messages/src/main/java/me/redtea/carcadex/messages/kotlin/MessagesExtensions.kt rename to messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/kotlin/MessagesExtensions.kt index 77afa94..5427424 100644 --- a/messages/src/main/java/me/redtea/carcadex/messages/kotlin/MessagesExtensions.kt +++ b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/kotlin/MessagesExtensions.kt @@ -1,8 +1,8 @@ -package me.redtea.carcadex.messages.kotlin +package tech.carcadex.kotlinbukkitkit.messages.kotlin -import me.redtea.carcadex.messages.container.Messages -import me.redtea.carcadex.messages.model.Message -import me.redtea.carcadex.messages.verifier.MessageVerifier +import tech.carcadex.kotlinbukkitkit.messages.container.Messages +import tech.carcadex.kotlinbukkitkit.messages.model.Message +import tech.carcadex.kotlinbukkitkit.messages.verifier.MessageVerifier import org.bukkit.command.CommandSender import org.bukkit.plugin.Plugin import java.io.File diff --git a/messages/src/main/java/me/redtea/carcadex/messages/kotlin/TriumphGuiExtensions.kt b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/kotlin/TriumphGuiExtensions.kt similarity index 64% rename from messages/src/main/java/me/redtea/carcadex/messages/kotlin/TriumphGuiExtensions.kt rename to messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/kotlin/TriumphGuiExtensions.kt index 5105cf6..af3ea87 100644 --- a/messages/src/main/java/me/redtea/carcadex/messages/kotlin/TriumphGuiExtensions.kt +++ b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/kotlin/TriumphGuiExtensions.kt @@ -1,7 +1,7 @@ -package me.redtea.carcadex.messages.kotlin +package tech.carcadex.kotlinbukkitkit.messages.kotlin import dev.triumphteam.gui.builder.item.ItemBuilder -import me.redtea.carcadex.messages.model.Message +import tech.carcadex.kotlinbukkitkit.messages.model.Message fun ItemBuilder.name(message: Message) = this.name(message.asComponent()) diff --git a/messages/src/main/java/me/redtea/carcadex/messages/model/AbstractMessage.java b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/AbstractMessage.java similarity index 97% rename from messages/src/main/java/me/redtea/carcadex/messages/model/AbstractMessage.java rename to messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/AbstractMessage.java index 4d8404d..d54a4ba 100644 --- a/messages/src/main/java/me/redtea/carcadex/messages/model/AbstractMessage.java +++ b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/AbstractMessage.java @@ -1,4 +1,4 @@ -package me.redtea.carcadex.messages.model; +package tech.carcadex.kotlinbukkitkit.messages.model; import com.cryptomorin.xseries.XMaterial; import net.kyori.adventure.audience.Audience; diff --git a/messages/src/main/java/me/redtea/carcadex/messages/model/Message.java b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/Message.java similarity index 97% rename from messages/src/main/java/me/redtea/carcadex/messages/model/Message.java rename to messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/Message.java index 8df3d69..5c935e4 100644 --- a/messages/src/main/java/me/redtea/carcadex/messages/model/Message.java +++ b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/Message.java @@ -1,4 +1,4 @@ -package me.redtea.carcadex.messages.model; +package tech.carcadex.kotlinbukkitkit.messages.model; import com.cryptomorin.xseries.XMaterial; import net.kyori.adventure.text.Component; diff --git a/messages/src/main/java/me/redtea/carcadex/messages/model/impl/ComponentMessage.java b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/impl/ComponentMessage.java similarity index 82% rename from messages/src/main/java/me/redtea/carcadex/messages/model/impl/ComponentMessage.java rename to messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/impl/ComponentMessage.java index bf4abdc..3d837dc 100644 --- a/messages/src/main/java/me/redtea/carcadex/messages/model/impl/ComponentMessage.java +++ b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/impl/ComponentMessage.java @@ -1,7 +1,7 @@ -package me.redtea.carcadex.messages.model.impl; +package tech.carcadex.kotlinbukkitkit.messages.model.impl; -import me.redtea.carcadex.messages.model.AbstractMessage; -import me.redtea.carcadex.messages.model.Message; +import tech.carcadex.kotlinbukkitkit.messages.model.AbstractMessage; +import tech.carcadex.kotlinbukkitkit.messages.model.Message; import net.kyori.adventure.text.Component; import net.kyori.adventure.text.minimessage.MiniMessage; import org.bukkit.plugin.Plugin; diff --git a/messages/src/main/java/me/redtea/carcadex/messages/model/impl/NullMessage.java b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/impl/NullMessage.java similarity index 89% rename from messages/src/main/java/me/redtea/carcadex/messages/model/impl/NullMessage.java rename to messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/impl/NullMessage.java index 4d1791b..ad4a281 100644 --- a/messages/src/main/java/me/redtea/carcadex/messages/model/impl/NullMessage.java +++ b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/impl/NullMessage.java @@ -1,7 +1,7 @@ -package me.redtea.carcadex.messages.model.impl; +package tech.carcadex.kotlinbukkitkit.messages.model.impl; import com.cryptomorin.xseries.XMaterial; -import me.redtea.carcadex.messages.model.Message; +import tech.carcadex.kotlinbukkitkit.messages.model.Message; import net.kyori.adventure.text.Component; import org.bukkit.command.CommandSender; import org.jetbrains.annotations.NotNull; diff --git a/messages/src/main/java/me/redtea/carcadex/messages/model/impl/serialized/SerializedMessage.java b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/impl/serialized/SerializedMessage.java similarity index 84% rename from messages/src/main/java/me/redtea/carcadex/messages/model/impl/serialized/SerializedMessage.java rename to messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/impl/serialized/SerializedMessage.java index b6f103c..2efb245 100644 --- a/messages/src/main/java/me/redtea/carcadex/messages/model/impl/serialized/SerializedMessage.java +++ b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/impl/serialized/SerializedMessage.java @@ -1,7 +1,7 @@ -package me.redtea.carcadex.messages.model.impl.serialized; +package tech.carcadex.kotlinbukkitkit.messages.model.impl.serialized; -import me.redtea.carcadex.messages.model.AbstractMessage; -import me.redtea.carcadex.messages.model.Message; +import tech.carcadex.kotlinbukkitkit.messages.model.AbstractMessage; +import tech.carcadex.kotlinbukkitkit.messages.model.Message; import net.kyori.adventure.text.Component; import net.kyori.adventure.text.TextComponent; import net.kyori.adventure.text.serializer.ComponentSerializer; diff --git a/messages/src/main/java/me/redtea/carcadex/messages/model/impl/serialized/impl/LegacyMessage.java b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/impl/serialized/impl/LegacyMessage.java similarity index 67% rename from messages/src/main/java/me/redtea/carcadex/messages/model/impl/serialized/impl/LegacyMessage.java rename to messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/impl/serialized/impl/LegacyMessage.java index a1fcf02..de9ce3f 100644 --- a/messages/src/main/java/me/redtea/carcadex/messages/model/impl/serialized/impl/LegacyMessage.java +++ b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/model/impl/serialized/impl/LegacyMessage.java @@ -1,6 +1,6 @@ -package me.redtea.carcadex.messages.model.impl.serialized.impl; +package tech.carcadex.kotlinbukkitkit.messages.model.impl.serialized.impl; -import me.redtea.carcadex.messages.model.impl.serialized.SerializedMessage; +import tech.carcadex.kotlinbukkitkit.messages.model.impl.serialized.SerializedMessage; import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer; import org.bukkit.plugin.Plugin; diff --git a/messages/src/main/java/me/redtea/carcadex/messages/utils/MD5ColorUtils.java b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/utils/MD5ColorUtils.java similarity index 94% rename from messages/src/main/java/me/redtea/carcadex/messages/utils/MD5ColorUtils.java rename to messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/utils/MD5ColorUtils.java index b27c6da..0bee3aa 100644 --- a/messages/src/main/java/me/redtea/carcadex/messages/utils/MD5ColorUtils.java +++ b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/utils/MD5ColorUtils.java @@ -1,4 +1,4 @@ -package me.redtea.carcadex.messages.utils; +package tech.carcadex.kotlinbukkitkit.messages.utils; import net.md_5.bungee.api.ChatColor; diff --git a/messages/src/main/java/me/redtea/carcadex/messages/verifier/MessageVerifier.java b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/verifier/MessageVerifier.java similarity index 66% rename from messages/src/main/java/me/redtea/carcadex/messages/verifier/MessageVerifier.java rename to messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/verifier/MessageVerifier.java index 4e7692a..8524fb8 100644 --- a/messages/src/main/java/me/redtea/carcadex/messages/verifier/MessageVerifier.java +++ b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/verifier/MessageVerifier.java @@ -1,4 +1,4 @@ -package me.redtea.carcadex.messages.verifier; +package tech.carcadex.kotlinbukkitkit.messages.verifier; import java.util.Optional; diff --git a/messages/src/main/java/me/redtea/carcadex/messages/verifier/impl/FileMessageVerifier.java b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/verifier/impl/FileMessageVerifier.java similarity index 90% rename from messages/src/main/java/me/redtea/carcadex/messages/verifier/impl/FileMessageVerifier.java rename to messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/verifier/impl/FileMessageVerifier.java index 3a089e9..ab13a19 100644 --- a/messages/src/main/java/me/redtea/carcadex/messages/verifier/impl/FileMessageVerifier.java +++ b/messages/src/main/java/tech/carcadex/kotlinbukkitkit/messages/verifier/impl/FileMessageVerifier.java @@ -1,7 +1,7 @@ -package me.redtea.carcadex.messages.verifier.impl; +package tech.carcadex.kotlinbukkitkit.messages.verifier.impl; import lombok.SneakyThrows; -import me.redtea.carcadex.messages.verifier.MessageVerifier; +import tech.carcadex.kotlinbukkitkit.messages.verifier.MessageVerifier; import org.bukkit.configuration.ConfigurationSection; import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.configuration.file.YamlConfiguration; diff --git a/serialization/build.gradle.kts b/serialization/build.gradle.kts index 1fd96c4..9019bb6 100644 --- a/serialization/build.gradle.kts +++ b/serialization/build.gradle.kts @@ -69,12 +69,12 @@ publishing { version = version name.set(globalArtifactId) description.set(globalArtifactId) - url.set("https://github.com/iRedTea/CarcadeX") + url.set("https://github.com/CarcadeX/KotlinBukkitKit") licenses { license { - name.set("GNU General Public License v3.0") - url.set("https://www.gnu.org/licenses/gpl-3.0.en.html") + name.set("MIT") + url.set("https://mit-license.org/") } } developers { @@ -87,7 +87,7 @@ publishing { scm { connection.set("scm:https://github.com/CarcadeX/$globalName.git") developerConnection.set("git@github.com:CarcadeX/$globalName.git") - url.set("https://github.com/iRedTea/CarcadeX") + url.set("https://github.com/CarcadeX/KotlinBukkitKit") } } diff --git a/settings.gradle.kts b/settings.gradle.kts index 44eb7f6..685ff43 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -6,3 +6,4 @@ include("extensions") include("serialization") include("genref") include("messages") +include("commands")