From 8ffc5f9c0f19806eafe4b069348a511eece06c7b Mon Sep 17 00:00:00 2001 From: Syrent Date: Tue, 28 Jun 2022 08:07:05 +0430 Subject: [PATCH] Add MythicMobs 5.X support. --- .../customitems/CustomItemsMythicMobs.kt | 21 ++++++++----------- 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/eco-core/core-plugin/src/main/kotlin/com/willfp/eco/internal/spigot/integrations/customitems/CustomItemsMythicMobs.kt b/eco-core/core-plugin/src/main/kotlin/com/willfp/eco/internal/spigot/integrations/customitems/CustomItemsMythicMobs.kt index 48de86f9..b9508d9b 100644 --- a/eco-core/core-plugin/src/main/kotlin/com/willfp/eco/internal/spigot/integrations/customitems/CustomItemsMythicMobs.kt +++ b/eco-core/core-plugin/src/main/kotlin/com/willfp/eco/internal/spigot/integrations/customitems/CustomItemsMythicMobs.kt @@ -4,16 +4,16 @@ import com.willfp.eco.core.EcoPlugin import com.willfp.eco.core.integrations.customitems.CustomItemsIntegration import com.willfp.eco.core.items.Items import com.willfp.eco.core.recipe.parts.EmptyTestableItem +import io.lumine.mythic.api.adapters.AbstractItemStack import io.lumine.mythic.api.config.MythicLineConfig import io.lumine.mythic.api.drops.DropMetadata -import io.lumine.mythic.api.drops.IMultiDrop +import io.lumine.mythic.api.drops.IItemDrop import io.lumine.mythic.bukkit.adapters.BukkitItemStack import io.lumine.mythic.bukkit.events.MythicDropLoadEvent -import io.lumine.mythic.core.drops.Drop -import io.lumine.mythic.core.drops.LootBag -import io.lumine.mythic.core.drops.droppables.ItemDrop +import org.bukkit.Material import org.bukkit.event.EventHandler import org.bukkit.event.Listener +import org.bukkit.inventory.ItemStack class CustomItemsMythicMobs( private val plugin: EcoPlugin @@ -39,19 +39,16 @@ class CustomItemsMythicMobs( private class MythicMobsDrop( private val plugin: EcoPlugin, itemConfig: MythicLineConfig - ) : Drop(itemConfig.line, itemConfig), IMultiDrop { - private val id = itemConfig.getString(arrayOf("type", "t", "item", "i"), this.dropVar) - - override fun get(data: DropMetadata): LootBag { - val bag = LootBag(data) + ) : IItemDrop { + private val id = itemConfig.getString(arrayOf("type", "t", "item", "i"), "eco") + override fun getDrop(data: DropMetadata, v: Double): AbstractItemStack { val item = Items.lookup(id) if (item is EmptyTestableItem) { plugin.logger.warning("Item with ID $id is invalid, check your configs!") - return bag + return BukkitItemStack(ItemStack(Material.AIR)) } - bag.add(data, ItemDrop(this.line, this.config, BukkitItemStack(item.item))) - return bag + return BukkitItemStack(item.item.apply { amount = v.toInt() }) } } }