package com.zivilon.cinder_loe; import java.util.AbstractMap.SimpleEntry; import java.util.ArrayList; import java.util.List; import net.minecraft.block.Block; import net.minecraft.item.Item; import cpw.mods.fml.common.registry.GameData; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.FMLControlledNamespacedRegistry; public class ItemRegistration { public static FMLControlledNamespacedRegistry block_registry; public static FMLControlledNamespacedRegistry item_registry; static { block_registry = GameData.getBlockRegistry(); item_registry = GameData.getItemRegistry(); } public static List> list = new ArrayList<>(); @Deprecated public static void registerItem(Item item, String item_name, int ordinal) { while (list.size() <= ordinal) { list.add(new SimpleEntry<>(null, null)); } list.set(ordinal, new SimpleEntry<>(item, item_name)); } // Register items in consistent order that persists through mod updates while enabling us to keep the item lists neatly organized. // Unknown if this is actually necessary, but might help to prevent item ID shifts public static void registerItems() { for (int i = 0; i < list.size(); i++) { SimpleEntry entry = list.get(i); if (entry == null || entry.getKey() == null || entry.getValue() == null) { break; } GameRegistry.registerItem(entry.getKey(), entry.getValue()); } } public static void register(Item item, String item_name, int id) { item_registry.addObject(id, item_name, item); } public static void register(Block block, String item_name, int id) { block_registry.addObject(id, item_name, block); } }