1
0
mirror of https://github.com/SquidDev-CC/CC-Tweaked synced 2025-03-23 20:06:58 +00:00

Fix the printer clearing the previous page

When printing on top of an already printed page, the previous contents
should be preserved. However, this did not occur as the stack had been
shrunk and so the item was no longer considered a printout.

Closes SquidDev-CC/ComputerCraft#2
This commit is contained in:
SquidDev 2017-10-06 12:04:49 +01:00
parent 19e4c03d3a
commit bfb4f88304

View File

@ -493,21 +493,6 @@ public class TilePrinter extends TilePeripheralBase
ItemStack paperStack = m_inventory.get( i );
if( !paperStack.isEmpty() && isPaper(paperStack) )
{
// Decrement ink
inkStack.shrink( 1 );
if( inkStack.isEmpty() )
{
m_inventory.set( 0, ItemStack.EMPTY );
}
// Decrement paper
paperStack.shrink( 1 );
if( paperStack.isEmpty() )
{
m_inventory.set( i, ItemStack.EMPTY );
updateAnim();
}
// Setup the new page
int colour = inkStack.getItemDamage();
if( colour >= 0 && colour < 16 ) {
@ -532,6 +517,21 @@ public class TilePrinter extends TilePeripheralBase
m_pageTitle = "";
}
m_page.setCursorPos( 0, 0 );
// Decrement ink
inkStack.shrink( 1 );
if( inkStack.isEmpty() )
{
m_inventory.set( 0, ItemStack.EMPTY );
}
// Decrement paper
paperStack.shrink( 1 );
if( paperStack.isEmpty() )
{
m_inventory.set( i, ItemStack.EMPTY );
updateAnim();
}
markDirty();
m_printing = true;