Merge pull request #268

Denizen Integration
This commit is contained in:
Will FP
2023-04-28 14:22:29 +01:00
committed by GitHub
6 changed files with 49 additions and 7 deletions

View File

@@ -58,6 +58,9 @@ dependencies {
compileOnly("com.SirBlobman.combatlogx:CombatLogX-API:10.0.0.0-SNAPSHOT")
compileOnly("com.github.sirblobman.combatlogx:api:11.0.0.0-SNAPSHOT")
compileOnly("LibsDisguises:LibsDisguises:10.0.26")
compileOnly("com.denizenscript:denizen:1.2.7-SNAPSHOT") {
exclude(group = "*", module = "*")
}
compileOnly(fileTree("../../lib") {
include("*.jar")

View File

@@ -94,13 +94,7 @@ import com.willfp.eco.internal.spigot.integrations.antigrief.AntigriefSuperiorSk
import com.willfp.eco.internal.spigot.integrations.antigrief.AntigriefTowny
import com.willfp.eco.internal.spigot.integrations.antigrief.AntigriefWorldGuard
import com.willfp.eco.internal.spigot.integrations.customentities.CustomEntitiesMythicMobs
import com.willfp.eco.internal.spigot.integrations.customitems.CustomItemsCustomCrafting
import com.willfp.eco.internal.spigot.integrations.customitems.CustomItemsExecutableItems
import com.willfp.eco.internal.spigot.integrations.customitems.CustomItemsHeadDatabase
import com.willfp.eco.internal.spigot.integrations.customitems.CustomItemsItemsAdder
import com.willfp.eco.internal.spigot.integrations.customitems.CustomItemsMythicMobs
import com.willfp.eco.internal.spigot.integrations.customitems.CustomItemsOraxen
import com.willfp.eco.internal.spigot.integrations.customitems.CustomItemsScyther
import com.willfp.eco.internal.spigot.integrations.customitems.*
import com.willfp.eco.internal.spigot.integrations.customrecipes.CustomRecipeCustomCrafting
import com.willfp.eco.internal.spigot.integrations.economy.EconomyVault
import com.willfp.eco.internal.spigot.integrations.entitylookup.EntityLookupModelEngine
@@ -323,6 +317,7 @@ abstract class EcoSpigotPlugin : EcoPlugin() {
},
IntegrationLoader("MythicMobs") { CustomItemsManager.register(CustomItemsMythicMobs(this)) },
IntegrationLoader("Scyther") { CustomItemsManager.register(CustomItemsScyther()) },
IntegrationLoader("Denizen") { CustomItemsManager.register(CustomItemsDenizen()) },
// Shop
IntegrationLoader("ShopGUIPlus") { ShopManager.register(ShopShopGuiPlus()) },

View File

@@ -0,0 +1,36 @@
package com.willfp.eco.internal.spigot.integrations.customitems
import com.willfp.eco.core.integrations.customitems.CustomItemsIntegration
import com.willfp.eco.core.items.CustomItem
import com.willfp.eco.core.items.TestableItem
import com.willfp.eco.core.items.provider.ItemProvider
import com.willfp.eco.util.NamespacedKeyUtils
import com.denizenscript.denizen.objects.ItemTag
import com.denizenscript.denizen.scripts.containers.core.ItemScriptHelper
import com.willfp.eco.core.items.Items
import org.bukkit.event.Listener
class CustomItemsDenizen : CustomItemsIntegration, Listener {
override fun registerProvider() {
Items.registerItemProvider(DenizenProvider())
}
override fun getPluginName(): String {
return "Denizen"
}
private class DenizenProvider : ItemProvider("denizen") {
override fun provideForKey(key: String): TestableItem? {
val item = ItemTag.valueOf(key, false) ?: return null
val id = item.scriptName
val namespacedKey = NamespacedKeyUtils.create("denizen", id)
val stack = item.itemStack
return CustomItem(
namespacedKey,
{ id.equals(ItemScriptHelper.getItemScriptNameText(it), ignoreCase = true) },
stack
)
}
}
}

View File

@@ -188,3 +188,7 @@ dependencies:
- name: UltraEconomy
required: false
bootstrap: false
- name: Denizen
required: false
bootstrap: false

View File

@@ -52,3 +52,4 @@ softdepend:
- PvPManager
- DeluxeMenus
- UltraEconomy
- Denizen