From 6177c854d095129d84808556d48426a2635dd7ed Mon Sep 17 00:00:00 2001 From: AlgorithmX2 Date: Sat, 12 Jul 2014 14:27:06 -0500 Subject: [PATCH] Fixed Pattern De-Coding. --- items/misc/ItemEncodedPattern.java | 32 ++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/items/misc/ItemEncodedPattern.java b/items/misc/ItemEncodedPattern.java index 7f92a258..afde7078 100644 --- a/items/misc/ItemEncodedPattern.java +++ b/items/misc/ItemEncodedPattern.java @@ -31,17 +31,22 @@ public class ItemEncodedPattern extends AEBaseItem implements ICraftingPatternIt MinecraftForgeClient.registerItemRenderer( this, new ItemEncodedPatternRenderer() ); } - @Override - public boolean onItemUseFirst(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ) + private boolean clearPattern(ItemStack stack, EntityPlayer player) { - InventoryPlayer inv = player.inventory; - - for (int s = 0; s < player.inventory.getSizeInventory(); s++) + if ( player.isSneaking() ) { - if ( inv.getStackInSlot( s ) == stack ) + if ( Platform.isClient() ) + return false; + + InventoryPlayer inv = player.inventory; + + for (int s = 0; s < player.inventory.getSizeInventory(); s++) { - inv.setInventorySlotContents( s, AEApi.instance().materials().materialBlankPattern.stack( stack.stackSize ) ); - return true; + if ( inv.getStackInSlot( s ) == stack ) + { + inv.setInventorySlotContents( s, AEApi.instance().materials().materialBlankPattern.stack( stack.stackSize ) ); + return true; + } } } @@ -49,9 +54,16 @@ public class ItemEncodedPattern extends AEBaseItem implements ICraftingPatternIt } @Override - public ItemStack onItemRightClick(ItemStack stack, World w, EntityPlayer p) + public boolean onItemUseFirst(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ) { - return AEApi.instance().materials().materialBlankPattern.stack( stack.stackSize ); + return clearPattern( stack, player ); + } + + @Override + public ItemStack onItemRightClick(ItemStack stack, World w, EntityPlayer player) + { + clearPattern( stack, player ); + return stack; } @Override