diff options
| author | LMBishop <13875753+LMBishop@users.noreply.github.com> | 2021-08-17 15:26:39 +0100 |
|---|---|---|
| committer | LMBishop <13875753+LMBishop@users.noreply.github.com> | 2021-08-17 15:26:39 +0100 |
| commit | 9d02a41e89afca1519e2e379e286e6c43e094d85 (patch) | |
| tree | 26e17d1e6c57b56b4c2b115ef5db5279f9fbe22c /bukkit/src/main | |
| parent | 0afb697a1ac61f980001e298f0555695d6d237d0 (diff) | |
Add slimefun quest item
Diffstat (limited to 'bukkit/src/main')
| -rw-r--r-- | bukkit/src/main/java/com/leonardobishop/quests/bukkit/config/BukkitQuestsLoader.java | 10 | ||||
| -rw-r--r-- | bukkit/src/main/java/com/leonardobishop/quests/bukkit/item/SlimefunQuestItem.java | 32 |
2 files changed, 38 insertions, 4 deletions
diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/config/BukkitQuestsLoader.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/config/BukkitQuestsLoader.java index 25fa8201..f586543e 100644 --- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/config/BukkitQuestsLoader.java +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/config/BukkitQuestsLoader.java @@ -2,10 +2,7 @@ package com.leonardobishop.quests.bukkit.config; import com.leonardobishop.quests.bukkit.BukkitQuestsPlugin; import com.leonardobishop.quests.bukkit.hook.itemgetter.ItemGetter; -import com.leonardobishop.quests.bukkit.item.MMOItemsQuestItem; -import com.leonardobishop.quests.bukkit.item.ParsedQuestItem; -import com.leonardobishop.quests.bukkit.item.QuestItem; -import com.leonardobishop.quests.bukkit.item.QuestItemRegistry; +import com.leonardobishop.quests.bukkit.item.*; import com.leonardobishop.quests.bukkit.menu.itemstack.QItemStack; import com.leonardobishop.quests.bukkit.menu.itemstack.QItemStackRegistry; import com.leonardobishop.quests.bukkit.util.chat.Chat; @@ -351,6 +348,7 @@ public class BukkitQuestsLoader implements QuestsLoader { } QuestItem item; + //TODO convert to registry based service switch (config.getString("type", "").toLowerCase()) { default: return FileVisitResult.CONTINUE; @@ -364,6 +362,10 @@ public class BukkitQuestsLoader implements QuestsLoader { if (!Bukkit.getPluginManager().isPluginEnabled("MMOItems")) return FileVisitResult.CONTINUE; item = new MMOItemsQuestItem(id, config.getString("item.type"), config.getString("item.id")); break; + case "slimefun": + if (!Bukkit.getPluginManager().isPluginEnabled("Slimefun")) return FileVisitResult.CONTINUE; + item = new SlimefunQuestItem(id, config.getString("item.id")); + break; } questItemRegistry.registerItem(id, item); diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/item/SlimefunQuestItem.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/item/SlimefunQuestItem.java new file mode 100644 index 00000000..ce3a61d5 --- /dev/null +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/item/SlimefunQuestItem.java @@ -0,0 +1,32 @@ +package com.leonardobishop.quests.bukkit.item; + +import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem; +import net.Indyuce.mmoitems.MMOItems; +import net.Indyuce.mmoitems.api.Type; +import org.bukkit.inventory.ItemStack; + +public class SlimefunQuestItem extends QuestItem { + + private final String slimefunId; + + public SlimefunQuestItem(String id, String slimefunId) { + super("slimefun", id); + this.slimefunId = slimefunId; + } + + @Override + public ItemStack getItemStack() { + return SlimefunItem.getByID(slimefunId).getItem(); + } + + @Override + public boolean compareItemStack(ItemStack other) { + SlimefunItem item = SlimefunItem.getByItem(other); + + if (item == null) return false; + + String id = item.getId(); + return slimefunId.equals(id); + } + +} |
