diff --git a/src/main/java/com/hbm/blocks/machine/FoundryChannel.java b/src/main/java/com/hbm/blocks/machine/FoundryChannel.java index e692c3bf9..ae43ea2d9 100644 --- a/src/main/java/com/hbm/blocks/machine/FoundryChannel.java +++ b/src/main/java/com/hbm/blocks/machine/FoundryChannel.java @@ -128,10 +128,10 @@ public class FoundryChannel extends BlockContainer implements ICrucibleAcceptor Block b = world.getBlock(x + dir.offsetX, y, z + dir.offsetZ); int meta = world.getBlockMetadata(x + dir.offsetX, y, z + dir.offsetZ); - if(b == ModBlocks.foundry_outlet && meta == dir.ordinal()) + if((b == ModBlocks.foundry_outlet || b == ModBlocks.foundry_slagtap) && meta == dir.ordinal()) return true; - return b == ModBlocks.foundry_channel || b == ModBlocks.foundry_mold || b == ModBlocks.foundry_slagtap; + return b == ModBlocks.foundry_channel || b == ModBlocks.foundry_mold; } public static int renderID = RenderingRegistry.getNextAvailableRenderId(); diff --git a/src/main/java/com/hbm/blocks/machine/MachineStrandCaster.java b/src/main/java/com/hbm/blocks/machine/MachineStrandCaster.java index 4a33bff5f..84adc2375 100644 --- a/src/main/java/com/hbm/blocks/machine/MachineStrandCaster.java +++ b/src/main/java/com/hbm/blocks/machine/MachineStrandCaster.java @@ -186,8 +186,7 @@ public class MachineStrandCaster extends BlockDummyable implements ICrucibleAcce if(cast.slots[0] == null) { text.add(EnumChatFormatting.RED + I18nUtil.resolveKey("foundry.noCast")); } else if(cast.slots[0].getItem() == ModItems.mold) { - ItemMold.Mold mold = ((ItemMold) cast.slots[0].getItem()).getMold(cast.slots[0]); - text.add(EnumChatFormatting.BLUE + mold.getTitle()); + text.add(EnumChatFormatting.BLUE + cast.getInstalledMold().getTitle()); } } ILookOverlay.printGeneric(event, I18nUtil.resolveKey(this.getUnlocalizedName() + ".name"), 0xFF4000, 0x401000, text); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityFoundryChannel.java b/src/main/java/com/hbm/tileentity/machine/TileEntityFoundryChannel.java index dd09a8a59..3156aada3 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityFoundryChannel.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityFoundryChannel.java @@ -110,7 +110,7 @@ public class TileEntityFoundryChannel extends TileEntityFoundryBase { @Override public int getCapacity() { - return MaterialShapes.INGOT.q(1); + return MaterialShapes.INGOT.q(2); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineStrandCaster.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineStrandCaster.java index 23e86b847..71caf6423 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineStrandCaster.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineStrandCaster.java @@ -192,7 +192,8 @@ public class TileEntityMachineStrandCaster extends TileEntityFoundryCastingBase @Override public boolean standardCheck(World world, int x, int y, int z, ForgeDirection side, Mats.MaterialStack stack) { if(this.type != null && this.type != stack.material) return false; - return !(this.amount >= this.getCapacity() || getInstalledMold() == null); + int limit = this.getInstalledMold() != null ? this.getInstalledMold().getCost() * 9 : this.getCapacity(); + return !(this.amount >= limit || getInstalledMold() == null); } @Override @@ -211,7 +212,22 @@ public class TileEntityMachineStrandCaster extends TileEntityFoundryCastingBase this.sendFluid(steam, worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir()); } } + @Override + public Mats.MaterialStack standardAdd(World world, int x, int y, int z, ForgeDirection side, Mats.MaterialStack stack) { + this.type = stack.material; + int limit = this.getInstalledMold() != null ? this.getInstalledMold().getCost() * 9 : this.getCapacity(); + if(stack.amount + this.amount <= limit) { + this.amount += stack.amount; + return null; + } + int required = limit - this.amount; + this.amount = limit; + + stack.amount -= required; + + return stack; + } @Override public FluidTank[] getSendingTanks() { return new FluidTank[] { steam }; @@ -266,11 +282,7 @@ public class TileEntityMachineStrandCaster extends TileEntityFoundryCastingBase @Override public boolean isItemValidForSlot(int i, ItemStack stack) { - - if(i == 0) { - return stack.getItem() == ModItems.mold; - } - + if(i == 0) return stack.getItem() == ModItems.mold; return false; }