Fixed grinder allowing any type of fluid into its tank

This commit is contained in:
Tntrololol 2015-05-26 23:28:12 -05:00
parent 6ddc05e998
commit 4ce6b21d03

View file

@ -11,6 +11,7 @@ import net.minecraftforge.fluids.*;
import techreborn.api.recipe.RecipeCrafter;
import techreborn.config.ConfigTechReborn;
import techreborn.init.ModBlocks;
import techreborn.init.ModFluids;
import techreborn.util.FluidUtils;
import techreborn.util.Inventory;
@ -38,61 +39,50 @@ public class TileGrinder extends TileMachineBase implements IWrenchable, IEnergy
}
@Override
public boolean wrenchCanSetFacing(EntityPlayer entityPlayer, int side)
{
public boolean wrenchCanSetFacing(EntityPlayer entityPlayer, int side) {
return false;
}
@Override
public short getFacing()
{
public short getFacing() {
return 0;
}
@Override
public void setFacing(short facing)
{
public void setFacing(short facing) {
}
@Override
public boolean wrenchCanRemove(EntityPlayer entityPlayer)
{
if (entityPlayer.isSneaking())
{
public boolean wrenchCanRemove(EntityPlayer entityPlayer) {
if (entityPlayer.isSneaking()) {
return true;
}
return false;
}
@Override
public float getWrenchDropRate()
{
public float getWrenchDropRate() {
return 1.0F;
}
@Override
public ItemStack getWrenchDrop(EntityPlayer entityPlayer)
{
public ItemStack getWrenchDrop(EntityPlayer entityPlayer) {
return new ItemStack(ModBlocks.Grinder, 1);
}
public boolean isComplete()
{
public boolean isComplete() {
return false;
}
@Override
public void updateEntity()
{
public void updateEntity() {
super.updateEntity();
energy.updateEntity();
crafter.updateEntity();
FluidUtils.drainContainers(this, inventory, 1, 5);
}
@Override
public void readFromNBT(NBTTagCompound tagCompound)
{
public void readFromNBT(NBTTagCompound tagCompound) {
super.readFromNBT(tagCompound);
inventory.readFromNBT(tagCompound);
energy.readFromNBT(tagCompound);
@ -101,8 +91,7 @@ public class TileGrinder extends TileMachineBase implements IWrenchable, IEnergy
}
@Override
public void writeToNBT(NBTTagCompound tagCompound)
{
public void writeToNBT(NBTTagCompound tagCompound) {
super.writeToNBT(tagCompound);
inventory.writeToNBT(tagCompound);
energy.writeToNBT(tagCompound);
@ -111,54 +100,51 @@ public class TileGrinder extends TileMachineBase implements IWrenchable, IEnergy
}
@Override
public void invalidate()
{
public void invalidate() {
energy.invalidate();
}
@Override
public void onChunkUnload()
{
public void onChunkUnload() {
energy.onChunkUnload();
}
/* IFluidHandler */
@Override
public int fill(ForgeDirection from, FluidStack resource, boolean doFill)
{
return tank.fill(resource, doFill);
public int fill(ForgeDirection from, FluidStack resource, boolean doFill) {
if(resource.getFluid() == FluidRegistry.WATER || resource.getFluid() == ModFluids.fluidMercury || resource.getFluid() == ModFluids.fluidSodiumpersulfate) {
return tank.fill(resource, doFill);
}
return 0;
}
@Override
public FluidStack drain(ForgeDirection from, FluidStack resource, boolean doDrain)
{
if (resource == null || !resource.isFluidEqual(tank.getFluid()))
{
public FluidStack drain(ForgeDirection from, FluidStack resource, boolean doDrain) {
if (resource == null || !resource.isFluidEqual(tank.getFluid())) {
return null;
}
return tank.drain(resource.amount, doDrain);
}
@Override
public FluidStack drain(ForgeDirection from, int maxDrain, boolean doDrain)
{
public FluidStack drain(ForgeDirection from, int maxDrain, boolean doDrain) {
return tank.drain(maxDrain, doDrain);
}
@Override
public boolean canFill(ForgeDirection from, Fluid fluid)
{
return true;
public boolean canFill(ForgeDirection from, Fluid fluid) {
if(fluid == FluidRegistry.WATER || fluid == ModFluids.fluidMercury || fluid == ModFluids.fluidSodiumpersulfate) {
return true;
}
return false;
}
@Override
public boolean canDrain(ForgeDirection from, Fluid fluid)
{
return true;
public boolean canDrain(ForgeDirection from, Fluid fluid) {
return false;
}
@Override
public FluidTankInfo[] getTankInfo(ForgeDirection from)
{
public FluidTankInfo[] getTankInfo(ForgeDirection from) {
return new FluidTankInfo[] { tank.getInfo() };
}
}