添加API 可供其他插件添加物品解析

This commit is contained in:
xbaimiao
2024-06-10 06:37:35 +08:00
parent 1f12912f88
commit 694b304b24
4 changed files with 27 additions and 12 deletions
+1 -2
View File
@@ -20,7 +20,7 @@ taboolib {
name("xbaimiao")
}
val bukkitNodes = bukkitNodes as MutableMap<Any, Any>
bukkitNodes["update-info"] = "修复头颅物品"
bukkitNodes["update-info"] = "添加API 可供其他插件添加物品解析"
}
env {
install(NMS_UTIL, UI)
@@ -52,7 +52,6 @@ dependencies {
compileOnly("public:Zaphkiel:1.0.0")
compileOnly("pers.neige.neigeitems:NeigeItems:1.15.113")
compileOnly("public:MMOItems:6.9.4")
taboo("com.xbaimiao.ktor:ktor-plugins-bukkit:1.0.8")
// taboo(kotlin("stdlib"))
compileOnly(fileTree("libs"))
}
+1 -1
View File
@@ -1,2 +1,2 @@
group=com.github.xbaimiao.shoppro
version=1.3.0-SNAPSHOT
version=1.3.1-SNAPSHOT
@@ -1,5 +1,6 @@
package com.github.xbaimiao.shoppro
import com.github.xbaimiao.shoppro.api.ShopProInitItemLoaderEvent
import com.github.xbaimiao.shoppro.core.database.Database
import com.github.xbaimiao.shoppro.core.database.MysqlDatabase
import com.github.xbaimiao.shoppro.core.database.SQLiteDatabase
@@ -7,8 +8,6 @@ import com.github.xbaimiao.shoppro.core.item.ItemLoaderManager
import com.github.xbaimiao.shoppro.core.shop.ShopManager
import com.github.xbaimiao.shoppro.core.vault.DiyCurrency
import com.github.xbaimiao.shoppro.core.vault.VaultImpl
import com.xbaimiao.ktor.KtorPluginsBukkit
import com.xbaimiao.ktor.KtorStat
import org.bukkit.Bukkit
import org.bukkit.event.player.PlayerJoinEvent
import org.bukkit.event.player.PlayerQuitEvent
@@ -19,7 +18,7 @@ import taboolib.module.configuration.Config
import taboolib.module.configuration.Configuration
import taboolib.platform.BukkitPlugin
object ShopPro : Plugin(), KtorStat {
object ShopPro : Plugin() {
@Config(value = "config.yml")
lateinit var config: Configuration
@@ -30,12 +29,8 @@ object ShopPro : Plugin(), KtorStat {
val itemLoaderManager = ItemLoaderManager()
override fun onActive() {
val userId = kotlin.runCatching { userId }.getOrNull()
if (userId != null) {
KtorPluginsBukkit.init(BukkitPlugin.getInstance(), this)
info("$userId 感谢您的使用")
stat()
}
ShopProInitItemLoaderEvent(this).call()
DiyCurrency.load()
ShopManager.load()
VaultImpl.startTask()
@@ -0,0 +1,21 @@
package com.github.xbaimiao.shoppro.api
import com.github.xbaimiao.shoppro.ShopPro
import com.github.xbaimiao.shoppro.core.item.ItemLoader
import taboolib.platform.type.BukkitProxyEvent
/**
* @author xbaimiao
* @date 2024/6/10
* @email owner@xbaimiao.com
*/
class ShopProInitItemLoaderEvent(val plugin: ShopPro) : BukkitProxyEvent() {
override val allowCancelled: Boolean
get() = false
fun addLoader(loader: ItemLoader) {
plugin.itemLoaderManager.itemLoaders.add(loader)
}
}