From 7c94a87046e390d09086dbb358305da31882d9b0 Mon Sep 17 00:00:00 2001 From: nahkd Date: Wed, 22 Jul 2020 14:42:31 +0700 Subject: [PATCH] Update code for Slimefun vDEV 586+ If it still doesn't work, consider turn on backward compatiblity. --- pom.xml | 2 +- .../handlers/InventoryEventsHandlers.java | 92 ++++++------ .../items/resources/EndrexResourceItem.java | 2 +- .../structures/MysteryBoxesGenerator.java | 136 +++++++++--------- 4 files changed, 116 insertions(+), 116 deletions(-) diff --git a/pom.xml b/pom.xml index 3d10eef..d4bbc2e 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 me.nahkd.spigot.sfaddons Endrex - 1.0.1-b2 + 1.0.3-b1 1.8 diff --git a/src/main/java/me/nahkd/spigot/sfaddons/endrex/handlers/InventoryEventsHandlers.java b/src/main/java/me/nahkd/spigot/sfaddons/endrex/handlers/InventoryEventsHandlers.java index 8236066..3328e68 100644 --- a/src/main/java/me/nahkd/spigot/sfaddons/endrex/handlers/InventoryEventsHandlers.java +++ b/src/main/java/me/nahkd/spigot/sfaddons/endrex/handlers/InventoryEventsHandlers.java @@ -1,46 +1,46 @@ -package me.nahkd.spigot.sfaddons.endrex.handlers; - -import java.util.List; -import java.util.Optional; - -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.inventory.InventoryClickEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.ItemMeta; - -import me.mrCookieSlime.Slimefun.SlimefunPlugin; -import me.nahkd.spigot.sfaddons.endrex.items.mysterious.MysteriousEquipment; -import me.nahkd.spigot.sfaddons.endrex.utils.InventoryUtils; - -public class InventoryEventsHandlers implements Listener { - - @EventHandler - public void click(InventoryClickEvent event) { - if (event.getClickedInventory() != event.getInventory()) return; - switch (event.getView().getTitle()) { - case "Slimefun Guide": return; - } - - ItemStack itemStack = event.getCurrentItem(); - if (!InventoryUtils.isNotAir(itemStack)) return; - ItemMeta meta = itemStack.getItemMeta(); - Optional id = SlimefunPlugin.getItemDataService().getItemData(meta); - if (id.isPresent() && MysteriousEquipment.getMappedItems().containsKey(id.get())) { - MysteriousEquipment equipment = MysteriousEquipment.getMappedItems().get(id.get()); - if (meta.getLore().get(0).equals("§7Click to unlock")) { - // Add crap to the item - List lore = meta.getLore(); - lore.set(0, "§7§oMagically created"); - meta.setLore(lore); - - equipment.applyEnchantment(meta); - - itemStack.setItemMeta(meta); - event.setCurrentItem(new ItemStack(itemStack)); - event.setCancelled(true); - } - } - } - -} +package me.nahkd.spigot.sfaddons.endrex.handlers; + +import java.util.List; +import java.util.Optional; + +import org.bukkit.event.EventHandler; +import org.bukkit.event.Listener; +import org.bukkit.event.inventory.InventoryClickEvent; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.meta.ItemMeta; + +import io.github.thebusybiscuit.slimefun4.implementation.SlimefunPlugin; +import me.nahkd.spigot.sfaddons.endrex.items.mysterious.MysteriousEquipment; +import me.nahkd.spigot.sfaddons.endrex.utils.InventoryUtils; + +public class InventoryEventsHandlers implements Listener { + + @EventHandler + public void click(InventoryClickEvent event) { + if (event.getClickedInventory() != event.getInventory()) return; + switch (event.getView().getTitle()) { + case "Slimefun Guide": return; + } + + ItemStack itemStack = event.getCurrentItem(); + if (!InventoryUtils.isNotAir(itemStack)) return; + ItemMeta meta = itemStack.getItemMeta(); + Optional id = SlimefunPlugin.getItemDataService().getItemData(meta); + if (id.isPresent() && MysteriousEquipment.getMappedItems().containsKey(id.get())) { + MysteriousEquipment equipment = MysteriousEquipment.getMappedItems().get(id.get()); + if (meta.getLore().get(0).equals("§7Click to unlock")) { + // Add crap to the item + List lore = meta.getLore(); + lore.set(0, "§7§oMagically created"); + meta.setLore(lore); + + equipment.applyEnchantment(meta); + + itemStack.setItemMeta(meta); + event.setCurrentItem(new ItemStack(itemStack)); + event.setCancelled(true); + } + } + } + +} diff --git a/src/main/java/me/nahkd/spigot/sfaddons/endrex/items/resources/EndrexResourceItem.java b/src/main/java/me/nahkd/spigot/sfaddons/endrex/items/resources/EndrexResourceItem.java index 0ef8ea4..92be3cb 100644 --- a/src/main/java/me/nahkd/spigot/sfaddons/endrex/items/resources/EndrexResourceItem.java +++ b/src/main/java/me/nahkd/spigot/sfaddons/endrex/items/resources/EndrexResourceItem.java @@ -12,7 +12,7 @@ public class EndrexResourceItem extends EndrexItem { - private final SlimefunItemStack item; + // private final SlimefunItemStack item; private boolean applyRecipe; private RecipeDisplayItem machine; private ItemStack recipeOutput; diff --git a/src/main/java/me/nahkd/spigot/sfaddons/endrex/structures/MysteryBoxesGenerator.java b/src/main/java/me/nahkd/spigot/sfaddons/endrex/structures/MysteryBoxesGenerator.java index d9d7512..f5cc62f 100644 --- a/src/main/java/me/nahkd/spigot/sfaddons/endrex/structures/MysteryBoxesGenerator.java +++ b/src/main/java/me/nahkd/spigot/sfaddons/endrex/structures/MysteryBoxesGenerator.java @@ -1,68 +1,68 @@ -package me.nahkd.spigot.sfaddons.endrex.structures; - -import java.util.Arrays; -import java.util.List; -import java.util.Random; - -import org.bukkit.Chunk; -import org.bukkit.Material; -import org.bukkit.World; -import org.bukkit.World.Environment; -import org.bukkit.block.Biome; -import org.bukkit.inventory.ItemStack; - -import me.mrCookieSlime.Slimefun.Lists.SlimefunItems; -import me.mrCookieSlime.Slimefun.cscorelib2.item.CustomItem; -import me.nahkd.spigot.sfaddons.endrex.Endrex; -import me.nahkd.spigot.sfaddons.endrex.items.EndrexItems; -import me.nahkd.spigot.sfaddons.endrex.nahkdschem2.VectorInt; -import me.nahkd.spigot.sfaddons.endrex.nahkdschem2.Schematic; -import me.nahkd.spigot.sfaddons.endrex.nahkdschem2.loot.LootTableEntry; - -public class MysteryBoxesGenerator extends StructuresGenerator { - - Schematic schem; - List lootTable; - - public MysteryBoxesGenerator() { - schem = Endrex.getSchematic("structures/other/mysterybox.nsm"); - lootTable = Arrays.asList( - new LootTableEntry(0.02, new ItemStack(Material.ENDER_PEARL, 3)), - new LootTableEntry(0.03, new ItemStack(Material.ENDER_PEARL, 2)), - new LootTableEntry(0.03, new ItemStack(Material.ENDER_PEARL, 1)), - - new LootTableEntry(0.02, new ItemStack(Material.EXPERIENCE_BOTTLE, 6)), - new LootTableEntry(0.02, new ItemStack(Material.EXPERIENCE_BOTTLE, 3)), - new LootTableEntry(0.03, new ItemStack(Material.EXPERIENCE_BOTTLE, 2)), - - new LootTableEntry(0.02, new CustomItem(EndrexItems.ENDERIUM.getItem(), 1)), - new LootTableEntry(0.01, new CustomItem(EndrexItems.ENDERIUM.getItem(), 2)), - - new LootTableEntry(0.04, new ItemStack(Material.DIAMOND, 1)), - new LootTableEntry(0.03, new ItemStack(Material.DIAMOND, 2)), - new LootTableEntry(0.01, EndrexItems.ENDERIUM_SWORD.getItem()), - new LootTableEntry(0.02, EndrexItems.MASK_OF_ENDER.getItem()), - new LootTableEntry(0.02, SlimefunItems.RUNE_AIR), - new LootTableEntry(0.03, SlimefunItems.RUNE_ENDER), - new LootTableEntry(0.02, SlimefunItems.GOLD_16K), - new LootTableEntry(0.01, SlimefunItems.BLANK_RUNE) - ); - } - - @Override - public void generateStructure(World world, Chunk newChunk, Random rand) { - if (world.getEnvironment() != Environment.THE_END) return; - if (newChunk.getX() >= -32 && newChunk.getZ() >= -32 && newChunk.getX() <= 32 && newChunk.getZ() <= 32) return; - int mx = rand.nextInt(13); - for (int i = 0; i < mx; i++) rand.nextInt(); - double hit = rand.nextDouble(); - if (hit <= 0.03) { - int genX = rand.nextInt(9) + (newChunk.getX() * 16), - genZ = rand.nextInt(9) + (newChunk.getZ() * 16), - y = 100 + rand.nextInt(32); - if (world.getBlockAt(genX, y, genZ).getBiome() == Biome.SMALL_END_ISLANDS) return; - schem.pasteSchematic(world, new VectorInt(genX, y, genZ), lootTable); - } - } - -} +package me.nahkd.spigot.sfaddons.endrex.structures; + +import java.util.Arrays; +import java.util.List; +import java.util.Random; + +import org.bukkit.Chunk; +import org.bukkit.Material; +import org.bukkit.World; +import org.bukkit.World.Environment; +import org.bukkit.block.Biome; +import org.bukkit.inventory.ItemStack; + +import io.github.thebusybiscuit.slimefun4.implementation.SlimefunItems; +import me.mrCookieSlime.Slimefun.cscorelib2.item.CustomItem; +import me.nahkd.spigot.sfaddons.endrex.Endrex; +import me.nahkd.spigot.sfaddons.endrex.items.EndrexItems; +import me.nahkd.spigot.sfaddons.endrex.nahkdschem2.VectorInt; +import me.nahkd.spigot.sfaddons.endrex.nahkdschem2.Schematic; +import me.nahkd.spigot.sfaddons.endrex.nahkdschem2.loot.LootTableEntry; + +public class MysteryBoxesGenerator extends StructuresGenerator { + + Schematic schem; + List lootTable; + + public MysteryBoxesGenerator() { + schem = Endrex.getSchematic("structures/other/mysterybox.nsm"); + lootTable = Arrays.asList( + new LootTableEntry(0.02, new ItemStack(Material.ENDER_PEARL, 3)), + new LootTableEntry(0.03, new ItemStack(Material.ENDER_PEARL, 2)), + new LootTableEntry(0.03, new ItemStack(Material.ENDER_PEARL, 1)), + + new LootTableEntry(0.02, new ItemStack(Material.EXPERIENCE_BOTTLE, 6)), + new LootTableEntry(0.02, new ItemStack(Material.EXPERIENCE_BOTTLE, 3)), + new LootTableEntry(0.03, new ItemStack(Material.EXPERIENCE_BOTTLE, 2)), + + new LootTableEntry(0.02, new CustomItem(EndrexItems.ENDERIUM.getItem(), 1)), + new LootTableEntry(0.01, new CustomItem(EndrexItems.ENDERIUM.getItem(), 2)), + + new LootTableEntry(0.04, new ItemStack(Material.DIAMOND, 1)), + new LootTableEntry(0.03, new ItemStack(Material.DIAMOND, 2)), + new LootTableEntry(0.01, EndrexItems.ENDERIUM_SWORD.getItem()), + new LootTableEntry(0.02, EndrexItems.MASK_OF_ENDER.getItem()), + new LootTableEntry(0.02, SlimefunItems.AIR_RUNE), + new LootTableEntry(0.03, SlimefunItems.ENDER_RUNE), + new LootTableEntry(0.02, SlimefunItems.GOLD_16K), + new LootTableEntry(0.01, SlimefunItems.BLANK_RUNE) + ); + } + + @Override + public void generateStructure(World world, Chunk newChunk, Random rand) { + if (world.getEnvironment() != Environment.THE_END) return; + if (newChunk.getX() >= -32 && newChunk.getZ() >= -32 && newChunk.getX() <= 32 && newChunk.getZ() <= 32) return; + int mx = rand.nextInt(13); + for (int i = 0; i < mx; i++) rand.nextInt(); + double hit = rand.nextDouble(); + if (hit <= 0.03) { + int genX = rand.nextInt(9) + (newChunk.getX() * 16), + genZ = rand.nextInt(9) + (newChunk.getZ() * 16), + y = 100 + rand.nextInt(32); + if (world.getBlockAt(genX, y, genZ).getBiome() == Biome.SMALL_END_ISLANDS) return; + schem.pasteSchematic(world, new VectorInt(genX, y, genZ), lootTable); + } + } + +}