| /* |
| * Copyright (c) SpaceToad, 2011-2012 |
| * http://www.mod-buildcraft.com |
| * |
| * BuildCraft is distributed under the terms of the Minecraft Mod Public |
| * License 1.0, or MMPL. Please check the contents of the license located in |
| * http://www.mod-buildcraft.com/MMPL-1.0.txt |
| */ |
| package buildcraft.api.core; |
| |
| import net.minecraft.item.ItemStack; |
| |
| /** |
| * |
| * @author CovertJaguar <http://www.railcraft.info/> |
| */ |
| public class StackWrapper { |
| |
| public final ItemStack stack; |
| |
| public StackWrapper(ItemStack stack) { |
| this.stack = stack; |
| } |
| |
| @Override |
| public int hashCode() { |
| int hash = 5; |
| hash = 67 * hash + stack.itemID; |
| hash = 67 * hash + stack.getItemDamage(); |
| if (stack.stackTagCompound != null) |
| hash = 67 * hash + stack.stackTagCompound.hashCode(); |
| return hash; |
| } |
| |
| @Override |
| public boolean equals(Object obj) { |
| if (obj == null) |
| return false; |
| if (getClass() != obj.getClass()) |
| return false; |
| final StackWrapper other = (StackWrapper) obj; |
| if (stack.itemID != other.stack.itemID) |
| return false; |
| if (stack.getHasSubtypes() && stack.getItemDamage() != other.stack.getItemDamage()) |
| return false; |
| if (stack.stackTagCompound != null && !stack.stackTagCompound.equals(other.stack.stackTagCompound)) |
| return false; |
| return true; |
| } |
| } |