新增neigeitems兼容
This commit is contained in:
@@ -12,6 +12,7 @@ taboolib {
|
|||||||
name("Vault").optional(true)
|
name("Vault").optional(true)
|
||||||
name("MMOItems").optional(true)
|
name("MMOItems").optional(true)
|
||||||
name("Zaphkiel").optional(true)
|
name("Zaphkiel").optional(true)
|
||||||
|
name("NeigeItems").optional(true)
|
||||||
}
|
}
|
||||||
contributors {
|
contributors {
|
||||||
name("xbaimiao")
|
name("xbaimiao")
|
||||||
@@ -39,6 +40,7 @@ taboolib {
|
|||||||
repositories {
|
repositories {
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
maven("https://maven.xbaimiao.com/repository/maven-public/")
|
maven("https://maven.xbaimiao.com/repository/maven-public/")
|
||||||
|
maven("https://r.irepo.space/maven/")
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
@@ -50,6 +52,7 @@ dependencies {
|
|||||||
compileOnly("ink.ptms.core:v11902:11902-minimize:mapped")
|
compileOnly("ink.ptms.core:v11902:11902-minimize:mapped")
|
||||||
compileOnly("ink.ptms.core:v11902:11902-minimize:universal")
|
compileOnly("ink.ptms.core:v11902:11902-minimize:universal")
|
||||||
compileOnly("public:Zaphkiel:1.0.0")
|
compileOnly("public:Zaphkiel:1.0.0")
|
||||||
|
compileOnly("pers.neige.neigeitems:NeigeItems:1.15.113")
|
||||||
compileOnly("public:MMOItems:6.9.4")
|
compileOnly("public:MMOItems:6.9.4")
|
||||||
taboo("com.xbaimiao.ktor:ktor-plugins-bukkit:1.0.8")
|
taboo("com.xbaimiao.ktor:ktor-plugins-bukkit:1.0.8")
|
||||||
taboo(kotlin("stdlib"))
|
taboo(kotlin("stdlib"))
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ class ItemLoaderManager {
|
|||||||
itemLoaders.add(ZapItem)
|
itemLoaders.add(ZapItem)
|
||||||
itemLoaders.add(MMOItem)
|
itemLoaders.add(MMOItem)
|
||||||
itemLoaders.add(MythicItem)
|
itemLoaders.add(MythicItem)
|
||||||
|
itemLoaders.add(NeigeItem)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun getVanillaShop(): ItemLoader = VanillaShopItem.Companion
|
fun getVanillaShop(): ItemLoader = VanillaShopItem.Companion
|
||||||
|
|||||||
@@ -0,0 +1,55 @@
|
|||||||
|
package com.github.xbaimiao.shoppro.core.item.impl
|
||||||
|
|
||||||
|
import com.github.xbaimiao.shoppro.core.item.Item
|
||||||
|
import com.github.xbaimiao.shoppro.core.item.ItemLoader
|
||||||
|
import com.github.xbaimiao.shoppro.core.shop.Shop
|
||||||
|
import ink.ptms.zaphkiel.Zaphkiel
|
||||||
|
import org.bukkit.Bukkit
|
||||||
|
import org.bukkit.Material
|
||||||
|
import org.bukkit.configuration.ConfigurationSection
|
||||||
|
import org.bukkit.entity.Player
|
||||||
|
import org.bukkit.inventory.ItemStack
|
||||||
|
import pers.neige.neigeitems.item.ItemGenerator
|
||||||
|
import pers.neige.neigeitems.manager.ItemManager
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author dongzh1
|
||||||
|
* @date 2024/1/9 17:59
|
||||||
|
**/
|
||||||
|
class NeigeItem(
|
||||||
|
private val neigeItem: ItemGenerator,
|
||||||
|
itemSetting: ItemSetting,
|
||||||
|
private val neigeId :String
|
||||||
|
) : VanillaShopItem(itemSetting) {
|
||||||
|
|
||||||
|
override val material: Material
|
||||||
|
get() = neigeItem.staticItemStack.type
|
||||||
|
|
||||||
|
override fun vanillaItem(player: Player): ItemStack {
|
||||||
|
return ItemManager.getItemStack(neigeId,player)!!
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun equal(itemStack: ItemStack): Boolean {
|
||||||
|
val item = ItemManager.getItemStack(neigeId) ?: return false
|
||||||
|
return ItemManager.getItemStack(neigeId) == item
|
||||||
|
}
|
||||||
|
|
||||||
|
companion object : ItemLoader() {
|
||||||
|
override val prefix: String = "NeigeItems"
|
||||||
|
|
||||||
|
override fun formSection(char: Char, section: ConfigurationSection, shop: Shop): Item {
|
||||||
|
if (Bukkit.getPluginManager().plugins.find { it.name.lowercase() == "NeigeItems".lowercase() } == null) {
|
||||||
|
error("NeigeItems Plugin not found")
|
||||||
|
}
|
||||||
|
val neigeId = section.getString("material")!!.substring(prefix.length + 1)
|
||||||
|
val item = ItemManager.getItem(neigeId)?: error("NeigeItems $neigeId not found")
|
||||||
|
return NeigeItem(item, section.toItemSetting(char, shop),neigeId)
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun parseToMaterial(section: ConfigurationSection): Material {
|
||||||
|
return Material.AIR
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user