Проверить Item на Ore Dictionary

Версия Minecraft
1.12.2
API
Forge
37
1
1
Есть переменная Item, необходимо проверить относится ли данный тип предметов к определённому Ore Dictionary (например "ingotCopper": если предмет - слиток меди, возвращаем true, иначе возвращаем false). Сделать это нужно коде, не в игре.
 

necauqua

когда-то был anti344
Администратор
1,216
27
172
Странно что нету удобного метода сразу в OreDictionary, написал такое:

Java:
public static boolean matches(Item item, String oredict) {
    int copperId = OreDictionary.getOreID(oredict);
    for (int id : OreDictionary.getOreIDs(new ItemStack(item))) {
        if (id == copperId) {
            return true;
        }
    }
    return false;
}

// usage:
if (matches(item, "ingotCopper")) {
    System.out.println("the item is copper, wowsies");
}

В любом случае в 1.16 переехали на тэги ¯\_(ツ)\_/¯
 
Сверху