Fixed a few issues with picking up tanks
Issues with inf fluid bug Issues with render crash
This commit is contained in:
parent
826acc8c0d
commit
9bb6098362
2 changed files with 5 additions and 3 deletions
|
@ -116,7 +116,7 @@ public class ItemTankRenderer implements IItemRenderer
|
|||
{
|
||||
cap = liquid.amount;
|
||||
}
|
||||
GL11.glCallList(displayList[(int) ((float) liquid.amount / (float) (cap) * (RenderBlockFluid.DISPLAY_STAGES - 1))]);
|
||||
GL11.glCallList(displayList[(int) Math.min(((float) liquid.amount / (float) (cap) * (RenderBlockFluid.DISPLAY_STAGES - 1)), displayList.length - 1)]);
|
||||
|
||||
GL11.glPopAttrib();
|
||||
GL11.glPopMatrix();
|
||||
|
|
|
@ -53,16 +53,18 @@ public class ItemBlockPipe extends ItemBlock
|
|||
public static ItemStack getWrenchedItem(World world, Vector3 vec)
|
||||
{
|
||||
TileEntity entity = vec.getTileEntity(world);
|
||||
if (entity instanceof TileEntityTank)
|
||||
if (entity instanceof TileEntityTank && ((TileEntityTank) entity).getTankInfo() != null && ((TileEntityTank) entity).getTankInfo()[0] != null)
|
||||
{
|
||||
ItemStack itemStack = new ItemStack(FMRecipeLoader.blockTank);
|
||||
FluidStack stack = ((TileEntityTank) entity).drain(ForgeDirection.UNKNOWN, Integer.MAX_VALUE, false);
|
||||
FluidStack stack = ((TileEntityTank) entity).getTankInfo()[0].fluid;
|
||||
|
||||
if (itemStack.getTagCompound() == null)
|
||||
{
|
||||
itemStack.setTagCompound(new NBTTagCompound());
|
||||
}
|
||||
if (stack != null)
|
||||
{
|
||||
((TileEntityTank) entity).drain(ForgeDirection.UNKNOWN, stack.amount, true);
|
||||
itemStack.getTagCompound().setCompoundTag("fluid", stack.writeToNBT(new NBTTagCompound()));
|
||||
}
|
||||
return itemStack;
|
||||
|
|
Loading…
Reference in a new issue