By the way. This logic is wrong too because BlockMetadata is gotten differently.
for(ItemStack is : OreDictionary.getOres(ore))
{
Item item = is.getItem();
int metadata = item.getMetadata(is.getItemDamage());//This function is used for converting item metadat into block metadata
ItemElementalAxe.oreDictLogs.add(Arrays.asList(new Integer[]{Integer.valueOf(Item.getIdFromItem(is.getItem())), Integer.valueOf(metadata)}));
}
(Also @Overmind could tab be supported?)