From 6c1b16c5f41331a6a1228134961e50bdc0b793c2 Mon Sep 17 00:00:00 2001 From: Rseifert Date: Sun, 3 Feb 2013 20:45:40 -0500 Subject: [PATCH] Fixed Sink + Cleanedup imports corrected sink item stack lose plus fixed potion to have a volume of 250 when used with my machines. Will take this a step better later to fix it for all mods installed with my mod to correct the volume diffrence. --- .../api/helpers/connectionHelper.java | 5 - .../api/liquids/IPressure.java | 1 - .../api/liquids/LiquidFiniteFlowing.java | 2 - .../api/liquids/LiquidFiniteStill.java | 1 - .../api/liquids/LiquidHandler.java | 5 +- .../client/gui/GuiReleaseValve.java | 12 +- .../client/model/ModelPump.java | 1 - .../client/model/ModelReleaseValve.java | 2 - .../client/model/ModelSink.java | 1 - .../client/render/BlockRenderHelper.java | 3 - .../client/render/ItemRenderHelper.java | 2 - .../client/render/RenderPump.java | 2 - .../client/render/RenderReleaseValve.java | 1 - .../client/render/RenderRotation.java | 3 - .../client/render/RenderSink.java | 4 - .../client/render/RenderTank.java | 2 - .../common/LiquidMechanics.java | 3 +- .../liquidmechanics/common/MetaGroup.java | 1 - .../common/block/BlockGenerator.java | 1 - .../common/block/BlockPipe.java | 5 - .../common/block/BlockPumpMachine.java | 10 +- .../common/block/BlockReleaseValve.java | 3 - .../common/block/BlockSink.java | 135 ++++++++++-------- .../common/block/BlockTank.java | 19 ++- .../common/handlers/UpdateConverter.java | 2 +- .../common/item/ItemGuage.java | 1 - .../common/item/ItemParts.java | 1 - .../common/item/ItemValve.java | 1 - .../tileentity/ContainerReleaseValve.java | 3 - .../tileentity/TileEntityGenerator.java | 1 - .../common/tileentity/TileEntityPipe.java | 15 -- .../common/tileentity/TileEntityPump.java | 6 - .../tileentity/TileEntityReleaseValve.java | 6 - .../common/tileentity/TileEntitySink.java | 7 - .../common/tileentity/TileEntityTank.java | 2 - 35 files changed, 98 insertions(+), 171 deletions(-) diff --git a/src/minecraft/liquidmechanics/api/helpers/connectionHelper.java b/src/minecraft/liquidmechanics/api/helpers/connectionHelper.java index 16a2d43e..24bdd1ae 100644 --- a/src/minecraft/liquidmechanics/api/helpers/connectionHelper.java +++ b/src/minecraft/liquidmechanics/api/helpers/connectionHelper.java @@ -1,13 +1,8 @@ package liquidmechanics.api.helpers; -import net.minecraft.block.Block; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; import net.minecraftforge.common.ForgeDirection; -import net.minecraftforge.liquids.ILiquidTank; -import net.minecraftforge.liquids.ITankContainer; -import net.minecraftforge.liquids.LiquidStack; -import universalelectricity.core.vector.Vector3; public class connectionHelper { diff --git a/src/minecraft/liquidmechanics/api/liquids/IPressure.java b/src/minecraft/liquidmechanics/api/liquids/IPressure.java index 749b56b9..b75e196b 100644 --- a/src/minecraft/liquidmechanics/api/liquids/IPressure.java +++ b/src/minecraft/liquidmechanics/api/liquids/IPressure.java @@ -1,7 +1,6 @@ package liquidmechanics.api.liquids; import net.minecraftforge.common.ForgeDirection; -import net.minecraftforge.liquids.ITankContainer; public interface IPressure { diff --git a/src/minecraft/liquidmechanics/api/liquids/LiquidFiniteFlowing.java b/src/minecraft/liquidmechanics/api/liquids/LiquidFiniteFlowing.java index 51f47d6a..6d323354 100644 --- a/src/minecraft/liquidmechanics/api/liquids/LiquidFiniteFlowing.java +++ b/src/minecraft/liquidmechanics/api/liquids/LiquidFiniteFlowing.java @@ -2,8 +2,6 @@ package liquidmechanics.api.liquids; import java.util.Random; -import cpw.mods.fml.common.FMLLog; - import net.minecraft.block.Block; import net.minecraft.block.BlockFlowing; import net.minecraft.block.material.Material; diff --git a/src/minecraft/liquidmechanics/api/liquids/LiquidFiniteStill.java b/src/minecraft/liquidmechanics/api/liquids/LiquidFiniteStill.java index 48d7132f..13b55c21 100644 --- a/src/minecraft/liquidmechanics/api/liquids/LiquidFiniteStill.java +++ b/src/minecraft/liquidmechanics/api/liquids/LiquidFiniteStill.java @@ -4,7 +4,6 @@ import net.minecraft.block.BlockStationary; import net.minecraft.block.material.Material; import net.minecraft.world.World; import net.minecraftforge.liquids.ILiquid; -import cpw.mods.fml.common.FMLLog; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; diff --git a/src/minecraft/liquidmechanics/api/liquids/LiquidHandler.java b/src/minecraft/liquidmechanics/api/liquids/LiquidHandler.java index 59a457ec..7fdbca6a 100644 --- a/src/minecraft/liquidmechanics/api/liquids/LiquidHandler.java +++ b/src/minecraft/liquidmechanics/api/liquids/LiquidHandler.java @@ -6,16 +6,13 @@ import java.util.Map; import java.util.Map.Entry; import java.util.logging.Logger; -import cpw.mods.fml.common.FMLLog; - import liquidmechanics.api.helpers.ColorCode; - import net.minecraft.block.Block; import net.minecraft.item.ItemStack; import net.minecraftforge.event.ForgeSubscribe; import net.minecraftforge.liquids.LiquidDictionary; import net.minecraftforge.liquids.LiquidStack; -import net.minecraftforge.liquids.LiquidDictionary.LiquidRegisterEvent; +import cpw.mods.fml.common.FMLLog; public class LiquidHandler { diff --git a/src/minecraft/liquidmechanics/client/gui/GuiReleaseValve.java b/src/minecraft/liquidmechanics/client/gui/GuiReleaseValve.java index 61864d54..165e95c4 100644 --- a/src/minecraft/liquidmechanics/client/gui/GuiReleaseValve.java +++ b/src/minecraft/liquidmechanics/client/gui/GuiReleaseValve.java @@ -1,21 +1,17 @@ package liquidmechanics.client.gui; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import java.util.List; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.entity.player.InventoryPlayer; -import net.minecraft.inventory.Container; import net.minecraft.inventory.ContainerRepair; -import net.minecraft.inventory.ICrafting; -import net.minecraft.item.ItemStack; -import net.minecraft.network.packet.Packet250CustomPayload; -import net.minecraft.util.StatCollector; import net.minecraft.world.World; + import org.lwjgl.input.Keyboard; import org.lwjgl.opengl.GL11; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; + @SideOnly(Side.CLIENT) public class GuiReleaseValve extends GuiContainer { diff --git a/src/minecraft/liquidmechanics/client/model/ModelPump.java b/src/minecraft/liquidmechanics/client/model/ModelPump.java index 2bcaf100..27c4db04 100644 --- a/src/minecraft/liquidmechanics/client/model/ModelPump.java +++ b/src/minecraft/liquidmechanics/client/model/ModelPump.java @@ -8,7 +8,6 @@ package liquidmechanics.client.model; import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; public class ModelPump extends ModelBase { diff --git a/src/minecraft/liquidmechanics/client/model/ModelReleaseValve.java b/src/minecraft/liquidmechanics/client/model/ModelReleaseValve.java index c1646c88..954e4c5d 100644 --- a/src/minecraft/liquidmechanics/client/model/ModelReleaseValve.java +++ b/src/minecraft/liquidmechanics/client/model/ModelReleaseValve.java @@ -8,8 +8,6 @@ package liquidmechanics.client.model; import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; -import net.minecraftforge.common.ForgeDirection; public class ModelReleaseValve extends ModelBase { diff --git a/src/minecraft/liquidmechanics/client/model/ModelSink.java b/src/minecraft/liquidmechanics/client/model/ModelSink.java index f2c1a69d..5e218357 100644 --- a/src/minecraft/liquidmechanics/client/model/ModelSink.java +++ b/src/minecraft/liquidmechanics/client/model/ModelSink.java @@ -8,7 +8,6 @@ package liquidmechanics.client.model; import net.minecraft.client.model.ModelBase; import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; public class ModelSink extends ModelBase { diff --git a/src/minecraft/liquidmechanics/client/render/BlockRenderHelper.java b/src/minecraft/liquidmechanics/client/render/BlockRenderHelper.java index 2f0f8461..6d3821b0 100644 --- a/src/minecraft/liquidmechanics/client/render/BlockRenderHelper.java +++ b/src/minecraft/liquidmechanics/client/render/BlockRenderHelper.java @@ -1,6 +1,5 @@ package liquidmechanics.client.render; -import liquidmechanics.api.helpers.connectionHelper; import liquidmechanics.client.model.ModelGearRod; import liquidmechanics.client.model.ModelGenerator; import liquidmechanics.client.model.ModelLargePipe; @@ -9,11 +8,9 @@ import liquidmechanics.client.model.ModelPump; import liquidmechanics.client.model.ModelReleaseValve; import liquidmechanics.client.model.ModelSink; import liquidmechanics.common.LiquidMechanics; -import liquidmechanics.common.tileentity.TileEntityReleaseValve; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.world.IBlockAccess; -import net.minecraftforge.common.ForgeDirection; import org.lwjgl.opengl.GL11; diff --git a/src/minecraft/liquidmechanics/client/render/ItemRenderHelper.java b/src/minecraft/liquidmechanics/client/render/ItemRenderHelper.java index d8f84b9a..cf435def 100644 --- a/src/minecraft/liquidmechanics/client/render/ItemRenderHelper.java +++ b/src/minecraft/liquidmechanics/client/render/ItemRenderHelper.java @@ -4,13 +4,11 @@ import liquidmechanics.client.model.ModelGearRod; import liquidmechanics.client.model.ModelGenerator; import liquidmechanics.client.model.ModelLargePipe; import liquidmechanics.client.model.ModelLiquidTank; -import liquidmechanics.client.model.ModelPump; import liquidmechanics.client.model.ModelReleaseValve; import liquidmechanics.common.LiquidMechanics; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.item.ItemStack; import net.minecraftforge.client.IItemRenderer; -import net.minecraftforge.common.ForgeDirection; import org.lwjgl.opengl.GL11; diff --git a/src/minecraft/liquidmechanics/client/render/RenderPump.java b/src/minecraft/liquidmechanics/client/render/RenderPump.java index d9822d80..951af88f 100644 --- a/src/minecraft/liquidmechanics/client/render/RenderPump.java +++ b/src/minecraft/liquidmechanics/client/render/RenderPump.java @@ -1,7 +1,5 @@ package liquidmechanics.client.render; -import liquidmechanics.api.liquids.LiquidData; -import liquidmechanics.api.liquids.LiquidHandler; import liquidmechanics.client.model.ModelPump; import liquidmechanics.common.LiquidMechanics; import liquidmechanics.common.tileentity.TileEntityPump; diff --git a/src/minecraft/liquidmechanics/client/render/RenderReleaseValve.java b/src/minecraft/liquidmechanics/client/render/RenderReleaseValve.java index 2eb46e70..d7238736 100644 --- a/src/minecraft/liquidmechanics/client/render/RenderReleaseValve.java +++ b/src/minecraft/liquidmechanics/client/render/RenderReleaseValve.java @@ -1,7 +1,6 @@ package liquidmechanics.client.render; import liquidmechanics.api.helpers.ColorCode; -import liquidmechanics.api.helpers.connectionHelper; import liquidmechanics.client.model.ModelLargePipe; import liquidmechanics.client.model.ModelReleaseValve; import liquidmechanics.common.LiquidMechanics; diff --git a/src/minecraft/liquidmechanics/client/render/RenderRotation.java b/src/minecraft/liquidmechanics/client/render/RenderRotation.java index 499fa41c..9600a040 100644 --- a/src/minecraft/liquidmechanics/client/render/RenderRotation.java +++ b/src/minecraft/liquidmechanics/client/render/RenderRotation.java @@ -1,8 +1,5 @@ package liquidmechanics.client.render; -import org.lwjgl.opengl.GL11; - -import net.minecraftforge.common.ForgeDirection; public class RenderRotation { diff --git a/src/minecraft/liquidmechanics/client/render/RenderSink.java b/src/minecraft/liquidmechanics/client/render/RenderSink.java index 5e1c693d..9f53fd62 100644 --- a/src/minecraft/liquidmechanics/client/render/RenderSink.java +++ b/src/minecraft/liquidmechanics/client/render/RenderSink.java @@ -3,12 +3,8 @@ package liquidmechanics.client.render; import liquidmechanics.client.model.ModelSink; import liquidmechanics.common.LiquidMechanics; import liquidmechanics.common.tileentity.TileEntitySink; -import net.minecraft.block.Block; -import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; import net.minecraft.tileentity.TileEntity; -import net.minecraftforge.client.ForgeHooksClient; -import net.minecraftforge.liquids.LiquidContainerRegistry; import net.minecraftforge.liquids.LiquidStack; import org.lwjgl.opengl.GL11; diff --git a/src/minecraft/liquidmechanics/client/render/RenderTank.java b/src/minecraft/liquidmechanics/client/render/RenderTank.java index 7cca301d..b658b03a 100644 --- a/src/minecraft/liquidmechanics/client/render/RenderTank.java +++ b/src/minecraft/liquidmechanics/client/render/RenderTank.java @@ -2,8 +2,6 @@ package liquidmechanics.client.render; import liquidmechanics.api.helpers.ColorCode; import liquidmechanics.api.helpers.connectionHelper; -import liquidmechanics.api.liquids.LiquidData; -import liquidmechanics.api.liquids.LiquidHandler; import liquidmechanics.client.model.ModelLiquidTank; import liquidmechanics.client.model.ModelLiquidTankCorner; import liquidmechanics.common.LiquidMechanics; diff --git a/src/minecraft/liquidmechanics/common/LiquidMechanics.java b/src/minecraft/liquidmechanics/common/LiquidMechanics.java index 37c254a2..084e050d 100644 --- a/src/minecraft/liquidmechanics/common/LiquidMechanics.java +++ b/src/minecraft/liquidmechanics/common/LiquidMechanics.java @@ -4,11 +4,10 @@ import java.io.File; import java.util.logging.Logger; import liquidmechanics.api.helpers.ColorCode; -import liquidmechanics.api.liquids.LiquidData; import liquidmechanics.api.liquids.LiquidHandler; import liquidmechanics.common.block.BlockGenerator; -import liquidmechanics.common.block.BlockPumpMachine; import liquidmechanics.common.block.BlockPipe; +import liquidmechanics.common.block.BlockPumpMachine; import liquidmechanics.common.block.BlockReleaseValve; import liquidmechanics.common.block.BlockRod; import liquidmechanics.common.block.BlockSink; diff --git a/src/minecraft/liquidmechanics/common/MetaGroup.java b/src/minecraft/liquidmechanics/common/MetaGroup.java index d6327aaf..d67c7ada 100644 --- a/src/minecraft/liquidmechanics/common/MetaGroup.java +++ b/src/minecraft/liquidmechanics/common/MetaGroup.java @@ -1,6 +1,5 @@ package liquidmechanics.common; -import net.minecraftforge.common.ForgeDirection; public class MetaGroup { diff --git a/src/minecraft/liquidmechanics/common/block/BlockGenerator.java b/src/minecraft/liquidmechanics/common/block/BlockGenerator.java index 20486628..05f19a27 100644 --- a/src/minecraft/liquidmechanics/common/block/BlockGenerator.java +++ b/src/minecraft/liquidmechanics/common/block/BlockGenerator.java @@ -6,7 +6,6 @@ import liquidmechanics.client.render.BlockRenderHelper; import liquidmechanics.common.LiquidMechanics; import liquidmechanics.common.TabLiquidMechanics; import liquidmechanics.common.tileentity.TileEntityGenerator; - import net.minecraft.block.material.Material; import net.minecraft.entity.EntityLiving; import net.minecraft.entity.player.EntityPlayer; diff --git a/src/minecraft/liquidmechanics/common/block/BlockPipe.java b/src/minecraft/liquidmechanics/common/block/BlockPipe.java index c4f26ef2..5b6c28bf 100644 --- a/src/minecraft/liquidmechanics/common/block/BlockPipe.java +++ b/src/minecraft/liquidmechanics/common/block/BlockPipe.java @@ -1,10 +1,7 @@ package liquidmechanics.common.block; import java.util.List; -import java.util.Random; -import liquidmechanics.api.helpers.ColorCode; -import liquidmechanics.client.render.BlockRenderHelper; import liquidmechanics.common.LiquidMechanics; import liquidmechanics.common.TabLiquidMechanics; import liquidmechanics.common.tileentity.TileEntityPipe; @@ -14,8 +11,6 @@ import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; -import net.minecraftforge.common.ForgeDirection; -import net.minecraftforge.liquids.LiquidStack; import universalelectricity.prefab.BlockMachine; public class BlockPipe extends BlockMachine diff --git a/src/minecraft/liquidmechanics/common/block/BlockPumpMachine.java b/src/minecraft/liquidmechanics/common/block/BlockPumpMachine.java index d396dc5b..87892860 100644 --- a/src/minecraft/liquidmechanics/common/block/BlockPumpMachine.java +++ b/src/minecraft/liquidmechanics/common/block/BlockPumpMachine.java @@ -2,16 +2,11 @@ package liquidmechanics.common.block; import java.util.List; -import universalelectricity.prefab.BlockMachine; -import universalelectricity.prefab.tile.TileEntityAdvanced; -import liquidmechanics.api.liquids.LiquidHandler; import liquidmechanics.client.render.BlockRenderHelper; import liquidmechanics.common.LiquidMechanics; import liquidmechanics.common.MetaGroup; import liquidmechanics.common.TabLiquidMechanics; import liquidmechanics.common.tileentity.TileEntityPump; -import liquidmechanics.common.tileentity.TileEntityTank; -import net.minecraft.block.BlockContainer; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.EntityLiving; @@ -21,9 +16,8 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.util.MathHelper; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; -import net.minecraftforge.common.ForgeDirection; -import net.minecraftforge.liquids.LiquidContainerRegistry; -import net.minecraftforge.liquids.LiquidStack; +import universalelectricity.prefab.BlockMachine; +import universalelectricity.prefab.tile.TileEntityAdvanced; public class BlockPumpMachine extends BlockMachine { diff --git a/src/minecraft/liquidmechanics/common/block/BlockReleaseValve.java b/src/minecraft/liquidmechanics/common/block/BlockReleaseValve.java index 28af35e8..8c41cbac 100644 --- a/src/minecraft/liquidmechanics/common/block/BlockReleaseValve.java +++ b/src/minecraft/liquidmechanics/common/block/BlockReleaseValve.java @@ -2,12 +2,9 @@ package liquidmechanics.common.block; import java.util.Random; -import liquidmechanics.client.render.BlockRenderHelper; import liquidmechanics.common.LiquidMechanics; import liquidmechanics.common.TabLiquidMechanics; import liquidmechanics.common.tileentity.TileEntityReleaseValve; - -import net.minecraft.block.BlockContainer; import net.minecraft.block.material.Material; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; diff --git a/src/minecraft/liquidmechanics/common/block/BlockSink.java b/src/minecraft/liquidmechanics/common/block/BlockSink.java index 0b5cba81..fb7ce460 100644 --- a/src/minecraft/liquidmechanics/common/block/BlockSink.java +++ b/src/minecraft/liquidmechanics/common/block/BlockSink.java @@ -1,17 +1,13 @@ package liquidmechanics.common.block; -import universalelectricity.prefab.BlockMachine; -import universalelectricity.prefab.tile.TileEntityAdvanced; +import liquidmechanics.api.liquids.LiquidHandler; import liquidmechanics.client.render.BlockRenderHelper; import liquidmechanics.common.MetaGroup; import liquidmechanics.common.TabLiquidMechanics; import liquidmechanics.common.tileentity.TileEntitySink; -import net.minecraft.block.BlockContainer; import net.minecraft.block.material.Material; import net.minecraft.entity.EntityLiving; -import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.item.EnumArmorMaterial; import net.minecraft.item.Item; import net.minecraft.item.ItemArmor; @@ -20,11 +16,11 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.util.MathHelper; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; -import net.minecraft.world.WorldProvider; import net.minecraftforge.common.ForgeDirection; -import net.minecraftforge.liquids.ILiquidTank; import net.minecraftforge.liquids.LiquidContainerRegistry; import net.minecraftforge.liquids.LiquidStack; +import universalelectricity.prefab.BlockMachine; +import universalelectricity.prefab.tile.TileEntityAdvanced; public class BlockSink extends BlockMachine { @@ -42,71 +38,88 @@ public class BlockSink extends BlockMachine } @Override - public boolean onMachineActivated(World world, int x, int y, int z, EntityPlayer player, int side, float sx, float sy, float sz) + public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer entityplayer, int side, float hitX, float hitY, float hitZ) { - if (world.isRemote) + if (entityplayer.isSneaking()) { return false; } + ItemStack current = entityplayer.inventory.getCurrentItem(); + if (current != null) { - return true; - } - else - { - ItemStack heldItem = player.inventory.getCurrentItem(); - TileEntity ent = world.getBlockTileEntity(x, y, z); - ForgeDirection facing = ForgeDirection.getOrientation(side); - if (heldItem == null || !(ent instanceof TileEntitySink)) - { - return true; - } - else - { - TileEntitySink sink = (TileEntitySink) ent; - LiquidStack stack = sink.getStack(); - if (heldItem.itemID == Item.bucketWater.itemID && stack != null && stack.amount < sink.getTanks(facing)[0].getCapacity()) + LiquidStack liquid = LiquidContainerRegistry.getLiquidForFilledItem(current); + + TileEntity tileEntity = world.getBlockTileEntity(x, y, z); + + if (tileEntity instanceof TileEntitySink) + { + TileEntitySink tank = (TileEntitySink) tileEntity; + + // Handle filled containers + if (liquid != null) { - int f = sink.fill(facing, LiquidContainerRegistry.getLiquidForFilledItem(heldItem), false); - if (f >= (LiquidContainerRegistry.BUCKET_VOLUME / 2)) + if (current.isItemEqual(new ItemStack(Item.potion))) { - if (!player.capabilities.isCreativeMode) + liquid = new LiquidStack(liquid.itemID, (LiquidContainerRegistry.BUCKET_VOLUME / 4), liquid.itemMeta); + } + int filled = tank.fill(ForgeDirection.UNKNOWN, liquid, true); + + if (filled != 0 && !entityplayer.capabilities.isCreativeMode) + { + entityplayer.inventory.setInventorySlotContents(entityplayer.inventory.currentItem, LiquidHandler.consumeItem(current)); + } + + return true; + + // Handle empty containers + } + else + { + + if (current.getItem() instanceof ItemArmor && ((ItemArmor) current.getItem()).getArmorMaterial() == EnumArmorMaterial.CLOTH) + { + ItemArmor var13 = (ItemArmor) current.getItem(); + var13.removeColor(current); + return true; + } + LiquidStack stack = tank.getStack(); + if (stack != null) + { + ItemStack liquidItem = LiquidContainerRegistry.fillLiquidContainer(stack, current); + + liquid = LiquidContainerRegistry.getLiquidForFilledItem(liquidItem); + + if (liquid != null) { - player.inventory.setInventorySlotContents(player.inventory.currentItem, new ItemStack(Item.bucketEmpty)); + if (!entityplayer.capabilities.isCreativeMode) + { + if (current.stackSize > 1) + { + if (!entityplayer.inventory.addItemStackToInventory(liquidItem)) return false; + else + { + entityplayer.inventory.setInventorySlotContents(entityplayer.inventory.currentItem, LiquidHandler.consumeItem(current)); + } + } + else + { + entityplayer.inventory.setInventorySlotContents(entityplayer.inventory.currentItem, LiquidHandler.consumeItem(current)); + entityplayer.inventory.setInventorySlotContents(entityplayer.inventory.currentItem, liquidItem); + } + } + int ammount = liquid.amount; + if (current.isItemEqual(new ItemStack(Item.glassBottle))) + { + ammount = (LiquidContainerRegistry.BUCKET_VOLUME / 4); + } + tank.drain(null, ammount, true); + return true; } - sink.fill(facing, LiquidContainerRegistry.getLiquidForFilledItem(heldItem), true); - } - return true; - } - else if (heldItem.itemID == Item.glassBottle.itemID && sink.drain(side, LiquidContainerRegistry.BUCKET_VOLUME, false).amount > (LiquidContainerRegistry.BUCKET_VOLUME / 4)) - { - sink.drain(side, (LiquidContainerRegistry.BUCKET_VOLUME / 4), true); - ItemStack var12 = new ItemStack(Item.potion, 1, 0); - - if (!player.inventory.addItemStackToInventory(var12)) - { - world.spawnEntityInWorld(new EntityItem(world, (double) x + 0.5D, (double) y + 1.5D, (double) z + 0.5D, var12)); - } - else if (player instanceof EntityPlayerMP) - { - ((EntityPlayerMP) player).sendContainerToPlayer(player.inventoryContainer); - } - - --heldItem.stackSize; - - if (heldItem.stackSize <= 0) - { - player.inventory.setInventorySlotContents(player.inventory.currentItem, (ItemStack) null); } } - else if (heldItem.getItem() instanceof ItemArmor && ((ItemArmor) heldItem.getItem()).getArmorMaterial() == EnumArmorMaterial.CLOTH) - { - ItemArmor var13 = (ItemArmor) heldItem.getItem(); - var13.removeColor(heldItem); - return true; - } - - return true; - } } + + return false; + } @Override diff --git a/src/minecraft/liquidmechanics/common/block/BlockTank.java b/src/minecraft/liquidmechanics/common/block/BlockTank.java index 5ecb1bf2..5ef652cd 100644 --- a/src/minecraft/liquidmechanics/common/block/BlockTank.java +++ b/src/minecraft/liquidmechanics/common/block/BlockTank.java @@ -4,13 +4,12 @@ import java.util.List; import liquidmechanics.api.liquids.LiquidHandler; import liquidmechanics.client.render.BlockRenderHelper; -import liquidmechanics.common.LiquidMechanics; import liquidmechanics.common.TabLiquidMechanics; -import liquidmechanics.common.tileentity.TileEntityPump; import liquidmechanics.common.tileentity.TileEntityTank; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.MovingObjectPosition; @@ -53,9 +52,11 @@ public class BlockTank extends BlockMachine { return meta; } + @Override public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer entityplayer, int side, float hitX, float hitY, float hitZ) { + if (entityplayer.isSneaking()) { return false; } ItemStack current = entityplayer.inventory.getCurrentItem(); if (current != null) { @@ -71,6 +72,10 @@ public class BlockTank extends BlockMachine // Handle filled containers if (liquid != null) { + if (current.isItemEqual(new ItemStack(Item.potion))) + { + liquid = new LiquidStack(liquid.itemID, (LiquidContainerRegistry.BUCKET_VOLUME / 4), liquid.itemMeta); + } int filled = tank.fill(ForgeDirection.UNKNOWN, liquid, true); if (filled != 0 && !entityplayer.capabilities.isCreativeMode) @@ -110,7 +115,12 @@ public class BlockTank extends BlockMachine entityplayer.inventory.setInventorySlotContents(entityplayer.inventory.currentItem, liquidItem); } } - tank.drain(null, liquid.amount, true); + int ammount = liquid.amount; + if (current.isItemEqual(new ItemStack(Item.glassBottle))) + { + ammount = (LiquidContainerRegistry.BUCKET_VOLUME / 4); + } + tank.drain(null, ammount, true); return true; } } @@ -136,9 +146,10 @@ public class BlockTank extends BlockMachine return new ItemStack(this, 1, meta); } + @Override public void getSubBlocks(int par1, CreativeTabs par2CreativeTabs, List par3List) - { + { par3List.add(new ItemStack(par1, 1, 1)); par3List.add(new ItemStack(par1, 1, 4)); par3List.add(new ItemStack(par1, 1, 13)); diff --git a/src/minecraft/liquidmechanics/common/handlers/UpdateConverter.java b/src/minecraft/liquidmechanics/common/handlers/UpdateConverter.java index 8120af5a..ba16a669 100644 --- a/src/minecraft/liquidmechanics/common/handlers/UpdateConverter.java +++ b/src/minecraft/liquidmechanics/common/handlers/UpdateConverter.java @@ -1,10 +1,10 @@ package liquidmechanics.common.handlers; -import net.minecraft.nbt.NBTTagCompound; import liquidmechanics.api.helpers.ColorCode; import liquidmechanics.api.liquids.LiquidHandler; import liquidmechanics.common.tileentity.TileEntityPipe; import liquidmechanics.common.tileentity.TileEntityTank; +import net.minecraft.nbt.NBTTagCompound; /** * used to help convert older system to newer systems. diff --git a/src/minecraft/liquidmechanics/common/item/ItemGuage.java b/src/minecraft/liquidmechanics/common/item/ItemGuage.java index 44c22f89..d5750106 100644 --- a/src/minecraft/liquidmechanics/common/item/ItemGuage.java +++ b/src/minecraft/liquidmechanics/common/item/ItemGuage.java @@ -5,7 +5,6 @@ import java.util.List; import liquidmechanics.api.IReadOut; import liquidmechanics.common.LiquidMechanics; import liquidmechanics.common.TabLiquidMechanics; - import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; diff --git a/src/minecraft/liquidmechanics/common/item/ItemParts.java b/src/minecraft/liquidmechanics/common/item/ItemParts.java index 04a73a61..8e90be87 100644 --- a/src/minecraft/liquidmechanics/common/item/ItemParts.java +++ b/src/minecraft/liquidmechanics/common/item/ItemParts.java @@ -4,7 +4,6 @@ import java.util.List; import liquidmechanics.common.LiquidMechanics; import liquidmechanics.common.TabLiquidMechanics; - import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; diff --git a/src/minecraft/liquidmechanics/common/item/ItemValve.java b/src/minecraft/liquidmechanics/common/item/ItemValve.java index 2d7a0d19..4beb6db4 100644 --- a/src/minecraft/liquidmechanics/common/item/ItemValve.java +++ b/src/minecraft/liquidmechanics/common/item/ItemValve.java @@ -4,7 +4,6 @@ import java.util.List; import liquidmechanics.common.LiquidMechanics; import liquidmechanics.common.TabLiquidMechanics; - import net.minecraft.block.Block; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; diff --git a/src/minecraft/liquidmechanics/common/tileentity/ContainerReleaseValve.java b/src/minecraft/liquidmechanics/common/tileentity/ContainerReleaseValve.java index d4bb031a..f21353c1 100644 --- a/src/minecraft/liquidmechanics/common/tileentity/ContainerReleaseValve.java +++ b/src/minecraft/liquidmechanics/common/tileentity/ContainerReleaseValve.java @@ -1,12 +1,9 @@ package liquidmechanics.common.tileentity; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.inventory.Container; import net.minecraft.inventory.Slot; -import net.minecraft.inventory.SlotFurnace; import net.minecraft.item.ItemStack; public class ContainerReleaseValve extends Container diff --git a/src/minecraft/liquidmechanics/common/tileentity/TileEntityGenerator.java b/src/minecraft/liquidmechanics/common/tileentity/TileEntityGenerator.java index f8d3bba8..9df8b9b1 100644 --- a/src/minecraft/liquidmechanics/common/tileentity/TileEntityGenerator.java +++ b/src/minecraft/liquidmechanics/common/tileentity/TileEntityGenerator.java @@ -8,7 +8,6 @@ import liquidmechanics.api.mech.IForce; import liquidmechanics.common.LiquidMechanics; import liquidmechanics.common.MetaGroup; import liquidmechanics.common.block.BlockGenerator; - import net.minecraft.entity.player.EntityPlayer; import net.minecraft.network.INetworkManager; import net.minecraft.network.packet.Packet250CustomPayload; diff --git a/src/minecraft/liquidmechanics/common/tileentity/TileEntityPipe.java b/src/minecraft/liquidmechanics/common/tileentity/TileEntityPipe.java index 9009f26b..3aa06ce9 100644 --- a/src/minecraft/liquidmechanics/common/tileentity/TileEntityPipe.java +++ b/src/minecraft/liquidmechanics/common/tileentity/TileEntityPipe.java @@ -2,38 +2,23 @@ package liquidmechanics.common.tileentity; import java.util.Random; -import liquidmechanics.api.IColorCoded; import liquidmechanics.api.IPipe; import liquidmechanics.api.IReadOut; import liquidmechanics.api.helpers.ColorCode; import liquidmechanics.api.helpers.connectionHelper; import liquidmechanics.api.liquids.IPressure; -import liquidmechanics.api.liquids.LiquidData; import liquidmechanics.api.liquids.LiquidHandler; -import liquidmechanics.common.LiquidMechanics; import liquidmechanics.common.handlers.UpdateConverter; import net.minecraft.block.Block; -import net.minecraft.block.material.Material; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.network.INetworkManager; -import net.minecraft.network.packet.Packet; -import net.minecraft.network.packet.Packet250CustomPayload; import net.minecraft.tileentity.TileEntity; -import net.minecraft.world.World; import net.minecraftforge.common.ForgeDirection; import net.minecraftforge.liquids.ILiquidTank; import net.minecraftforge.liquids.ITankContainer; import net.minecraftforge.liquids.LiquidContainerRegistry; import net.minecraftforge.liquids.LiquidStack; import net.minecraftforge.liquids.LiquidTank; -import universalelectricity.core.vector.Vector3; -import universalelectricity.prefab.network.IPacketReceiver; -import universalelectricity.prefab.network.PacketManager; - -import com.google.common.io.ByteArrayDataInput; - -import cpw.mods.fml.common.FMLLog; public class TileEntityPipe extends TileEntity implements ITankContainer, IReadOut, IPipe { diff --git a/src/minecraft/liquidmechanics/common/tileentity/TileEntityPump.java b/src/minecraft/liquidmechanics/common/tileentity/TileEntityPump.java index 0764a05f..c5abf694 100644 --- a/src/minecraft/liquidmechanics/common/tileentity/TileEntityPump.java +++ b/src/minecraft/liquidmechanics/common/tileentity/TileEntityPump.java @@ -9,22 +9,16 @@ import liquidmechanics.api.liquids.LiquidData; import liquidmechanics.api.liquids.LiquidHandler; import liquidmechanics.common.LiquidMechanics; import liquidmechanics.common.MetaGroup; -import liquidmechanics.common.handlers.UpdateConverter; - import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.nbt.NBTTagCompound; import net.minecraft.network.INetworkManager; import net.minecraft.network.packet.Packet; import net.minecraft.network.packet.Packet250CustomPayload; import net.minecraft.tileentity.TileEntity; import net.minecraftforge.common.ForgeDirection; -import net.minecraftforge.liquids.ILiquidTank; import net.minecraftforge.liquids.ITankContainer; -import net.minecraftforge.liquids.LiquidContainerData; import net.minecraftforge.liquids.LiquidContainerRegistry; import net.minecraftforge.liquids.LiquidStack; -import net.minecraftforge.liquids.LiquidTank; import universalelectricity.core.electricity.ElectricityConnections; import universalelectricity.core.electricity.ElectricityNetwork; import universalelectricity.core.vector.Vector3; diff --git a/src/minecraft/liquidmechanics/common/tileentity/TileEntityReleaseValve.java b/src/minecraft/liquidmechanics/common/tileentity/TileEntityReleaseValve.java index 6308d71c..335b8f36 100644 --- a/src/minecraft/liquidmechanics/common/tileentity/TileEntityReleaseValve.java +++ b/src/minecraft/liquidmechanics/common/tileentity/TileEntityReleaseValve.java @@ -1,12 +1,8 @@ package liquidmechanics.common.tileentity; -import java.nio.channels.Pipe; import java.util.ArrayList; -import java.util.Iterator; import java.util.List; -import cpw.mods.fml.common.FMLLog; - import liquidmechanics.api.IColorCoded; import liquidmechanics.api.IReadOut; import liquidmechanics.api.helpers.ColorCode; @@ -23,9 +19,7 @@ import net.minecraft.tileentity.TileEntity; import net.minecraftforge.common.ForgeDirection; import net.minecraftforge.liquids.ILiquidTank; import net.minecraftforge.liquids.ITankContainer; -import net.minecraftforge.liquids.LiquidContainerRegistry; import net.minecraftforge.liquids.LiquidStack; -import net.minecraftforge.liquids.LiquidTank; import universalelectricity.prefab.implement.IRedstoneReceptor; public class TileEntityReleaseValve extends TileEntity implements IPressure, IReadOut, IRedstoneReceptor, IInventory diff --git a/src/minecraft/liquidmechanics/common/tileentity/TileEntitySink.java b/src/minecraft/liquidmechanics/common/tileentity/TileEntitySink.java index 2cb05af4..2ad7c7de 100644 --- a/src/minecraft/liquidmechanics/common/tileentity/TileEntitySink.java +++ b/src/minecraft/liquidmechanics/common/tileentity/TileEntitySink.java @@ -1,16 +1,9 @@ package liquidmechanics.common.tileentity; -import javax.swing.colorchooser.ColorSelectionModel; - import liquidmechanics.api.IColorCoded; -import liquidmechanics.api.IReadOut; import liquidmechanics.api.helpers.ColorCode; -import liquidmechanics.api.helpers.connectionHelper; -import liquidmechanics.api.liquids.IPressure; -import liquidmechanics.api.liquids.LiquidData; import liquidmechanics.api.liquids.LiquidHandler; import liquidmechanics.common.LiquidMechanics; -import liquidmechanics.common.handlers.UpdateConverter; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.network.INetworkManager; diff --git a/src/minecraft/liquidmechanics/common/tileentity/TileEntityTank.java b/src/minecraft/liquidmechanics/common/tileentity/TileEntityTank.java index 34f82232..b925b05c 100644 --- a/src/minecraft/liquidmechanics/common/tileentity/TileEntityTank.java +++ b/src/minecraft/liquidmechanics/common/tileentity/TileEntityTank.java @@ -1,7 +1,5 @@ package liquidmechanics.common.tileentity; -import javax.swing.colorchooser.ColorSelectionModel; - import liquidmechanics.api.IColorCoded; import liquidmechanics.api.IReadOut; import liquidmechanics.api.helpers.ColorCode;