mirror of
https://github.com/StarWishsama/Slimefun4.git
synced 2024-09-20 03:35:51 +00:00
Added Deprecated Compatibility Constructors
This commit is contained in:
parent
2e340be7ff
commit
b7ec184364
@ -20,24 +20,7 @@ public class MultiBlock {
|
|||||||
public MultiBlock(Material[] build, Material trigger) {
|
public MultiBlock(Material[] build, Material trigger) {
|
||||||
this.blocks = build;
|
this.blocks = build;
|
||||||
this.isSymmetric = isSymmetric(build);
|
this.isSymmetric = isSymmetric(build);
|
||||||
//Hacky, the other constructor should be used
|
this.trigger = convertTriggerMaterialToBlockFace(build, trigger);
|
||||||
for (int i = 1; i < 9; i +=3) {
|
|
||||||
if (trigger == build[i]) {
|
|
||||||
switch (i) {
|
|
||||||
case 1:
|
|
||||||
this.trigger = BlockFace.DOWN;
|
|
||||||
return;
|
|
||||||
case 4:
|
|
||||||
this.trigger = BlockFace.SELF;
|
|
||||||
return;
|
|
||||||
case 7:
|
|
||||||
this.trigger = BlockFace.UP;
|
|
||||||
return;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public MultiBlock(Material[] build, BlockFace trigger) {
|
public MultiBlock(Material[] build, BlockFace trigger) {
|
||||||
@ -106,5 +89,25 @@ public class MultiBlock {
|
|||||||
public boolean isSymmetric() {
|
public boolean isSymmetric() {
|
||||||
return this.isSymmetric;
|
return this.isSymmetric;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Deprecated
|
||||||
|
public static BlockFace convertTriggerMaterialToBlockFace(Material[] build, Material trigger)
|
||||||
|
{
|
||||||
|
//Hacky
|
||||||
|
for (int i = 1; i < 9; i +=3) {
|
||||||
|
if (trigger == build[i]) {
|
||||||
|
switch (i) {
|
||||||
|
case 1:
|
||||||
|
return BlockFace.DOWN;
|
||||||
|
case 4:
|
||||||
|
return BlockFace.SELF;
|
||||||
|
case 7:
|
||||||
|
return BlockFace.UP;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -20,7 +20,22 @@ public class SlimefunMachine extends SlimefunItem implements RecipeDisplayItem {
|
|||||||
private BlockFace trigger;
|
private BlockFace trigger;
|
||||||
|
|
||||||
protected List<ItemStack> shownRecipes;
|
protected List<ItemStack> shownRecipes;
|
||||||
|
|
||||||
|
@Deprecated
|
||||||
|
public SlimefunMachine(Category category, ItemStack item, String id, ItemStack[] recipe, ItemStack[] machineRecipes, Material trigger) {
|
||||||
|
this(category, item, id, recipe, machineRecipes, convertTriggerMaterial(recipe, trigger));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Deprecated
|
||||||
|
public SlimefunMachine(Category category, ItemStack item, String id, ItemStack[] recipe, ItemStack[] machineRecipes, Material trigger, boolean ghost) {
|
||||||
|
this(category, item, id, recipe, machineRecipes, convertTriggerMaterial(recipe, trigger), ghost);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Deprecated
|
||||||
|
public SlimefunMachine(Category category, ItemStack item, String id, ItemStack[] recipe, ItemStack[] machineRecipes, Material trigger, String[] keys, Object[] values) {
|
||||||
|
this(category, item, id, recipe, machineRecipes, convertTriggerMaterial(recipe, trigger), keys, values);
|
||||||
|
}
|
||||||
|
|
||||||
public SlimefunMachine(Category category, ItemStack item, String id, ItemStack[] recipe, ItemStack[] machineRecipes, BlockFace trigger) {
|
public SlimefunMachine(Category category, ItemStack item, String id, ItemStack[] recipe, ItemStack[] machineRecipes, BlockFace trigger) {
|
||||||
super(category, item, id, RecipeType.MULTIBLOCK, recipe);
|
super(category, item, id, RecipeType.MULTIBLOCK, recipe);
|
||||||
this.recipes = new ArrayList<>();
|
this.recipes = new ArrayList<>();
|
||||||
@ -73,21 +88,28 @@ public class SlimefunMachine extends SlimefunItem implements RecipeDisplayItem {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public MultiBlock toMultiBlock() {
|
private static Material[] convertItemStacksToMaterial(ItemStack[] items) {
|
||||||
List<Material> mats = new ArrayList<>();
|
List<Material> mats = new ArrayList<>();
|
||||||
for (ItemStack i: this.getRecipe()) {
|
for (ItemStack i: items) {
|
||||||
if (i == null) mats.add(null);
|
if (i == null) mats.add(null);
|
||||||
else if (i.getType() == Material.FLINT_AND_STEEL) mats.add(Material.FIRE);
|
else if (i.getType() == Material.FLINT_AND_STEEL) mats.add(Material.FIRE);
|
||||||
else mats.add(i.getType());
|
else mats.add(i.getType());
|
||||||
}
|
}
|
||||||
|
|
||||||
Material[] build = mats.toArray(new Material[mats.size()]);
|
return mats.toArray(new Material[mats.size()]);
|
||||||
return new MultiBlock(build, this.trigger);
|
}
|
||||||
|
|
||||||
|
public MultiBlock toMultiBlock() {
|
||||||
|
return new MultiBlock(convertItemStacksToMaterial(this.getRecipe()), this.trigger);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Iterator<ItemStack[]> recipeIterator() {
|
public Iterator<ItemStack[]> recipeIterator() {
|
||||||
return this.recipes.iterator();
|
return this.recipes.iterator();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Deprecated
|
||||||
|
private static BlockFace convertTriggerMaterial(ItemStack[] recipe, Material trigger) {
|
||||||
|
return MultiBlock.convertTriggerMaterialToBlockFace(convertItemStacksToMaterial(recipe), trigger);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.multiblocks;
|
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.multiblocks;
|
||||||
|
|
||||||
|
import org.bukkit.Material;
|
||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.block.BlockFace;
|
import org.bukkit.block.BlockFace;
|
||||||
import org.bukkit.block.Container;
|
import org.bukkit.block.Container;
|
||||||
@ -25,7 +26,17 @@ public abstract class MultiBlockMachine extends SlimefunMachine {
|
|||||||
BlockFace.SOUTH,
|
BlockFace.SOUTH,
|
||||||
BlockFace.WEST
|
BlockFace.WEST
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@Deprecated
|
||||||
|
public MultiBlockMachine(Category category, ItemStack item, String id, ItemStack[] recipe, ItemStack[] machineRecipes, Material trigger) {
|
||||||
|
super(category, item, id, recipe, machineRecipes, trigger);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Deprecated
|
||||||
|
public MultiBlockMachine(Category category, ItemStack item, String id, ItemStack[] recipe, ItemStack[] machineRecipes, Material trigger, String[] keys, Object[] values) {
|
||||||
|
super(category, item, id, recipe, machineRecipes, trigger, keys, values);
|
||||||
|
}
|
||||||
|
|
||||||
public MultiBlockMachine(Category category, ItemStack item, String id, ItemStack[] recipe, ItemStack[] machineRecipes, BlockFace trigger) {
|
public MultiBlockMachine(Category category, ItemStack item, String id, ItemStack[] recipe, ItemStack[] machineRecipes, BlockFace trigger) {
|
||||||
super(category, item, id, recipe, machineRecipes, trigger);
|
super(category, item, id, recipe, machineRecipes, trigger);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user