mirror of
https://github.com/StarWishsama/Slimefun4.git
synced 2024-09-20 11:45:51 +00:00
Changed Pressure Chamber and Table Saw Slabs
This commit is contained in:
parent
adb8194d84
commit
f9bbfdc869
@ -26,7 +26,7 @@ public class PressureChamber extends MultiBlockMachine {
|
|||||||
Categories.MACHINES_1,
|
Categories.MACHINES_1,
|
||||||
SlimefunItems.PRESSURE_CHAMBER,
|
SlimefunItems.PRESSURE_CHAMBER,
|
||||||
"PRESSURE_CHAMBER",
|
"PRESSURE_CHAMBER",
|
||||||
new ItemStack[] {new ItemStack(Material.STONE_SLAB), new CustomItem(Material.DISPENSER, "Dispenser (Facing down)"), new ItemStack(Material.STONE_SLAB), new ItemStack(Material.PISTON), new ItemStack(Material.GLASS), new ItemStack(Material.PISTON), new ItemStack(Material.PISTON), new ItemStack(Material.CAULDRON), new ItemStack(Material.PISTON)},
|
new ItemStack[] {new ItemStack(Material.SMOOTH_STONE_SLAB), new CustomItem(Material.DISPENSER, "Dispenser (Facing down)"), new ItemStack(Material.SMOOTH_STONE_SLAB), new ItemStack(Material.PISTON), new ItemStack(Material.GLASS), new ItemStack(Material.PISTON), new ItemStack(Material.PISTON), new ItemStack(Material.CAULDRON), new ItemStack(Material.PISTON)},
|
||||||
new ItemStack[] {
|
new ItemStack[] {
|
||||||
SlimefunItems.CARBON_CHUNK, SlimefunItems.SYNTHETIC_DIAMOND,
|
SlimefunItems.CARBON_CHUNK, SlimefunItems.SYNTHETIC_DIAMOND,
|
||||||
SlimefunItems.RAW_CARBONADO, SlimefunItems.CARBONADO
|
SlimefunItems.RAW_CARBONADO, SlimefunItems.CARBONADO
|
||||||
@ -40,6 +40,7 @@ public class PressureChamber extends MultiBlockMachine {
|
|||||||
Block dispBlock = b.getRelative(BlockFace.UP).getRelative(BlockFace.UP);
|
Block dispBlock = b.getRelative(BlockFace.UP).getRelative(BlockFace.UP);
|
||||||
Dispenser disp = (Dispenser) dispBlock.getState();
|
Dispenser disp = (Dispenser) dispBlock.getState();
|
||||||
final Inventory inv = disp.getInventory();
|
final Inventory inv = disp.getInventory();
|
||||||
|
|
||||||
for (ItemStack current: inv.getContents()) {
|
for (ItemStack current: inv.getContents()) {
|
||||||
for (ItemStack convert: RecipeType.getRecipeInputs(this)) {
|
for (ItemStack convert: RecipeType.getRecipeInputs(this)) {
|
||||||
if (convert != null && SlimefunManager.isItemSimiliar(current, convert, true)) {
|
if (convert != null && SlimefunManager.isItemSimiliar(current, convert, true)) {
|
||||||
|
@ -0,0 +1,42 @@
|
|||||||
|
package me.mrCookieSlime.Slimefun.Objects.SlimefunItem.multiblocks;
|
||||||
|
|
||||||
|
import org.bukkit.Effect;
|
||||||
|
import org.bukkit.Material;
|
||||||
|
import org.bukkit.block.Block;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.inventory.ItemStack;
|
||||||
|
|
||||||
|
import me.mrCookieSlime.CSCoreLibPlugin.compatibility.MaterialHelper;
|
||||||
|
import me.mrCookieSlime.Slimefun.Lists.Categories;
|
||||||
|
import me.mrCookieSlime.Slimefun.Lists.SlimefunItems;
|
||||||
|
|
||||||
|
public class TableSaw extends MultiBlockMachine {
|
||||||
|
|
||||||
|
public TableSaw() {
|
||||||
|
super(
|
||||||
|
Categories.MACHINES_1,
|
||||||
|
SlimefunItems.TABLE_SAW,
|
||||||
|
"TABLE_SAW",
|
||||||
|
new ItemStack[] {null, null, null, new ItemStack(Material.SMOOTH_STONE_SLAB), new ItemStack(Material.STONECUTTER), new ItemStack(Material.SMOOTH_STONE_SLAB), null, new ItemStack(Material.IRON_BLOCK), null},
|
||||||
|
new ItemStack[0],
|
||||||
|
Material.STONECUTTER
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
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;
|
||||||
|
|
||||||
|
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));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -150,6 +150,7 @@ import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.multiblocks.OreCrusher;
|
|||||||
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.multiblocks.OreWasher;
|
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.multiblocks.OreWasher;
|
||||||
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.multiblocks.PressureChamber;
|
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.multiblocks.PressureChamber;
|
||||||
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.multiblocks.Smeltery;
|
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.multiblocks.Smeltery;
|
||||||
|
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.multiblocks.TableSaw;
|
||||||
import me.mrCookieSlime.Slimefun.Objects.handlers.AutonomousMachineHandler;
|
import me.mrCookieSlime.Slimefun.Objects.handlers.AutonomousMachineHandler;
|
||||||
import me.mrCookieSlime.Slimefun.Objects.handlers.BlockBreakHandler;
|
import me.mrCookieSlime.Slimefun.Objects.handlers.BlockBreakHandler;
|
||||||
import me.mrCookieSlime.Slimefun.Objects.handlers.BlockPlaceHandler;
|
import me.mrCookieSlime.Slimefun.Objects.handlers.BlockPlaceHandler;
|
||||||
@ -1221,35 +1222,7 @@ public final class SlimefunSetup {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
new SlimefunMachine(Categories.MACHINES_1, SlimefunItems.TABLE_SAW, "TABLE_SAW",
|
new TableSaw().register();
|
||||||
new ItemStack[] {null, null, null, new ItemStack(Material.STONE_SLAB), new ItemStack(Material.STONECUTTER), new ItemStack(Material.STONE_SLAB), null, new ItemStack(Material.IRON_BLOCK), null},
|
|
||||||
new ItemStack[] {}, Material.STONECUTTER)
|
|
||||||
.register(true, new MultiBlockInteractionHandler() {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean onInteract(Player p, MultiBlock mb, Block b) {
|
|
||||||
if (mb.isMultiBlock(SlimefunItem.getByID("TABLE_SAW"))) {
|
|
||||||
if (CSCoreLib.getLib().getProtectionManager().canBuild(p.getUniqueId(), b.getRelative(BlockFace.UP), true) && Slimefun.hasUnlocked(p, SlimefunItems.TABLE_SAW, true) && p.getInventory().getItemInMainHand() != null && Tag.LOGS.getValues().contains(p.getInventory().getItemInMainHand().getType())) {
|
|
||||||
ItemStack log = p.getInventory().getItemInMainHand();
|
|
||||||
|
|
||||||
ItemStack item = new ItemStack(MaterialHelper.getWoodFromLog(log.getType()), 8);
|
|
||||||
if(item == null || item.getType() == Material.AIR) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
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));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
else return false;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* dNiym 7/30/2019 added the Table_Saw machine to replace the Saw_mill, as the sawmill's design does not work with
|
* dNiym 7/30/2019 added the Table_Saw machine to replace the Saw_mill, as the sawmill's design does not work with
|
||||||
|
Loading…
Reference in New Issue
Block a user