diff --git a/pom.xml b/pom.xml
index c096f6b84..56a19a6dd 100644
--- a/pom.xml
+++ b/pom.xml
@@ -70,6 +70,7 @@
**/cscorelib2/updater/**
**/cscorelib2/materials/**
**/cscorelib2/protection/**
+ **/cscorelib2/item/**
@@ -125,7 +126,7 @@
com.github.thebusybiscuit
CS-CoreLib2
- 0.5.1
+ 0.5.2
compile
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/MultiBlock.java b/src/me/mrCookieSlime/Slimefun/Objects/MultiBlock.java
index f59e27628..f525952f7 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/MultiBlock.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/MultiBlock.java
@@ -3,9 +3,9 @@ package me.mrCookieSlime.Slimefun.Objects;
import java.util.List;
import org.bukkit.Material;
+import org.bukkit.Tag;
import org.bukkit.block.BlockFace;
-import me.mrCookieSlime.CSCoreLibPlugin.compatibility.MaterialHelper;
import me.mrCookieSlime.Slimefun.SlimefunPlugin;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunMachine;
@@ -74,8 +74,8 @@ public class MultiBlock {
private boolean compareBlocks(Material a, Material b) {
if (b != null) {
- if (MaterialHelper.isLog(b)) {
- return MaterialHelper.isLog(a);
+ if (Tag.LOGS.isTagged(b)) {
+ return Tag.LOGS.isTagged(a);
}
if (b != a) {
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/abstractItems/AContainer.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/abstractItems/AContainer.java
index a2f4b7c21..188a3ab0f 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/abstractItems/AContainer.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/abstractItems/AContainer.java
@@ -26,6 +26,7 @@ import me.mrCookieSlime.Slimefun.api.BlockStorage;
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
import me.mrCookieSlime.Slimefun.api.inventory.BlockMenu;
import me.mrCookieSlime.Slimefun.api.inventory.BlockMenuPreset;
+import me.mrCookieSlime.Slimefun.utils.MachineHelper;
public abstract class AContainer extends SlimefunItem implements InventoryBlock {
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/abstractItems/ADrill.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/abstractItems/ADrill.java
index d3faabb1f..da1b4b33c 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/abstractItems/ADrill.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/abstractItems/ADrill.java
@@ -18,6 +18,7 @@ import me.mrCookieSlime.Slimefun.api.BlockStorage;
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
import me.mrCookieSlime.Slimefun.api.inventory.BlockMenuPreset;
import me.mrCookieSlime.Slimefun.api.item_transport.ItemTransportFlow;
+import me.mrCookieSlime.Slimefun.utils.MachineHelper;
@Deprecated
public abstract class ADrill extends AContainer {
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/abstractItems/AGenerator.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/abstractItems/AGenerator.java
index 2431c49ba..fde83be69 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/abstractItems/AGenerator.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/abstractItems/AGenerator.java
@@ -38,6 +38,7 @@ import me.mrCookieSlime.Slimefun.api.energy.EnergyTicker;
import me.mrCookieSlime.Slimefun.api.inventory.BlockMenu;
import me.mrCookieSlime.Slimefun.api.inventory.BlockMenuPreset;
import me.mrCookieSlime.Slimefun.api.item_transport.ItemTransportFlow;
+import me.mrCookieSlime.Slimefun.utils.MachineHelper;
public abstract class AGenerator extends SlimefunItem implements RecipeDisplayItem {
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/abstractItems/AReactor.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/abstractItems/AReactor.java
index c4a6d6576..4f63c048b 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/abstractItems/AReactor.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/abstractItems/AReactor.java
@@ -43,6 +43,7 @@ import me.mrCookieSlime.Slimefun.api.inventory.BlockMenu;
import me.mrCookieSlime.Slimefun.api.inventory.BlockMenuPreset;
import me.mrCookieSlime.Slimefun.api.item_transport.ItemTransportFlow;
import me.mrCookieSlime.Slimefun.holograms.ReactorHologram;
+import me.mrCookieSlime.Slimefun.utils.MachineHelper;
public abstract class AReactor extends SlimefunItem implements RecipeDisplayItem {
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/items/LumberAxe.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/items/LumberAxe.java
index 857946295..0ae85845d 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/items/LumberAxe.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/items/LumberAxe.java
@@ -8,8 +8,8 @@ import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.inventory.ItemStack;
+import io.github.thebusybiscuit.cscorelib2.materials.MaterialCollections;
import io.github.thebusybiscuit.cscorelib2.protection.ProtectableAction;
-import me.mrCookieSlime.CSCoreLibPlugin.compatibility.MaterialHelper;
import me.mrCookieSlime.CSCoreLibPlugin.general.Block.TreeCalculator;
import me.mrCookieSlime.Slimefun.SlimefunPlugin;
import me.mrCookieSlime.Slimefun.Lists.RecipeType;
@@ -29,7 +29,7 @@ public class LumberAxe extends SimpleSlimefunItem implements
public BlockBreakHandler getItemHandler() {
return (e, item, fortune, drops) -> {
if (SlimefunManager.isItemSimiliar(e.getPlayer().getInventory().getItemInMainHand(), getItem(), true)) {
- if (MaterialHelper.isLog( e.getBlock().getType())) {
+ if (MaterialCollections.contains(e.getBlock().getType(), MaterialCollections.getAllLogs())) {
List logs = new ArrayList<>();
TreeCalculator.getTree(e.getBlock().getLocation(), e.getBlock().getLocation(), logs);
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/Crucible.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/Crucible.java
index 58a69e723..b021f2340 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/Crucible.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/Crucible.java
@@ -10,8 +10,8 @@ import org.bukkit.block.data.Levelled;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
+import io.github.thebusybiscuit.cscorelib2.materials.MaterialCollections;
import io.github.thebusybiscuit.cscorelib2.protection.ProtectableAction;
-import me.mrCookieSlime.CSCoreLibPlugin.compatibility.MaterialHelper;
import me.mrCookieSlime.CSCoreLibPlugin.events.ItemUseEvent;
import me.mrCookieSlime.Slimefun.SlimefunPlugin;
import me.mrCookieSlime.Slimefun.Lists.RecipeType;
@@ -52,7 +52,7 @@ public class Crucible extends SlimefunGadget {
for (int i = 1; i < 9; i++) {int j = 8 - i;
Bukkit.getScheduler().runTaskLater(SlimefunPlugin.instance, () -> {
- if (input.getType() == Material.COBBLESTONE || input.getType() == Material.TERRACOTTA || MaterialHelper.isTerracotta(input.getType())) {
+ if (input.getType() == Material.COBBLESTONE || input.getType() == Material.TERRACOTTA || MaterialCollections.contains(input.getType(), MaterialCollections.getAllTerracottaColors())) {
block.setType(Material.LAVA);
Levelled le = (Levelled) block.getBlockData();
le.setLevel(j);
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/AutoAnvil.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/AutoAnvil.java
index c1e18d108..ffbf7a104 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/AutoAnvil.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/AutoAnvil.java
@@ -12,12 +12,12 @@ import me.mrCookieSlime.Slimefun.Lists.RecipeType;
import me.mrCookieSlime.Slimefun.Lists.SlimefunItems;
import me.mrCookieSlime.Slimefun.Objects.Category;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.AContainer;
-import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineHelper;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineRecipe;
import me.mrCookieSlime.Slimefun.Setup.SlimefunManager;
import me.mrCookieSlime.Slimefun.api.BlockStorage;
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
import me.mrCookieSlime.Slimefun.api.inventory.BlockMenu;
+import me.mrCookieSlime.Slimefun.utils.MachineHelper;
public abstract class AutoAnvil extends AContainer {
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/AutoDisenchanter.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/AutoDisenchanter.java
index 4a4b937a8..4eac21650 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/AutoDisenchanter.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/AutoDisenchanter.java
@@ -20,11 +20,11 @@ import me.mrCookieSlime.Slimefun.Lists.RecipeType;
import me.mrCookieSlime.Slimefun.Objects.Category;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.AContainer;
-import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineHelper;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineRecipe;
import me.mrCookieSlime.Slimefun.api.BlockStorage;
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
import me.mrCookieSlime.Slimefun.api.inventory.BlockMenu;
+import me.mrCookieSlime.Slimefun.utils.MachineHelper;
public class AutoDisenchanter extends AContainer {
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/AutoDrier.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/AutoDrier.java
index 43e08855d..aca20b44f 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/AutoDrier.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/AutoDrier.java
@@ -14,12 +14,12 @@ import me.mrCookieSlime.Slimefun.Lists.RecipeType;
import me.mrCookieSlime.Slimefun.Lists.SlimefunItems;
import me.mrCookieSlime.Slimefun.Objects.Category;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.AContainer;
-import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineHelper;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineRecipe;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.interfaces.RecipeDisplayItem;
import me.mrCookieSlime.Slimefun.Setup.SlimefunManager;
import me.mrCookieSlime.Slimefun.api.BlockStorage;
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
+import me.mrCookieSlime.Slimefun.utils.MachineHelper;
public class AutoDrier extends AContainer implements RecipeDisplayItem {
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/AutoEnchanter.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/AutoEnchanter.java
index e1250db32..cbdfa5132 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/AutoEnchanter.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/AutoEnchanter.java
@@ -20,11 +20,11 @@ import me.mrCookieSlime.Slimefun.Lists.RecipeType;
import me.mrCookieSlime.Slimefun.Objects.Category;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.AContainer;
-import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineHelper;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineRecipe;
import me.mrCookieSlime.Slimefun.api.BlockStorage;
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
import me.mrCookieSlime.Slimefun.api.inventory.BlockMenu;
+import me.mrCookieSlime.Slimefun.utils.MachineHelper;
public class AutoEnchanter extends AContainer {
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/ElectricDustWasher.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/ElectricDustWasher.java
index cf12b836c..23da212ce 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/ElectricDustWasher.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/ElectricDustWasher.java
@@ -13,12 +13,12 @@ import me.mrCookieSlime.Slimefun.Lists.RecipeType;
import me.mrCookieSlime.Slimefun.Lists.SlimefunItems;
import me.mrCookieSlime.Slimefun.Objects.Category;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.AContainer;
-import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineHelper;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineRecipe;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.multiblocks.OreWasher;
import me.mrCookieSlime.Slimefun.Setup.SlimefunManager;
import me.mrCookieSlime.Slimefun.api.BlockStorage;
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
+import me.mrCookieSlime.Slimefun.utils.MachineHelper;
public abstract class ElectricDustWasher extends AContainer {
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/ElectricGoldPan.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/ElectricGoldPan.java
index 374426068..752d3e40f 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/ElectricGoldPan.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/ElectricGoldPan.java
@@ -14,12 +14,12 @@ import me.mrCookieSlime.Slimefun.Lists.RecipeType;
import me.mrCookieSlime.Slimefun.Lists.SlimefunItems;
import me.mrCookieSlime.Slimefun.Objects.Category;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.AContainer;
-import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineHelper;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineRecipe;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.interfaces.RecipeDisplayItem;
import me.mrCookieSlime.Slimefun.Setup.SlimefunManager;
import me.mrCookieSlime.Slimefun.api.BlockStorage;
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
+import me.mrCookieSlime.Slimefun.utils.MachineHelper;
public abstract class ElectricGoldPan extends AContainer implements RecipeDisplayItem {
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/HeatedPressureChamber.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/HeatedPressureChamber.java
index 1ae01955f..ae682e2e7 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/HeatedPressureChamber.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/HeatedPressureChamber.java
@@ -21,7 +21,6 @@ import me.mrCookieSlime.Slimefun.Lists.SlimefunItems;
import me.mrCookieSlime.Slimefun.Objects.Category;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.AContainer;
-import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineHelper;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineRecipe;
import me.mrCookieSlime.Slimefun.Objects.handlers.BlockTicker;
import me.mrCookieSlime.Slimefun.Setup.SlimefunManager;
@@ -31,6 +30,7 @@ import me.mrCookieSlime.Slimefun.api.inventory.BlockMenu;
import me.mrCookieSlime.Slimefun.api.inventory.BlockMenuPreset;
import me.mrCookieSlime.Slimefun.api.item_transport.ItemTransportFlow;
import me.mrCookieSlime.Slimefun.api.item_transport.RecipeSorter;
+import me.mrCookieSlime.Slimefun.utils.MachineHelper;
public abstract class HeatedPressureChamber extends AContainer {
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/Refinery.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/Refinery.java
index 49129e58a..d2c1359e0 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/Refinery.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/Refinery.java
@@ -13,12 +13,12 @@ import me.mrCookieSlime.Slimefun.Lists.RecipeType;
import me.mrCookieSlime.Slimefun.Lists.SlimefunItems;
import me.mrCookieSlime.Slimefun.Objects.Category;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.AContainer;
-import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineHelper;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineRecipe;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.interfaces.RecipeDisplayItem;
import me.mrCookieSlime.Slimefun.Setup.SlimefunManager;
import me.mrCookieSlime.Slimefun.api.BlockStorage;
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
+import me.mrCookieSlime.Slimefun.utils.MachineHelper;
public abstract class Refinery extends AContainer implements RecipeDisplayItem {
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/geo/GEOMiner.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/geo/GEOMiner.java
index c5645cfcf..4e55bb24a 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/geo/GEOMiner.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/geo/GEOMiner.java
@@ -21,7 +21,6 @@ import me.mrCookieSlime.Slimefun.Objects.SlimefunBlockHandler;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.UnregisterReason;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.AContainer;
-import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineHelper;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineRecipe;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.interfaces.InventoryBlock;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.interfaces.RecipeDisplayItem;
@@ -30,6 +29,7 @@ import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
import me.mrCookieSlime.Slimefun.api.inventory.BlockMenu;
import me.mrCookieSlime.Slimefun.api.inventory.BlockMenuPreset;
import me.mrCookieSlime.Slimefun.holograms.SimpleHologram;
+import me.mrCookieSlime.Slimefun.utils.MachineHelper;
public abstract class GEOMiner extends AContainer implements InventoryBlock, RecipeDisplayItem {
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/geo/OilPump.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/geo/OilPump.java
index 61ec4b34a..0e95a0081 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/geo/OilPump.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/machines/electric/geo/OilPump.java
@@ -14,13 +14,13 @@ import me.mrCookieSlime.Slimefun.Lists.RecipeType;
import me.mrCookieSlime.Slimefun.Lists.SlimefunItems;
import me.mrCookieSlime.Slimefun.Objects.Category;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.AContainer;
-import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineHelper;
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.MachineRecipe;
import me.mrCookieSlime.Slimefun.Setup.SlimefunManager;
import me.mrCookieSlime.Slimefun.api.BlockStorage;
import me.mrCookieSlime.Slimefun.api.energy.ChargableBlock;
import me.mrCookieSlime.Slimefun.api.inventory.BlockMenuPreset;
import me.mrCookieSlime.Slimefun.api.item_transport.ItemTransportFlow;
+import me.mrCookieSlime.Slimefun.utils.MachineHelper;
public abstract class OilPump extends AContainer {
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/multiblocks/TableSaw.java b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/multiblocks/TableSaw.java
index 15e66bd72..dce6ab5a3 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/multiblocks/TableSaw.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/SlimefunItem/multiblocks/TableSaw.java
@@ -2,6 +2,7 @@ package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.multiblocks;
import java.util.ArrayList;
import java.util.List;
+import java.util.Optional;
import org.bukkit.Effect;
import org.bukkit.Material;
@@ -11,7 +12,7 @@ import org.bukkit.block.BlockFace;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
-import me.mrCookieSlime.CSCoreLibPlugin.compatibility.MaterialHelper;
+import io.github.thebusybiscuit.cscorelib2.materials.MaterialConverter;
import me.mrCookieSlime.Slimefun.Lists.Categories;
import me.mrCookieSlime.Slimefun.Lists.SlimefunItems;
@@ -30,8 +31,12 @@ public class TableSaw extends MultiBlockMachine {
);
for (Material log: Tag.LOGS.getValues()) {
- displayRecipes.add(new ItemStack(log));
- displayRecipes.add(new ItemStack(MaterialHelper.getWoodFromLog(log), 8));
+ Optional planks = MaterialConverter.getPlanksFromLog(log);
+
+ if (planks.isPresent()) {
+ displayRecipes.add(new ItemStack(log));
+ displayRecipes.add(new ItemStack(planks.get(), 8));
+ }
}
}
@@ -44,15 +49,16 @@ public class TableSaw extends MultiBlockMachine {
public void onInteract(Player p, Block b) {
ItemStack log = p.getInventory().getItemInMainHand();
- ItemStack item = new ItemStack(MaterialHelper.getWoodFromLog(log.getType()), 8);
- if(item == null || item.getType() == Material.AIR) return;
+ Optional planks = MaterialConverter.getPlanksFromLog(log.getType());
- b.getWorld().dropItemNaturally(b.getLocation(), item);
- b.getWorld().playEffect(b.getLocation(), Effect.STEP_SOUND, log.getType());
- log.setAmount(log.getAmount() -1);
-
- if(log.getAmount() <= 0) {
- p.getInventory().setItemInMainHand(new ItemStack(Material.AIR));
+ if (planks.isPresent()) {
+ b.getWorld().dropItemNaturally(b.getLocation(), new ItemStack(planks.get(), 8));
+ b.getWorld().playEffect(b.getLocation(), Effect.STEP_SOUND, log.getType());
+ log.setAmount(log.getAmount() -1);
+
+ if(log.getAmount() <= 0) {
+ p.getInventory().setItemInMainHand(new ItemStack(Material.AIR));
+ }
}
}
diff --git a/src/me/mrCookieSlime/Slimefun/Objects/tasks/RainbowTicker.java b/src/me/mrCookieSlime/Slimefun/Objects/tasks/RainbowTicker.java
index af8a91e4c..49515eccc 100644
--- a/src/me/mrCookieSlime/Slimefun/Objects/tasks/RainbowTicker.java
+++ b/src/me/mrCookieSlime/Slimefun/Objects/tasks/RainbowTicker.java
@@ -1,13 +1,13 @@
package me.mrCookieSlime.Slimefun.Objects.tasks;
-import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config;
-import me.mrCookieSlime.CSCoreLibPlugin.compatibility.MaterialHelper;
-import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem;
-import me.mrCookieSlime.Slimefun.Objects.handlers.BlockTicker;
-
import org.bukkit.block.Block;
import org.bukkit.block.data.Waterlogged;
+import io.github.thebusybiscuit.cscorelib2.materials.MaterialCollections;
+import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config;
+import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem;
+import me.mrCookieSlime.Slimefun.Objects.handlers.BlockTicker;
+
public class RainbowTicker extends BlockTicker {
private int meta;
@@ -26,15 +26,15 @@ public class RainbowTicker extends BlockTicker {
@Override
public void tick(Block b, SlimefunItem item, Config data) {
- if (MaterialHelper.isWool(b.getType())) {
- b.setType(MaterialHelper.WoolColours[meta], false);
+ if (MaterialCollections.contains(b.getType(), MaterialCollections.getAllWools())) {
+ b.setType(MaterialCollections.getAllWools()[meta], false);
}
- else if (MaterialHelper.isStainedGlass(b.getType())) {
- b.setType(MaterialHelper.StainedGlassColours[meta], false);
+ else if (MaterialCollections.contains(b.getType(), MaterialCollections.getAllStainedGlassColors())) {
+ b.setType(MaterialCollections.getAllStainedGlassColors()[meta], false);
}
- else if (MaterialHelper.isStainedGlassPane(b.getType())){
+ else if (MaterialCollections.contains(b.getType(), MaterialCollections.getAllStainedGlassPaneColors())){
boolean waterlogged = ((Waterlogged) b.getBlockData()).isWaterlogged();
- b.setType(MaterialHelper.StainedGlassPaneColours[meta], true);
+ b.setType(MaterialCollections.getAllStainedGlassPaneColors()[meta], true);
if (waterlogged) {
Waterlogged block = (Waterlogged) b.getBlockData();
@@ -42,8 +42,8 @@ public class RainbowTicker extends BlockTicker {
b.setBlockData(block);
}
}
- else if (MaterialHelper.isTerracotta(b.getType())){
- b.setType(MaterialHelper.TerracottaColours[meta], false);
+ else if (MaterialCollections.contains(b.getType(), MaterialCollections.getAllTerracottaColors())){
+ b.setType(MaterialCollections.getAllTerracottaColors()[meta], false);
}
}
diff --git a/src/me/mrCookieSlime/Slimefun/androids/ProgrammableAndroid.java b/src/me/mrCookieSlime/Slimefun/androids/ProgrammableAndroid.java
index 9aac9959d..697ebcede 100644
--- a/src/me/mrCookieSlime/Slimefun/androids/ProgrammableAndroid.java
+++ b/src/me/mrCookieSlime/Slimefun/androids/ProgrammableAndroid.java
@@ -38,9 +38,10 @@ import org.bukkit.event.inventory.InventoryClickEvent;
import org.bukkit.inventory.ItemStack;
import org.bukkit.metadata.FixedMetadataValue;
+import io.github.thebusybiscuit.cscorelib2.materials.MaterialCollections;
+import io.github.thebusybiscuit.cscorelib2.materials.MaterialConverter;
import io.github.thebusybiscuit.cscorelib2.protection.ProtectableAction;
import me.mrCookieSlime.CSCoreLibPlugin.Configuration.Config;
-import me.mrCookieSlime.CSCoreLibPlugin.compatibility.MaterialHelper;
import me.mrCookieSlime.CSCoreLibPlugin.general.Block.TreeCalculator;
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ChestMenu;
import me.mrCookieSlime.CSCoreLibPlugin.general.Inventory.ChestMenu.AdvancedMenuClickHandler;
@@ -390,7 +391,7 @@ public abstract class ProgrammableAndroid extends SlimefunItem implements Invent
exoticFarm(b, b.getRelative(BlockFace.DOWN));
break;
case CHOP_TREE:
- if (MaterialHelper.isLog(b.getRelative(face).getType())) {
+ if (MaterialCollections.contains(b.getRelative(face).getType(), MaterialCollections.getAllLogs())) {
List list = new ArrayList<>();
list.add(b.getRelative(face).getLocation());
TreeCalculator.getTree(b.getRelative(face).getLocation(), b.getRelative(face).getLocation(), list);
@@ -408,7 +409,10 @@ public abstract class ProgrammableAndroid extends SlimefunItem implements Invent
log.getWorld().playEffect(log.getLocation(), Effect.STEP_SOUND, log.getType());
if (log.getY() == b.getRelative(face).getY()) {
- log.setType(MaterialHelper.getSaplingFromLog(log.getType()));
+ Optional sapling = MaterialConverter.getSaplingFromLog(log.getType());
+ if (sapling.isPresent()) {
+ log.setType(sapling.get());
+ }
}
else log.setType(Material.AIR);
}