From ff9d0a08cf05af5ec9a3e0b1a53be49fb03672ae Mon Sep 17 00:00:00 2001 From: AtomicScience Date: Wed, 15 Nov 2017 14:36:30 +0300 Subject: [PATCH 01/14] Add files via upload --- .../Slimefun/Lists/SlimefunItems.java | 1 + .../Slimefun/Setup/Messages.java | 1 + .../Slimefun/Setup/SlimefunSetup.java | 133 +++++++++++------- .../Slimefun/listeners/ItemListener.java | 8 ++ 4 files changed, 96 insertions(+), 47 deletions(-) diff --git a/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java b/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java index af5451b30..01e9e696a 100644 --- a/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java +++ b/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java @@ -361,6 +361,7 @@ public class SlimefunItems { public static ItemStack GRIND_STONE = new CustomItem(Material.DISPENSER, "&bGrind Stone", 0, new String[] {"", "&a&oGrinds Items for more Efficiency"}); public static ItemStack ARMOR_FORGE = new CustomItem(Material.ANVIL, "&6Armor Forge", 0, new String[] {"", "&a&oGives you the Ability to create powerful Armor"}); public static ItemStack SMELTERY = new CustomItem(Material.FURNACE, "&6Smeltery", 0, new String[] {"", "&a&oActs as a high-temperature Furnace for Metals"}); + public static ItemStack IGNITION_CHAMBER = new CustomItem(new ItemStack(Material.HOPPER), "&4Automatic Ignition Chamber", "&rAre you constantly enraged by the fading fire under the Smelter too?", "&rWe found the solution!", "&rJust easily place this Chamber near the dispencer", "&rof your Smelter, and block under it will be ignited automatically!", "&e&oRequires Flint'n Steels to run"); public static ItemStack ORE_CRUSHER = new CustomItem(Material.DISPENSER, "&bOre Crusher", 0, new String[] {"", "&a&oCrushes Ores to double them"}); public static ItemStack COMPRESSOR = new CustomItem(Material.PISTON_BASE, "&bCompressor", 0, new String[] {"", "&a&oCompresses Items"}); public static ItemStack PRESSURE_CHAMBER = new CustomItem(Material.GLASS, "&bPressure Chamber", 0, new String[] {"", "&a&oCompresses Items even more"}); diff --git a/src/me/mrCookieSlime/Slimefun/Setup/Messages.java b/src/me/mrCookieSlime/Slimefun/Setup/Messages.java index 12f734f9d..194c6b0f7 100644 --- a/src/me/mrCookieSlime/Slimefun/Setup/Messages.java +++ b/src/me/mrCookieSlime/Slimefun/Setup/Messages.java @@ -70,6 +70,7 @@ public class Messages { local.setDefault("commands.research.reset", "&cYou have reset %player%'s Knowledge"); local.setDefault("commands.research.reset-target", "&cYour Knowledge has been reset"); local.setDefault("machines.in-use", "&cThis Block's Inventory is currently opened by a different Player."); + local.setDefault("machines.ignition-chamber-no-flint", "&cAutomatic Ignition Chamber failed to ignite block because of no Flint'n steel found"); local.setDefault("gps.waypoint.new", "&ePlease type in a Name for your new Waypoint in the Chat. &7(Color Codes supported!)"); local.setDefault("gps.waypoint.added", "&aSuccessfully added a new Waypoint"); diff --git a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java index 6cbb01772..7ecb1c2a9 100644 --- a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java +++ b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java @@ -18,6 +18,7 @@ import org.bukkit.block.BlockFace; import org.bukkit.block.Chest; import org.bukkit.block.CreatureSpawner; import org.bukkit.block.Dispenser; +import org.bukkit.block.Hopper; import org.bukkit.enchantments.Enchantment; import org.bukkit.entity.ArmorStand; import org.bukkit.entity.Arrow; @@ -704,63 +705,101 @@ public class SlimefunSetup { .register(true); new SlimefunMachine(Categories.MACHINES_1, SlimefunItems.SMELTERY, "SMELTERY", - new ItemStack[] {null, new ItemStack(Material.NETHER_FENCE), null, new ItemStack(Material.NETHER_BRICK), new CustomItem(Material.DISPENSER, "Dispenser (Facing up)", 0), new ItemStack(Material.NETHER_BRICK), null, new ItemStack(Material.FLINT_AND_STEEL), null}, - new ItemStack[] {SlimefunItems.IRON_DUST, new ItemStack(Material.IRON_INGOT)}, Material.NETHER_FENCE, - new String[] {"chance.fireBreak"}, new Integer[] {34}) - .register(true, new MultiBlockInteractionHandler() { + new ItemStack[] {null, new ItemStack(Material.NETHER_FENCE), null, new ItemStack(Material.NETHER_BRICK), new CustomItem(Material.DISPENSER, "Ðàçäàò÷èê (Íàïðàâëåí ââåðõ)", 0), new ItemStack(Material.NETHER_BRICK), null, new ItemStack(Material.FLINT_AND_STEEL), null}, + new ItemStack[] {SlimefunItems.IRON_DUST, new ItemStack(Material.IRON_INGOT)}, Material.NETHER_FENCE, + new String[] {"chance.fireBreak"}, new Integer[] {34}) + .register(true, new MultiBlockInteractionHandler() { - @Override - public boolean onInteract(Player p, MultiBlock mb, Block b) { + @Override + public boolean onInteract(Player p, MultiBlock mb, Block b) { - SlimefunMachine machine = (SlimefunMachine) SlimefunItem.getByName("SMELTERY"); + SlimefunMachine machine = (SlimefunMachine) SlimefunItem.getByName("SMELTERY"); - if (mb.isMultiBlock(machine)) { - if (Slimefun.hasUnlocked(p, machine.getItem(), true)) { - Dispenser disp = (Dispenser) b.getRelative(BlockFace.DOWN).getState(); - Inventory inv = disp.getInventory(); - List inputs = RecipeType.getRecipeInputList(machine); + if (mb.isMultiBlock(machine)) { + if (Slimefun.hasUnlocked(p, machine.getItem(), true)) { + Dispenser disp = (Dispenser) b.getRelative(BlockFace.DOWN).getState(); + Inventory inv = disp.getInventory(); + List inputs = RecipeType.getRecipeInputList(machine); - for (int i = 0; i < inputs.size(); i++) { - boolean craft = true; - for (ItemStack converting: inputs.get(i)) { - if (converting != null) { - for (int j = 0; j < inv.getContents().length; j++) { - if (j == (inv.getContents().length - 1) && !SlimefunManager.isItemSimiliar(converting, inv.getContents()[j], true, SlimefunManager.DataType.ALWAYS)) { - craft = false; - break; - } - else if (SlimefunManager.isItemSimiliar(inv.getContents()[j], converting, true, SlimefunManager.DataType.ALWAYS)) break; - } - } - } - - if (craft) { - ItemStack adding = RecipeType.getRecipeOutputList(machine, inputs.get(i)); - if (Slimefun.hasUnlocked(p, adding, true)) { - if (InvUtils.fits(inv, adding)) { - for (ItemStack removing: inputs.get(i)) { - if (removing != null) inv.removeItem(removing); - } - inv.addItem(adding); - p.getWorld().playSound(p.getLocation(), Sound.BLOCK_LAVA_POP, 1, 1); - p.getWorld().playEffect(b.getLocation(), Effect.MOBSPAWNER_FLAMES, 1);; - if (SlimefunStartup.chance(100, (Integer) Slimefun.getItemValue("SMELTERY", "chance.fireBreak"))) { - BlockBreaker.nullify(b.getRelative(BlockFace.DOWN).getRelative(BlockFace.DOWN)); + for (int i = 0; i < inputs.size(); i++) { + boolean craft = true; + for (ItemStack converting: inputs.get(i)) { + if (converting != null) { + for (int j = 0; j < inv.getContents().length; j++) { + if (j == (inv.getContents().length - 1) && !SlimefunManager.isItemSimiliar(converting, inv.getContents()[j], true, SlimefunManager.DataType.ALWAYS)) { + craft = false; + break; + } + else if (SlimefunManager.isItemSimiliar(inv.getContents()[j], converting, true, SlimefunManager.DataType.ALWAYS)) break; + } } } - else Messages.local.sendTranslation(p, "machines.full-inventory", true); + + if (craft) { + ItemStack adding = RecipeType.getRecipeOutputList(machine, inputs.get(i)); + if (Slimefun.hasUnlocked(p, adding, true)) { + if (InvUtils.fits(inv, adding)) { + for (ItemStack removing: inputs.get(i)) { + if (removing != null) inv.removeItem(removing); + } + inv.addItem(adding); + p.getWorld().playSound(p.getLocation(), Sound.BLOCK_LAVA_POP, 1, 1); + p.getWorld().playEffect(b.getLocation(), Effect.MOBSPAWNER_FLAMES, 1); + Block raw_disp = b.getRelative(BlockFace.DOWN); + Hopper resf = null; + + if(raw_disp.getRelative(BlockFace.EAST).getState().getBlock().getType().name() == "HOPPER") { + resf = (Hopper) raw_disp.getRelative(BlockFace.EAST).getState(); + } else if (raw_disp.getRelative(BlockFace.WEST).getState().getBlock().getType().name() == "HOPPER") { + resf = (Hopper) raw_disp.getRelative(BlockFace.WEST).getState(); + } else if (raw_disp.getRelative(BlockFace.NORTH).getState().getBlock().getType().name() == "HOPPER") { + resf = (Hopper) raw_disp.getRelative(BlockFace.NORTH).getState(); + } else if (raw_disp.getRelative(BlockFace.SOUTH).getState().getBlock().getType().name() == "HOPPER"){ + resf = (Hopper) raw_disp.getRelative(BlockFace.SOUTH).getState(); + } + boolean isIgniteChamberInstalled = false; + + if(resf != null) { + if(resf.getCustomName().equalsIgnoreCase(SlimefunItems.IGNITION_CHAMBER.getItemMeta().getDisplayName())) isIgniteChamberInstalled = true; + } + + if (SlimefunStartup.chance(100, (Integer) Slimefun.getItemValue("SMELTERY", "chance.fireBreak"))) { + if(isIgniteChamberInstalled) { + if(resf.getInventory().contains(Material.FLINT_AND_STEEL)) { + ItemStack item = resf.getInventory().getItem(resf.getInventory().first(Material.FLINT_AND_STEEL)); + item.setDurability((short) (item.getDurability() + 1)); + if(item.getDurability() >= 64) { + item.setAmount(0); p.getWorld().playSound(p.getLocation(), Sound.ENTITY_ITEM_BREAK, 1, 1); + item.setAmount(0); + } + p.getWorld().playSound(p.getLocation(), Sound.ITEM_FLINTANDSTEEL_USE, 1, 1); + } else { + Messages.local.sendTranslation(p, "machines.ignition-chamber-no-flint", true); + BlockBreaker.nullify(b.getRelative(BlockFace.DOWN).getRelative(BlockFace.DOWN)); + } + } else { + BlockBreaker.nullify(b.getRelative(BlockFace.DOWN).getRelative(BlockFace.DOWN)); + } + } + } + else Messages.local.sendTranslation(p, "machines.full-inventory", true); + } + return true; + } } - return true; + Messages.local.sendTranslation(p, "machines.pattern-not-found", true); } + return true; } - Messages.local.sendTranslation(p, "machines.pattern-not-found", true); + else return false; } - return true; - } - else return false; - } - }); - + }); + + + new SlimefunItem(Categories.MACHINES_1, SlimefunItems.IGNITION_CHAMBER, "IGNITION_CHAMBER", RecipeType.ENHANCED_CRAFTING_TABLE, + new ItemStack[] {SlimefunItems.STEEL_PLATE, SlimefunItems.BASIC_CIRCUIT_BOARD, SlimefunItems.STEEL_PLATE, SlimefunItems.ELECTRIC_MOTOR, SlimefunItems.STEEL_PLATE, SlimefunItems.ELECTRIC_MOTOR, null, new ItemStack(Material.HOPPER), null}) + .register(true); + new SlimefunMachine(Categories.MACHINES_1, SlimefunItems.PRESSURE_CHAMBER, "PRESSURE_CHAMBER", new ItemStack[] {new ItemStack(Material.STEP), new CustomItem(Material.DISPENSER, "Dispenser (Facing down)", 0), new ItemStack(Material.STEP), new ItemStack(Material.PISTON_BASE), new ItemStack(Material.GLASS), new ItemStack(Material.PISTON_BASE), new ItemStack(Material.PISTON_BASE), new ItemStack(Material.CAULDRON_ITEM), new ItemStack(Material.PISTON_BASE)}, new ItemStack[] {SlimefunItems.CARBON_CHUNK, SlimefunItems.SYNTHETIC_DIAMOND, SlimefunItems.RAW_CARBONADO, SlimefunItems.CARBONADO}, diff --git a/src/me/mrCookieSlime/Slimefun/listeners/ItemListener.java b/src/me/mrCookieSlime/Slimefun/listeners/ItemListener.java index 7b9ad9640..5b80b9b10 100644 --- a/src/me/mrCookieSlime/Slimefun/listeners/ItemListener.java +++ b/src/me/mrCookieSlime/Slimefun/listeners/ItemListener.java @@ -18,6 +18,7 @@ import org.bukkit.event.block.Action; import org.bukkit.event.entity.EntityChangeBlockEvent; import org.bukkit.event.inventory.CraftItemEvent; import org.bukkit.event.inventory.InventoryClickEvent; +import org.bukkit.event.inventory.InventoryMoveItemEvent; import org.bukkit.event.inventory.InventoryType; import org.bukkit.event.player.PlayerInteractEvent; import org.bukkit.event.player.PlayerItemConsumeEvent; @@ -58,6 +59,13 @@ public class ItemListener implements Listener { plugin.getServer().getPluginManager().registerEvents(this, plugin); } + @EventHandler + public void onIgnitionChamberItemMove(InventoryMoveItemEvent e) { + if(e.getInitiator().getName().equalsIgnoreCase(SlimefunItems.IGNITION_CHAMBER.getItemMeta().getDisplayName()) && e.getInitiator().getType() == InventoryType.HOPPER) { + e.setCancelled(true); + } + } + @SuppressWarnings("deprecation") @EventHandler public void debug(PlayerInteractEvent e) { From 3786ad327b2a3bd13bb7f31f6ac05be2bd78560e Mon Sep 17 00:00:00 2001 From: AtomicScience Date: Wed, 15 Nov 2017 15:24:18 +0300 Subject: [PATCH 02/14] Fix some probelms --- src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java index 7ecb1c2a9..812f1a852 100644 --- a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java +++ b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java @@ -705,10 +705,10 @@ public class SlimefunSetup { .register(true); new SlimefunMachine(Categories.MACHINES_1, SlimefunItems.SMELTERY, "SMELTERY", - new ItemStack[] {null, new ItemStack(Material.NETHER_FENCE), null, new ItemStack(Material.NETHER_BRICK), new CustomItem(Material.DISPENSER, "Ðàçäàò÷èê (Íàïðàâëåí ââåðõ)", 0), new ItemStack(Material.NETHER_BRICK), null, new ItemStack(Material.FLINT_AND_STEEL), null}, - new ItemStack[] {SlimefunItems.IRON_DUST, new ItemStack(Material.IRON_INGOT)}, Material.NETHER_FENCE, - new String[] {"chance.fireBreak"}, new Integer[] {34}) - .register(true, new MultiBlockInteractionHandler() { + new ItemStack[] {null, new ItemStack(Material.NETHER_FENCE), null, new ItemStack(Material.NETHER_BRICK), new CustomItem(Material.DISPENSER, "Dispencer (Faced up)", 0), new ItemStack(Material.NETHER_BRICK), null, new ItemStack(Material.FLINT_AND_STEEL), null}, + new ItemStack[] {SlimefunItems.IRON_DUST, new ItemStack(Material.IRON_INGOT)}, Material.NETHER_FENCE, + new String[] {"chance.fireBreak"}, new Integer[] {34}) + .register(true, new MultiBlockInteractionHandler() { @Override public boolean onInteract(Player p, MultiBlock mb, Block b) { From d8655437c8a28d71b9ac3bc48b9cdf2d364c9c3d Mon Sep 17 00:00:00 2001 From: AtomicScience Date: Wed, 15 Nov 2017 19:23:22 +0300 Subject: [PATCH 03/14] Added a research for Ignition Chamber --- src/me/mrCookieSlime/Slimefun/Setup/ResearchSetup.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/me/mrCookieSlime/Slimefun/Setup/ResearchSetup.java b/src/me/mrCookieSlime/Slimefun/Setup/ResearchSetup.java index f0eeb826e..9ec3b3ce1 100644 --- a/src/me/mrCookieSlime/Slimefun/Setup/ResearchSetup.java +++ b/src/me/mrCookieSlime/Slimefun/Setup/ResearchSetup.java @@ -232,7 +232,8 @@ public class ResearchSetup { Slimefun.registerResearch(new Research(233, "Advanced Androids - Farmer", 30), SlimefunItems.PROGRAMMABLE_ANDROID_2_FARMER); Slimefun.registerResearch(new Research(234, "Lava Generator", 38), SlimefunItems.LAVA_GENERATOR); Slimefun.registerResearch(new Research(235, "Nether Ice Coolant", 45), SlimefunItems.NETHER_ICE, SlimefunItems.ENRICHED_NETHER_ICE, SlimefunItems.NETHER_ICE_COOLANT_CELL, SlimefunItems.NETHER_DRILL); - Slimefun.registerResearch(new Research(236, "Nether Star Reactor", 60), SlimefunItems.NETHERSTAR_REACTOR); - Slimefun.registerResearch(new Research(237, "Blistering Radioactivity", 38), SlimefunItems.BLISTERING_INGOT, SlimefunItems.BLISTERING_INGOT_2, SlimefunItems.BLISTERING_INGOT_3); + Slimefun.registerResearch(new Research(236, "Nether Star Reactor", 60), SlimefunItems.NETHERSTAR_REACTOR); + Slimefun.registerResearch(new Research(237, "Blistering Radioactivity", 38), SlimefunItems.BLISTERING_INGOT, SlimefunItems.BLISTERING_INGOT_2, SlimefunItems.BLISTERING_INGOT_3); + Slimefun.registerResearch(new Research(239, "Automatic Ignition Chamber", 12), SlimefunItems.IGNITION_CHAMBER); } } From d9ef5bab02368ad71125bb62c0d3a03aa39118e1 Mon Sep 17 00:00:00 2001 From: AtomicScience Date: Wed, 15 Nov 2017 20:52:30 +0300 Subject: [PATCH 04/14] Fix issue #319 --- src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java index 812f1a852..b48456dd6 100644 --- a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java +++ b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java @@ -601,7 +601,7 @@ public class SlimefunSetup { @Override public boolean onRightClick(ItemUseEvent e, Player p, ItemStack item) { if (SlimefunManager.isItemSimiliar(item, SlimefunItems.MAGIC_EYE_OF_ENDER, true)) { - e.setCancelled(true); + e.getParentEvent().setCancelled(true); PlayerInventory.update(p); if (p.getInventory().getHelmet() != null && p.getInventory().getChestplate() != null && p.getInventory().getLeggings() != null && p.getInventory().getBoots() != null) { if (SlimefunManager.isItemSimiliar(p.getInventory().getHelmet(), SlimefunItems.ENDER_HELMET, true) && SlimefunManager.isItemSimiliar(p.getInventory().getChestplate(), SlimefunItems.ENDER_CHESTPLATE, true) && SlimefunManager.isItemSimiliar(p.getInventory().getLeggings(), SlimefunItems.ENDER_LEGGINGS, true) && SlimefunManager.isItemSimiliar(p.getInventory().getBoots(), SlimefunItems.ENDER_BOOTS, true)) { From 6605ac9fe3ec8fc952caa485b50ade7cf6416792 Mon Sep 17 00:00:00 2001 From: AtomicScience Date: Wed, 15 Nov 2017 20:56:04 +0300 Subject: [PATCH 05/14] Fix issue #319 --- src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java index b48456dd6..d75a744dc 100644 --- a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java +++ b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java @@ -601,6 +601,8 @@ public class SlimefunSetup { @Override public boolean onRightClick(ItemUseEvent e, Player p, ItemStack item) { if (SlimefunManager.isItemSimiliar(item, SlimefunItems.MAGIC_EYE_OF_ENDER, true)) { + //It don't works + //e.setCanceled(true); e.getParentEvent().setCancelled(true); PlayerInventory.update(p); if (p.getInventory().getHelmet() != null && p.getInventory().getChestplate() != null && p.getInventory().getLeggings() != null && p.getInventory().getBoots() != null) { @@ -980,7 +982,7 @@ public class SlimefunSetup { new SlimefunItem(Categories.RESOURCES, SlimefunItems.LEAD_DUST, "LEAD_DUST", RecipeType.ORE_WASHER, new ItemStack[] {SlimefunItems.SIFTED_ORE, null, null, null, null, null, null, null, null}) .register(true); - + new SlimefunItem(Categories.RESOURCES, SlimefunItems.SILVER_DUST, "SILVER_DUST", RecipeType.ORE_WASHER, new ItemStack[] {SlimefunItems.SIFTED_ORE, null, null, null, null, null, null, null, null}) .register(true); From 534ea6b14f13e1c5be589bb6924b4c060fe78fac Mon Sep 17 00:00:00 2001 From: atom Date: Wed, 15 Nov 2017 21:28:38 +0300 Subject: [PATCH 06/14] Added few more types of Jerky food - all vanilla types of meat and also fish. Removed 'Saturation' effects and changed types of Jerky food --- .../Slimefun/Lists/SlimefunItems.java | 7 ++++- .../Slimefun/Setup/SlimefunSetup.java | 26 ++++++++++++++++++- 2 files changed, 31 insertions(+), 2 deletions(-) diff --git a/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java b/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java index 01e9e696a..d53963cfa 100644 --- a/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java +++ b/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java @@ -92,7 +92,12 @@ public class SlimefunItems { /* Food */ public static ItemStack FORTUNE_COOKIE = new CustomItem(Material.COOKIE, "&6Fortune Cookie", 0, new String[] {"", "&a&oTells you stuff about your Future :o"}); - public static ItemStack BEEF_JERKY = new CustomItem(Material.COOKED_BEEF, "&6Beef Jerky", 0, new String[] {"", "&a&oSaturating"}); + public static ItemStack BEEF_JERKY = new CustomItem(Material.COOKED_BEEF, "&6Beef Jerky", 0, new String[] {"", "&a&oTasty..."}); + public static ItemStack CHICKEN_JERKY = new CustomItem(Material.COOKED_CHICKEN, "&6Chicken Jerky", 0, new String[] {"", "&a&oTasty..."}); + public static ItemStack PORK_JERKY = new CustomItem(Material.GRILLED_PORK, "&6Pork Jerky", 0, new String[] {"", "&a&oTasty..."}); + public static ItemStack MUTTON_JERKY = new CustomItem(Material.COOKED_MUTTON, "&6Mutton Jerky", 0, new String[] {"", "&a&oTasty..."}); + public static ItemStack RABBIT_JERKY = new CustomItem(Material.COOKED_RABBIT, "&6Jerky Rabbit", 0, new String[] {"", "&a&oTasty..."}); + public static ItemStack FISH_JERKY = new CustomItem(Material.COOKED_FISH, "&6Jerky Fish", 0, new String[] {"", "&a&oTasty..."}); public static ItemStack MAGIC_SUGAR = new CustomItem(Material.SUGAR, "&6Magic Sugar", 0, new String[] {"", "&a&oFeel the Power of Hermes!"}); public static ItemStack MONSTER_JERKY = new CustomItem(Material.ROTTEN_FLESH, "&6Monster Jerky", 0, new String[] {"", "&a&oNo longer hungry"}); public static ItemStack APPLE_JUICE = new CustomPotion("&cApple Juice", 8197, new String[0], new PotionEffect(PotionEffectType.SATURATION, 10, 0)); diff --git a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java index d75a744dc..04310192e 100644 --- a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java +++ b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java @@ -327,7 +327,31 @@ public class SlimefunSetup { }); new SlimefunItem(Categories.FOOD, SlimefunItems.BEEF_JERKY, "BEEF_JERKY", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] {SlimefunItems.SALT, new ItemStack(Material.COOKED_BEEF), null, null, null, null, null, null, null}, new String[] {"Saturation"}, new Integer[] {20}) + new ItemStack[] {SlimefunItems.SALT, new ItemStack(Material.RAW_BEEF), null, null, null, null, null, null, null}) + .register(true); + + new SlimefunItem(Categories.FOOD, SlimefunItems.CHICKEN_JERKY, "CHICKEN_JERKY", RecipeType.ENHANCED_CRAFTING_TABLE, + new ItemStack[] {SlimefunItems.SALT, new ItemStack(Material.RAW_CHICKEN), null, null, null, null, null, null, null}) + .register(true); + + new SlimefunItem(Categories.FOOD, SlimefunItems.PORK_JERKY, "PORK_JERKY", RecipeType.ENHANCED_CRAFTING_TABLE, + new ItemStack[] {SlimefunItems.SALT, new ItemStack(Material.PORK), null, null, null, null, null, null, null}) + .register(true); + + new SlimefunItem(Categories.FOOD, SlimefunItems.RABBIT_JERKY, "RABBIT_JERKY", RecipeType.ENHANCED_CRAFTING_TABLE, + new ItemStack[] {SlimefunItems.SALT, new ItemStack(Material.RABBIT), null, null, null, null, null, null, null}) + .register(true); + + new SlimefunItem(Categories.FOOD, SlimefunItems.MUTTON_JERKY, "MUTTON_JERKY", RecipeType.ENHANCED_CRAFTING_TABLE, + new ItemStack[] {SlimefunItems.SALT, new ItemStack(Material.MUTTON), null, null, null, null, null, null, null}) + .register(true); + + new SlimefunItem(Categories.FOOD, SlimefunItems.FISH_JERKY, "FISH_JERKY", RecipeType.ENHANCED_CRAFTING_TABLE, + new ItemStack[] {SlimefunItems.SALT, new ItemStack(Material.RAW_FISH), null, null, null, null, null, null, null}) + .register(true); + + new SlimefunItem(Categories.FOOD, SlimefunItems.MONSTER_JERKY, "MONSTER_JERKY", RecipeType.ENHANCED_CRAFTING_TABLE, + new ItemStack[] {SlimefunItems.SALT, new ItemStack(Material.ROTTEN_FLESH), null, null, null, null, null, null, null}) .register(true); new SlimefunMachine(Categories.MACHINES_1, SlimefunItems.GRIND_STONE, "GRIND_STONE", From 9645b8db81a73ffcf9d7d8588a989d7145395aa3 Mon Sep 17 00:00:00 2001 From: atom Date: Wed, 15 Nov 2017 21:45:52 +0300 Subject: [PATCH 07/14] Revert "Added few more types of Jerky food - all vanilla types of meat and also fish. Removed 'Saturation' effects and changed types of Jerky food" This reverts commit 534ea6b14f13e1c5be589bb6924b4c060fe78fac. --- .../Slimefun/Lists/SlimefunItems.java | 7 +---- .../Slimefun/Setup/SlimefunSetup.java | 26 +------------------ 2 files changed, 2 insertions(+), 31 deletions(-) diff --git a/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java b/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java index d53963cfa..01e9e696a 100644 --- a/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java +++ b/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java @@ -92,12 +92,7 @@ public class SlimefunItems { /* Food */ public static ItemStack FORTUNE_COOKIE = new CustomItem(Material.COOKIE, "&6Fortune Cookie", 0, new String[] {"", "&a&oTells you stuff about your Future :o"}); - public static ItemStack BEEF_JERKY = new CustomItem(Material.COOKED_BEEF, "&6Beef Jerky", 0, new String[] {"", "&a&oTasty..."}); - public static ItemStack CHICKEN_JERKY = new CustomItem(Material.COOKED_CHICKEN, "&6Chicken Jerky", 0, new String[] {"", "&a&oTasty..."}); - public static ItemStack PORK_JERKY = new CustomItem(Material.GRILLED_PORK, "&6Pork Jerky", 0, new String[] {"", "&a&oTasty..."}); - public static ItemStack MUTTON_JERKY = new CustomItem(Material.COOKED_MUTTON, "&6Mutton Jerky", 0, new String[] {"", "&a&oTasty..."}); - public static ItemStack RABBIT_JERKY = new CustomItem(Material.COOKED_RABBIT, "&6Jerky Rabbit", 0, new String[] {"", "&a&oTasty..."}); - public static ItemStack FISH_JERKY = new CustomItem(Material.COOKED_FISH, "&6Jerky Fish", 0, new String[] {"", "&a&oTasty..."}); + public static ItemStack BEEF_JERKY = new CustomItem(Material.COOKED_BEEF, "&6Beef Jerky", 0, new String[] {"", "&a&oSaturating"}); public static ItemStack MAGIC_SUGAR = new CustomItem(Material.SUGAR, "&6Magic Sugar", 0, new String[] {"", "&a&oFeel the Power of Hermes!"}); public static ItemStack MONSTER_JERKY = new CustomItem(Material.ROTTEN_FLESH, "&6Monster Jerky", 0, new String[] {"", "&a&oNo longer hungry"}); public static ItemStack APPLE_JUICE = new CustomPotion("&cApple Juice", 8197, new String[0], new PotionEffect(PotionEffectType.SATURATION, 10, 0)); diff --git a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java index 04310192e..d75a744dc 100644 --- a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java +++ b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java @@ -327,31 +327,7 @@ public class SlimefunSetup { }); new SlimefunItem(Categories.FOOD, SlimefunItems.BEEF_JERKY, "BEEF_JERKY", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] {SlimefunItems.SALT, new ItemStack(Material.RAW_BEEF), null, null, null, null, null, null, null}) - .register(true); - - new SlimefunItem(Categories.FOOD, SlimefunItems.CHICKEN_JERKY, "CHICKEN_JERKY", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] {SlimefunItems.SALT, new ItemStack(Material.RAW_CHICKEN), null, null, null, null, null, null, null}) - .register(true); - - new SlimefunItem(Categories.FOOD, SlimefunItems.PORK_JERKY, "PORK_JERKY", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] {SlimefunItems.SALT, new ItemStack(Material.PORK), null, null, null, null, null, null, null}) - .register(true); - - new SlimefunItem(Categories.FOOD, SlimefunItems.RABBIT_JERKY, "RABBIT_JERKY", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] {SlimefunItems.SALT, new ItemStack(Material.RABBIT), null, null, null, null, null, null, null}) - .register(true); - - new SlimefunItem(Categories.FOOD, SlimefunItems.MUTTON_JERKY, "MUTTON_JERKY", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] {SlimefunItems.SALT, new ItemStack(Material.MUTTON), null, null, null, null, null, null, null}) - .register(true); - - new SlimefunItem(Categories.FOOD, SlimefunItems.FISH_JERKY, "FISH_JERKY", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] {SlimefunItems.SALT, new ItemStack(Material.RAW_FISH), null, null, null, null, null, null, null}) - .register(true); - - new SlimefunItem(Categories.FOOD, SlimefunItems.MONSTER_JERKY, "MONSTER_JERKY", RecipeType.ENHANCED_CRAFTING_TABLE, - new ItemStack[] {SlimefunItems.SALT, new ItemStack(Material.ROTTEN_FLESH), null, null, null, null, null, null, null}) + new ItemStack[] {SlimefunItems.SALT, new ItemStack(Material.COOKED_BEEF), null, null, null, null, null, null, null}, new String[] {"Saturation"}, new Integer[] {20}) .register(true); new SlimefunMachine(Categories.MACHINES_1, SlimefunItems.GRIND_STONE, "GRIND_STONE", From 62293bed4e03d2b2ae8831c3947c3bcf9fc7997f Mon Sep 17 00:00:00 2001 From: AtomicScience Date: Thu, 16 Nov 2017 13:23:09 +0300 Subject: [PATCH 08/14] Changed the lore of 'Ignition Chamber' --- src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java b/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java index 01e9e696a..72b367896 100644 --- a/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java +++ b/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java @@ -361,7 +361,7 @@ public class SlimefunItems { public static ItemStack GRIND_STONE = new CustomItem(Material.DISPENSER, "&bGrind Stone", 0, new String[] {"", "&a&oGrinds Items for more Efficiency"}); public static ItemStack ARMOR_FORGE = new CustomItem(Material.ANVIL, "&6Armor Forge", 0, new String[] {"", "&a&oGives you the Ability to create powerful Armor"}); public static ItemStack SMELTERY = new CustomItem(Material.FURNACE, "&6Smeltery", 0, new String[] {"", "&a&oActs as a high-temperature Furnace for Metals"}); - public static ItemStack IGNITION_CHAMBER = new CustomItem(new ItemStack(Material.HOPPER), "&4Automatic Ignition Chamber", "&rAre you constantly enraged by the fading fire under the Smelter too?", "&rWe found the solution!", "&rJust easily place this Chamber near the dispencer", "&rof your Smelter, and block under it will be ignited automatically!", "&e&oRequires Flint'n Steels to run"); + public static ItemStack IGNITION_CHAMBER = new CustomItem(new ItemStack(Material.HOPPER), "&4Automatic Ignition Chamber", "&rAutomatically ignites the block under the Smelter,", "&ron which it's installed", "&e&oRequires Flint'n Steels to run"); public static ItemStack ORE_CRUSHER = new CustomItem(Material.DISPENSER, "&bOre Crusher", 0, new String[] {"", "&a&oCrushes Ores to double them"}); public static ItemStack COMPRESSOR = new CustomItem(Material.PISTON_BASE, "&bCompressor", 0, new String[] {"", "&a&oCompresses Items"}); public static ItemStack PRESSURE_CHAMBER = new CustomItem(Material.GLASS, "&bPressure Chamber", 0, new String[] {"", "&a&oCompresses Items even more"}); @@ -705,7 +705,7 @@ public class SlimefunItems { PROGRAMMABLE_ANDROID = new CustomItem(CustomSkull.getItem("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMzUwM2NiN2VkODQ1ZTdhNTA3ZjU2OWFmYzY0N2M0N2FjNDgzNzcxNDY1YzlhNjc5YTU0NTk0Yzc2YWZiYSJ9fX0="), "&cProgrammable Android &7(Normal)", "", "&8\u21E8 &7Function: None", "&8\u21E8 &7Fuel Efficiency: 1.0x"); PROGRAMMABLE_ANDROID_FARMER = new CustomItem(CustomSkull.getItem("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZjlkMzMzNTdlODQxODgyM2JmNzgzZGU5MmRlODAyOTFiNGViZDM5MmFlYzg3MDY2OThlMDY4OTZkNDk4ZjYifX19"), "&cProgrammable Android &7(Farmer)", "", "&8\u21E8 &7Function: Farming", "&8\u21E8 &7Fuel Efficiency: 1.0x"); - PROGRAMMABLE_ANDROID_MINER = new CustomItem(CustomSkull.getItem("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZTYzOGEyODU0MWFiM2FlMGE3MjNkNTU3ODczOGUwODc1ODM4OGVjNGMzMzI0N2JkNGNhMTM0ODJhZWYzMzQifX19"), "§cProgrammable Android &7(Miner)", "", "§8\u21E8 §7Function: Mining", "§8\u21E8 §7Fuel Efficiency: 1.0x"); + PROGRAMMABLE_ANDROID_MINER = new CustomItem(CustomSkull.getItem("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZTYzOGEyODU0MWFiM2FlMGE3MjNkNTU3ODczOGUwODc1ODM4OGVjNGMzMzI0N2JkNGNhMTM0ODJhZWYzMzQifX19"), "§cProgrammable Android &7(Miner)", "", "§8\u21E8 §7Function: Mining", "§8\u21E8 §7Fuel Efficiency: 1.0x"); PROGRAMMABLE_ANDROID_WOODCUTTER = new CustomItem(CustomSkull.getItem("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZDMyYTgxNDUxMDE0MjIwNTE2OWExYWQzMmYwYTc0NWYxOGU5Y2I2YzY2ZWU2NGVjYTJlNjViYWJkZWY5ZmYifX19"), "&cProgrammable Android &7(Woodcutter)", "", "&8\u21E8 &7Function: Woodcutting", "&8\u21E8 &7Fuel Efficiency: 1.0x"); PROGRAMMABLE_ANDROID_BUTCHER = new CustomItem(CustomSkull.getItem("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvM2I0NzJkZjBhZDlhM2JlODhmMmU1ZDVkNDIyZDAyYjExNmQ2NGQ4ZGYxNDc1ZWQzMmU1NDZhZmM4NGIzMSJ9fX0="), "&cProgrammable Android &7(Butcher)", "", "&8\u21E8 &7Function: Slaughtering", "&8\u21E8 &7Damage: 4", "&8\u21E8 &7Fuel Efficiency: 1.0x"); PROGRAMMABLE_ANDROID_FISHERMAN = new CustomItem(CustomSkull.getItem("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMzQ1ZTg3MzNhNzMxMTQzMzNiOThiMzYwMTc1MTI0MTcyMmY0NzEzZTFhMWE1ZDM2ZmJiMTMyNDkzZjFjNyJ9fX0="), "&cProgrammable Android &7(Fisherman)", "", "&8\u21E8 &7Function: Fishing", "&8\u21E8 &7Success Rate: 10%", "&8\u21E8 &7Fuel Efficiency: 1.0x"); From 4180f5548cd1704fe0a3fd55db4b9e00c14d3bf2 Mon Sep 17 00:00:00 2001 From: AtomicScience Date: Mon, 20 Nov 2017 15:09:36 +0300 Subject: [PATCH 09/14] Changed the lore of Chamber a little --- src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java b/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java index 72b367896..0c8be8b5e 100644 --- a/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java +++ b/src/me/mrCookieSlime/Slimefun/Lists/SlimefunItems.java @@ -361,7 +361,7 @@ public class SlimefunItems { public static ItemStack GRIND_STONE = new CustomItem(Material.DISPENSER, "&bGrind Stone", 0, new String[] {"", "&a&oGrinds Items for more Efficiency"}); public static ItemStack ARMOR_FORGE = new CustomItem(Material.ANVIL, "&6Armor Forge", 0, new String[] {"", "&a&oGives you the Ability to create powerful Armor"}); public static ItemStack SMELTERY = new CustomItem(Material.FURNACE, "&6Smeltery", 0, new String[] {"", "&a&oActs as a high-temperature Furnace for Metals"}); - public static ItemStack IGNITION_CHAMBER = new CustomItem(new ItemStack(Material.HOPPER), "&4Automatic Ignition Chamber", "&rAutomatically ignites the block under the Smelter,", "&ron which it's installed", "&e&oRequires Flint'n Steels to run"); + public static ItemStack IGNITION_CHAMBER = new CustomItem(new ItemStack(Material.HOPPER), "&4Automatic Ignition Chamber", "&rPrevents the Smeltery from using up fire.", "&rRequires Flint and Steel", "&rMust be placed adjacent to the Smeltery's dispenser"); public static ItemStack ORE_CRUSHER = new CustomItem(Material.DISPENSER, "&bOre Crusher", 0, new String[] {"", "&a&oCrushes Ores to double them"}); public static ItemStack COMPRESSOR = new CustomItem(Material.PISTON_BASE, "&bCompressor", 0, new String[] {"", "&a&oCompresses Items"}); public static ItemStack PRESSURE_CHAMBER = new CustomItem(Material.GLASS, "&bPressure Chamber", 0, new String[] {"", "&a&oCompresses Items even more"}); From b61bd7c3ef3900e87394235362ea0c3ae026c1cc Mon Sep 17 00:00:00 2001 From: AtomicScience Date: Mon, 20 Nov 2017 15:12:09 +0300 Subject: [PATCH 10/14] Updated "machines.ignition-chamber-no-flint" --- src/me/mrCookieSlime/Slimefun/Setup/Messages.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/me/mrCookieSlime/Slimefun/Setup/Messages.java b/src/me/mrCookieSlime/Slimefun/Setup/Messages.java index 194c6b0f7..901e9612c 100644 --- a/src/me/mrCookieSlime/Slimefun/Setup/Messages.java +++ b/src/me/mrCookieSlime/Slimefun/Setup/Messages.java @@ -70,7 +70,7 @@ public class Messages { local.setDefault("commands.research.reset", "&cYou have reset %player%'s Knowledge"); local.setDefault("commands.research.reset-target", "&cYour Knowledge has been reset"); local.setDefault("machines.in-use", "&cThis Block's Inventory is currently opened by a different Player."); - local.setDefault("machines.ignition-chamber-no-flint", "&cAutomatic Ignition Chamber failed to ignite block because of no Flint'n steel found"); + local.setDefault("machines.ignition-chamber-no-flint", "&cIgnition Chamber is missing Flint and Steel."); local.setDefault("gps.waypoint.new", "&ePlease type in a Name for your new Waypoint in the Chat. &7(Color Codes supported!)"); local.setDefault("gps.waypoint.added", "&aSuccessfully added a new Waypoint"); From 7270eee3c4ff35a1437c5a78b453f51480373166 Mon Sep 17 00:00:00 2001 From: atom Date: Mon, 20 Nov 2017 15:48:17 +0300 Subject: [PATCH 11/14] Changed the way of detect the Chamber in onIgnitionChamberItemMove --- src/me/mrCookieSlime/Slimefun/listeners/ItemListener.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/me/mrCookieSlime/Slimefun/listeners/ItemListener.java b/src/me/mrCookieSlime/Slimefun/listeners/ItemListener.java index 5b80b9b10..72e326556 100644 --- a/src/me/mrCookieSlime/Slimefun/listeners/ItemListener.java +++ b/src/me/mrCookieSlime/Slimefun/listeners/ItemListener.java @@ -7,6 +7,7 @@ import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.Material; import org.bukkit.block.Block; +import org.bukkit.block.Hopper; import org.bukkit.block.Skull; import org.bukkit.entity.FallingBlock; import org.bukkit.entity.Player; @@ -61,7 +62,7 @@ public class ItemListener implements Listener { @EventHandler public void onIgnitionChamberItemMove(InventoryMoveItemEvent e) { - if(e.getInitiator().getName().equalsIgnoreCase(SlimefunItems.IGNITION_CHAMBER.getItemMeta().getDisplayName()) && e.getInitiator().getType() == InventoryType.HOPPER) { + if(BlockStorage.check(((Hopper) e.getInitiator().getHolder()).getBlock(), "IGNITION_CHAMBER")) { e.setCancelled(true); } } From 89b1da7db8d269bf186c2377c840a49131b6c605 Mon Sep 17 00:00:00 2001 From: AtomicScience Date: Mon, 20 Nov 2017 15:48:52 +0300 Subject: [PATCH 12/14] Changed the way of detect the Chamber --- .../Slimefun/Setup/SlimefunSetup.java | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java index d75a744dc..1109d99af 100644 --- a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java +++ b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java @@ -749,30 +749,30 @@ public class SlimefunSetup { p.getWorld().playEffect(b.getLocation(), Effect.MOBSPAWNER_FLAMES, 1); Block raw_disp = b.getRelative(BlockFace.DOWN); Hopper resf = null; + boolean isIgnitionChamberInstalled = false; - if(raw_disp.getRelative(BlockFace.EAST).getState().getBlock().getType().name() == "HOPPER") { + if(BlockStorage.check(raw_disp.getRelative(BlockFace.EAST).getState().getBlock(), "IGNITION_CHAMBER")) { resf = (Hopper) raw_disp.getRelative(BlockFace.EAST).getState(); - } else if (raw_disp.getRelative(BlockFace.WEST).getState().getBlock().getType().name() == "HOPPER") { + isIgnitionChamberInstalled = true; + } else if (BlockStorage.check(raw_disp.getRelative(BlockFace.WEST).getState().getBlock(), "IGNITION_CHAMBER")) { resf = (Hopper) raw_disp.getRelative(BlockFace.WEST).getState(); - } else if (raw_disp.getRelative(BlockFace.NORTH).getState().getBlock().getType().name() == "HOPPER") { + isIgnitionChamberInstalled = true; + } else if (BlockStorage.check(raw_disp.getRelative(BlockFace.NORTH).getState().getBlock(), "IGNITION_CHAMBER")) { resf = (Hopper) raw_disp.getRelative(BlockFace.NORTH).getState(); - } else if (raw_disp.getRelative(BlockFace.SOUTH).getState().getBlock().getType().name() == "HOPPER"){ + isIgnitionChamberInstalled = true; + } else if (BlockStorage.check(raw_disp.getRelative(BlockFace.SOUTH).getState().getBlock(), "IGNITION_CHAMBER")){ resf = (Hopper) raw_disp.getRelative(BlockFace.SOUTH).getState(); - } - boolean isIgniteChamberInstalled = false; - - if(resf != null) { - if(resf.getCustomName().equalsIgnoreCase(SlimefunItems.IGNITION_CHAMBER.getItemMeta().getDisplayName())) isIgniteChamberInstalled = true; + isIgnitionChamberInstalled = true; } if (SlimefunStartup.chance(100, (Integer) Slimefun.getItemValue("SMELTERY", "chance.fireBreak"))) { - if(isIgniteChamberInstalled) { + if(isIgnitionChamberInstalled) { if(resf.getInventory().contains(Material.FLINT_AND_STEEL)) { ItemStack item = resf.getInventory().getItem(resf.getInventory().first(Material.FLINT_AND_STEEL)); item.setDurability((short) (item.getDurability() + 1)); - if(item.getDurability() >= 64) { - item.setAmount(0); p.getWorld().playSound(p.getLocation(), Sound.ENTITY_ITEM_BREAK, 1, 1); - item.setAmount(0); + if(item.getDurability() >= item.getType().getMaxDurability()) { + item.setAmount(0); + p.getWorld().playSound(p.getLocation(), Sound.ENTITY_ITEM_BREAK, 1, 1); } p.getWorld().playSound(p.getLocation(), Sound.ITEM_FLINTANDSTEEL_USE, 1, 1); } else { From cb5f146840572886d6638ee41ef3f5e1f56a5753 Mon Sep 17 00:00:00 2001 From: AtomicScience Date: Mon, 20 Nov 2017 17:59:20 +0300 Subject: [PATCH 13/14] Code optimization --- src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java index 1109d99af..1c5af2863 100644 --- a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java +++ b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java @@ -749,24 +749,18 @@ public class SlimefunSetup { p.getWorld().playEffect(b.getLocation(), Effect.MOBSPAWNER_FLAMES, 1); Block raw_disp = b.getRelative(BlockFace.DOWN); Hopper resf = null; - boolean isIgnitionChamberInstalled = false; - if(BlockStorage.check(raw_disp.getRelative(BlockFace.EAST).getState().getBlock(), "IGNITION_CHAMBER")) { resf = (Hopper) raw_disp.getRelative(BlockFace.EAST).getState(); - isIgnitionChamberInstalled = true; } else if (BlockStorage.check(raw_disp.getRelative(BlockFace.WEST).getState().getBlock(), "IGNITION_CHAMBER")) { resf = (Hopper) raw_disp.getRelative(BlockFace.WEST).getState(); - isIgnitionChamberInstalled = true; } else if (BlockStorage.check(raw_disp.getRelative(BlockFace.NORTH).getState().getBlock(), "IGNITION_CHAMBER")) { resf = (Hopper) raw_disp.getRelative(BlockFace.NORTH).getState(); - isIgnitionChamberInstalled = true; } else if (BlockStorage.check(raw_disp.getRelative(BlockFace.SOUTH).getState().getBlock(), "IGNITION_CHAMBER")){ resf = (Hopper) raw_disp.getRelative(BlockFace.SOUTH).getState(); - isIgnitionChamberInstalled = true; } if (SlimefunStartup.chance(100, (Integer) Slimefun.getItemValue("SMELTERY", "chance.fireBreak"))) { - if(isIgnitionChamberInstalled) { + if(resf != null) { if(resf.getInventory().contains(Material.FLINT_AND_STEEL)) { ItemStack item = resf.getInventory().getItem(resf.getInventory().first(Material.FLINT_AND_STEEL)); item.setDurability((short) (item.getDurability() + 1)); From afb341acff38a28b08879102060fcfef68752e1f Mon Sep 17 00:00:00 2001 From: AtomicScience Date: Tue, 21 Nov 2017 11:25:06 +0300 Subject: [PATCH 14/14] "resf" renamed to "chamber" --- .../Slimefun/Setup/SlimefunSetup.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java index 1c5af2863..ec09ef607 100644 --- a/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java +++ b/src/me/mrCookieSlime/Slimefun/Setup/SlimefunSetup.java @@ -748,21 +748,21 @@ public class SlimefunSetup { p.getWorld().playSound(p.getLocation(), Sound.BLOCK_LAVA_POP, 1, 1); p.getWorld().playEffect(b.getLocation(), Effect.MOBSPAWNER_FLAMES, 1); Block raw_disp = b.getRelative(BlockFace.DOWN); - Hopper resf = null; + Hopper chamber = null; if(BlockStorage.check(raw_disp.getRelative(BlockFace.EAST).getState().getBlock(), "IGNITION_CHAMBER")) { - resf = (Hopper) raw_disp.getRelative(BlockFace.EAST).getState(); + chamber = (Hopper) raw_disp.getRelative(BlockFace.EAST).getState(); } else if (BlockStorage.check(raw_disp.getRelative(BlockFace.WEST).getState().getBlock(), "IGNITION_CHAMBER")) { - resf = (Hopper) raw_disp.getRelative(BlockFace.WEST).getState(); + chamber = (Hopper) raw_disp.getRelative(BlockFace.WEST).getState(); } else if (BlockStorage.check(raw_disp.getRelative(BlockFace.NORTH).getState().getBlock(), "IGNITION_CHAMBER")) { - resf = (Hopper) raw_disp.getRelative(BlockFace.NORTH).getState(); + chamber = (Hopper) raw_disp.getRelative(BlockFace.NORTH).getState(); } else if (BlockStorage.check(raw_disp.getRelative(BlockFace.SOUTH).getState().getBlock(), "IGNITION_CHAMBER")){ - resf = (Hopper) raw_disp.getRelative(BlockFace.SOUTH).getState(); + chamber = (Hopper) raw_disp.getRelative(BlockFace.SOUTH).getState(); } if (SlimefunStartup.chance(100, (Integer) Slimefun.getItemValue("SMELTERY", "chance.fireBreak"))) { - if(resf != null) { - if(resf.getInventory().contains(Material.FLINT_AND_STEEL)) { - ItemStack item = resf.getInventory().getItem(resf.getInventory().first(Material.FLINT_AND_STEEL)); + if(chamber != null) { + if(chamber.getInventory().contains(Material.FLINT_AND_STEEL)) { + ItemStack item = chamber.getInventory().getItem(chamber.getInventory().first(Material.FLINT_AND_STEEL)); item.setDurability((short) (item.getDurability() + 1)); if(item.getDurability() >= item.getType().getMaxDurability()) { item.setAmount(0);