@@ -0,0 +1,790 @@
+package org.monospark.actionpermissions.kind.item;%0A%0Aimport java.util.Set;%0A%0Aimport org.monospark.actionpermissions.kind.ObjectMatcher;%0Aimport org.spongepowered.api.data.DataQuery;%0Aimport org.spongepowered.api.item.ItemType;%0Aimport org.spongepowered.api.item.inventory.ItemStack;%0A%0Apublic final class ItemKindMatcher implements ObjectMatcher %7B%0A%0A%09private Set%3CItemKind%3E kinds;%0A%0A%09public ItemKindMatcher(Set%3CItemKind%3E kinds) %7B%0A%09%09this.kinds = kinds;%0A%09%7D%0A%0A%09@Override%0A%09public boolean matchesItemStack(ItemStack stack) %7B%0A%09%09ItemType stackType = stack.getItem();%0A%09%09for(ItemKind kind : kinds) %7B%0A%09%09%09if(kind.getItemType() == stackType &&%0A%09%09%09%09%09(stack.toContainer().getInt(new DataQuery(%22UnsafeDamage%22)).get() & kind.getVariant()) ==%0A%09%09%09%09%09%09%09kind.getVariant()) %7B%0A%09%09%09%09return true;%0A%09%09%09%7D%0A%09%09%7D%0A%09%09return false;%0A%09%7D%0A%7D%0A

Add the ItemKindMatcher class