use of cc.lasmgratel.foodcraftreloaded.minecraft.common.util.loader.annotation.Load in project FoodCraft-Reloaded by LasmGratel.
the class ItemLoader method registerRenders.
@Load(side = Side.CLIENT)
public void registerRenders() {
for (Field field : FCRItems.class.getFields()) {
field.setAccessible(true);
RegItem anno = field.getAnnotation(RegItem.class);
try {
if (anno == null)
continue;
Item item = (Item) field.get(null);
if (item instanceof CustomModelMasking && ((CustomModelMasking) item).getModelLocation() != null) {
ModelLoader.setCustomModelResourceLocation(item, 0, ((CustomModelMasking) item).getModelLocation());
}
if (item.getHasSubtypes()) {
if (item instanceof IMetadatable) {
for (int i = 0; i < ((IMetadatable) item).getMaxMetadata(); i++) registerRender(item, i);
}
} else {
registerRender(item, 0);
}
} catch (Exception e) {
FoodCraftReloaded.getLogger().warn("Un-able to register item " + field.toGenericString(), e);
}
}
}
use of cc.lasmgratel.foodcraftreloaded.minecraft.common.util.loader.annotation.Load in project FoodCraft-Reloaded by LasmGratel.
the class PropertiedFoodLoader method registerOreDict.
@Load(LoaderState.AVAILABLE)
public void registerOreDict() {
for (Field field : FCRFoods.class.getFields()) {
field.setAccessible(true);
try {
RegFood anno = field.getDeclaredAnnotation(RegFood.class);
if (anno == null) {
continue;
}
ItemPFood item = (ItemPFood) field.get(null);
Arrays.asList(anno.oreDict()).forEach(s -> OreDictionary.registerOre(s, item));
OreDictionary.registerOre("listAllfoods", item);
} catch (IllegalAccessException | NullPointerException e) {
FoodCraftReloaded.getLogger().warn("Un-able to register food " + field.toGenericString(), e);
}
}
}
Aggregations