package openmods.inventory.comparator;
import com.google.common.base.Objects;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
public class EqualComponents {
public interface IItemStackTester {
public boolean isEqual(ItemStack left, ItemStack right);
}
public static final IItemStackTester ITEM_TESTER = new IItemStackTester() {
@Override
public boolean isEqual(ItemStack left, ItemStack right) {
return left.getItem() == right.getItem();
}
};
public static final IItemStackTester ITEM_ID_TESTER = new IItemStackTester() {
@Override
public boolean isEqual(ItemStack left, ItemStack right) {
return Item.getIdFromItem(left.getItem()) == Item.getIdFromItem(right.getItem());
}
};
public static final IItemStackTester DAMAGE_TESTER = new IItemStackTester() {
@Override
public boolean isEqual(ItemStack left, ItemStack right) {
return left.getItemDamage() == right.getItemDamage();
}
};
public static final IItemStackTester SIZE_TESTER = new IItemStackTester() {
@Override
public boolean isEqual(ItemStack left, ItemStack right) {
return left.stackSize == right.stackSize;
}
};
public static final IItemStackTester NBT_TESTER = new IItemStackTester() {
@Override
public boolean isEqual(ItemStack left, ItemStack right) {
return Objects.equal(left.stackTagCompound, right.stackTagCompound);
}
};
}