diff --git a/src/minecraft/mekanism/client/SoundHandler.java b/src/minecraft/mekanism/client/SoundHandler.java index 95b8c4167..ef603bc93 100644 --- a/src/minecraft/mekanism/client/SoundHandler.java +++ b/src/minecraft/mekanism/client/SoundHandler.java @@ -65,9 +65,7 @@ public class SoundHandler { synchronized(sounds) { - String s = getIdentifier(); - System.out.println(s); - return new Sound(s, path, world, x, y, z); + return new Sound(getIdentifier(), path, world, x, y, z); } } diff --git a/src/minecraft/mekanism/common/ContainerMetallurgicInfuser.java b/src/minecraft/mekanism/common/ContainerMetallurgicInfuser.java index 6a79f01ab..2056b3500 100644 --- a/src/minecraft/mekanism/common/ContainerMetallurgicInfuser.java +++ b/src/minecraft/mekanism/common/ContainerMetallurgicInfuser.java @@ -3,6 +3,7 @@ package mekanism.common; import ic2.api.IElectricItem; import mekanism.api.Infusion; import mekanism.api.InfusionType; +import mekanism.api.ItemMachineUpgrade; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.inventory.Container; @@ -68,23 +69,20 @@ public class ContainerMetallurgicInfuser extends Container if(slotID != 0 && slotID != 1 && slotID != 2 && slotID != 3 && slotID != 4) { - boolean isTin = false; - - for(ItemStack ore : OreDictionary.getOres("dustTin")) - { - if(ore.isItemEqual(slotStack)) - { - isTin = true; - } - } - - if(isTin && (tileEntity.type == InfusionType.TIN || tileEntity.type == InfusionType.NONE)) + if(MekanismUtils.oreDictCheck(slotStack, "dustTin") && (tileEntity.type == InfusionType.TIN || tileEntity.type == InfusionType.NONE)) { if(!mergeItemStack(slotStack, 1, 2, false)) { return null; } } + else if(slotStack.getItem() instanceof ItemMachineUpgrade) + { + if(!mergeItemStack(slotStack, 0, 1, false)) + { + return null; + } + } else if(slotStack.isItemEqual(new ItemStack(Mekanism.CompressedCarbon)) && (tileEntity.type == InfusionType.COAL || tileEntity.type == InfusionType.NONE)) { if(!mergeItemStack(slotStack, 1, 2, false)) diff --git a/src/minecraft/mekanism/common/ContainerSmeltingFactory.java b/src/minecraft/mekanism/common/ContainerSmeltingFactory.java index af55d975c..8e6deaa6e 100644 --- a/src/minecraft/mekanism/common/ContainerSmeltingFactory.java +++ b/src/minecraft/mekanism/common/ContainerSmeltingFactory.java @@ -156,12 +156,6 @@ public class ContainerSmeltingFactory extends Container } } } - else { - if(!mergeItemStack(slotStack, tileEntity.inventory.length, inventorySlots.size(), true)) - { - return null; - } - } } else if(slotStack.getItem() instanceof ItemMachineUpgrade) { diff --git a/src/minecraft/mekanism/common/Mekanism.java b/src/minecraft/mekanism/common/Mekanism.java index 3bb72058d..72abc2066 100644 --- a/src/minecraft/mekanism/common/Mekanism.java +++ b/src/minecraft/mekanism/common/Mekanism.java @@ -44,7 +44,7 @@ import cpw.mods.fml.relauncher.SideOnly; * @author AidanBrady * */ -@Mod(modid = "Mekanism", name = "Mekanism", version = "5.0.3") +@Mod(modid = "Mekanism", name = "Mekanism", version = "5.0.4") @NetworkMod(channels = {"Mekanism"}, clientSideRequired = true, serverSideRequired = false, packetHandler = PacketHandler.class) public class Mekanism { @@ -66,7 +66,7 @@ public class Mekanism public static Configuration configuration; /** Mekanism version number */ - public static Version versionNumber = new Version(5, 0, 3); + public static Version versionNumber = new Version(5, 0, 4); /** Mekanism creative tab */ public static CreativeTabMekanism tabMekanism = new CreativeTabMekanism(); diff --git a/src/minecraft/mekanism/common/MekanismUtils.java b/src/minecraft/mekanism/common/MekanismUtils.java index 56d22efbc..cb07ebcae 100644 --- a/src/minecraft/mekanism/common/MekanismUtils.java +++ b/src/minecraft/mekanism/common/MekanismUtils.java @@ -17,6 +17,7 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; import net.minecraftforge.common.ForgeDirection; +import net.minecraftforge.oredict.OreDictionary; import net.minecraftforge.oredict.ShapedOreRecipe; import cpw.mods.fml.server.FMLServerHandler; @@ -251,4 +252,20 @@ public final class MekanismUtils { return getLeft(orientation).getOpposite(); } + + public static boolean oreDictCheck(ItemStack check, String oreDict) + { + boolean hasResource = false; + + for(ItemStack ore : OreDictionary.getOres(oreDict)) + { + + if(ore.isItemEqual(check)) + { + hasResource = true; + } + } + + return hasResource; + } } diff --git a/src/minecraft/mekanism/common/TileEntityMetallurgicInfuser.java b/src/minecraft/mekanism/common/TileEntityMetallurgicInfuser.java index e9928886b..9dda91a07 100644 --- a/src/minecraft/mekanism/common/TileEntityMetallurgicInfuser.java +++ b/src/minecraft/mekanism/common/TileEntityMetallurgicInfuser.java @@ -198,23 +198,18 @@ public class TileEntityMetallurgicInfuser extends TileEntityElectricBlock implem } } } - else { + else if(MekanismUtils.oreDictCheck(inventory[1], "dustTin")) + { if(type == InfusionType.NONE || type == InfusionType.TIN) { - for(ItemStack itemStack : OreDictionary.getOres("dustTin")) - { - if(inventory[1] != null && inventory[1].isItemEqual(itemStack)) - { - infuseStored += 100; - inventory[1].stackSize--; - type = InfusionType.TIN; - - if (inventory[1].stackSize <= 0) - { - inventory[1] = null; - } - } - } + infuseStored += 100; + inventory[1].stackSize--; + type = InfusionType.TIN; + + if (inventory[1].stackSize <= 0) + { + inventory[1] = null; + } } } } diff --git a/src/minecraft/mekanism/common/TileEntitySmeltingFactory.java b/src/minecraft/mekanism/common/TileEntitySmeltingFactory.java index 68e5304ae..c01d9ce91 100644 --- a/src/minecraft/mekanism/common/TileEntitySmeltingFactory.java +++ b/src/minecraft/mekanism/common/TileEntitySmeltingFactory.java @@ -19,9 +19,11 @@ import net.minecraft.tileentity.TileEntity; import net.minecraftforge.common.ForgeDirection; import net.minecraftforge.common.MinecraftForge; import universalelectricity.core.electricity.ElectricityConnections; +import universalelectricity.core.implement.IConductor; import universalelectricity.core.implement.IItemElectric; import universalelectricity.core.implement.IJouleStorage; import universalelectricity.core.implement.IVoltage; +import universalelectricity.core.vector.Vector3; import com.google.common.io.ByteArrayDataInput; @@ -78,6 +80,30 @@ public class TileEntitySmeltingFactory extends TileEntityElectricBlock implement boolean testActive = false; + if(!worldObj.isRemote) + { + for(ForgeDirection direction : ForgeDirection.values()) + { + TileEntity tileEntity = Vector3.getTileEntityFromSide(worldObj, new Vector3(this), direction); + if(tileEntity != null) + { + if(tileEntity instanceof IConductor) + { + if(electricityStored < currentMaxElectricity) + { + double electricityNeeded = currentMaxElectricity - electricityStored; + ((IConductor)tileEntity).getNetwork().startRequesting(this, electricityNeeded, electricityNeeded >= getVoltage() ? getVoltage() : electricityNeeded); + setJoules(electricityStored + ((IConductor)tileEntity).getNetwork().consumeElectricity(this).getWatts()); + } + else if(electricityStored >= currentMaxElectricity) + { + ((IConductor)tileEntity).getNetwork().stopRequesting(this); + } + } + } + } + } + for(int i : progress) { if(i > 0) diff --git a/src/minecraft/mekanism/generators/common/MekanismGenerators.java b/src/minecraft/mekanism/generators/common/MekanismGenerators.java index f5e915bd9..c7844466a 100644 --- a/src/minecraft/mekanism/generators/common/MekanismGenerators.java +++ b/src/minecraft/mekanism/generators/common/MekanismGenerators.java @@ -19,7 +19,7 @@ import cpw.mods.fml.common.network.NetworkRegistry; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.LanguageRegistry; -@Mod(modid = "MekanismGenerators", name = "MekanismGenerators", version = "5.0.3", dependencies = "required-after:Mekanism") +@Mod(modid = "MekanismGenerators", name = "MekanismGenerators", version = "5.0.4", dependencies = "required-after:Mekanism") @NetworkMod(clientSideRequired = true, serverSideRequired = false) public class MekanismGenerators { diff --git a/src/minecraft/mekanism/tools/common/MekanismTools.java b/src/minecraft/mekanism/tools/common/MekanismTools.java index dc376b3b2..037e23380 100644 --- a/src/minecraft/mekanism/tools/common/MekanismTools.java +++ b/src/minecraft/mekanism/tools/common/MekanismTools.java @@ -26,7 +26,7 @@ import cpw.mods.fml.common.network.NetworkMod; import cpw.mods.fml.common.registry.EntityRegistry; import cpw.mods.fml.common.registry.LanguageRegistry; -@Mod(modid = "MekanismTools", name = "MekanismTools", version = "5.0.3", dependencies = "required-after:Mekanism") +@Mod(modid = "MekanismTools", name = "MekanismTools", version = "5.0.4", dependencies = "required-after:Mekanism") @NetworkMod(clientSideRequired = true, serverSideRequired = false) public class MekanismTools {