Search in sources :

Example 1 with MMDLibRegisterItems

use of com.mcmoddev.lib.events.MMDLibRegisterItems in project BaseMetals by MinecraftModDevelopmentMods.

the class Items method registerItems.

/**
 */
@SubscribeEvent
public static void registerItems(MMDLibRegisterItems ev) {
    final List<String> materials = Arrays.asList(MaterialNames.ADAMANTINE, MaterialNames.ANTIMONY, MaterialNames.AQUARIUM, MaterialNames.BISMUTH, MaterialNames.BRASS, MaterialNames.BRONZE, MaterialNames.COLDIRON, MaterialNames.COPPER, MaterialNames.CUPRONICKEL, MaterialNames.ELECTRUM, MaterialNames.INVAR, MaterialNames.LEAD, MaterialNames.MITHRIL, MaterialNames.NICKEL, MaterialNames.PEWTER, MaterialNames.PLATINUM, MaterialNames.SILVER, MaterialNames.STARSTEEL, MaterialNames.STEEL, MaterialNames.TIN, MaterialNames.ZINC);
    // create and register modded stuffs
    final List<String> materialsModSupport = Arrays.asList(MaterialNames.ADAMANTINE, MaterialNames.ANTIMONY, MaterialNames.BISMUTH, MaterialNames.COLDIRON, MaterialNames.PLATINUM, MaterialNames.NICKEL, MaterialNames.STARSTEEL, MaterialNames.ZINC);
    materials.stream().filter(Materials::hasMaterial).filter(materialName -> !Materials.getMaterialByName(materialName).isEmpty()).forEach(materialName -> {
        final MMDMaterial material = Materials.getMaterialByName(materialName);
        create(Names.BLEND, material);
        create(Names.INGOT, material);
        create(Names.NUGGET, material);
        create(Names.POWDER, material);
        create(Names.SMALLBLEND, material);
        create(Names.SMALLPOWDER, material);
        create(Names.ARROW, material);
        create(Names.AXE, material);
        create(Names.BOLT, material);
        create(Names.BOOTS, material);
        create(Names.BOW, material);
        create(Names.CHESTPLATE, material);
        create(Names.CRACKHAMMER, material);
        create(Names.CROSSBOW, material);
        create(Names.DOOR, material);
        create(Names.FISHING_ROD, material);
        create(Names.HELMET, material);
        create(Names.HOE, material);
        create(Names.HORSE_ARMOR, material);
        create(Names.LEGGINGS, material);
        create(Names.PICKAXE, material);
        create(Names.SHEARS, material);
        create(Names.SHIELD, material);
        create(Names.SHOVEL, material);
        create(Names.SCYTHE, material);
        create(Names.SLAB, material);
        create(Names.SWORD, material);
        create(Names.ROD, material);
        create(Names.GEAR, material);
    });
    materials.stream().filter(Materials::hasMaterial).map(Materials::getMaterialByName).forEach(com.mcmoddev.basemetals.init.Items::setBurnTimes);
    materialsModSupport.stream().filter(Materials::hasMaterial).filter(materialName -> !Materials.getMaterialByName(materialName).isEmpty()).forEach(materialName -> {
        final MMDMaterial material = Materials.getMaterialByName(materialName);
        create(Names.CASING, material);
        create(Names.DENSE_PLATE, material);
        if (material.hasOre()) {
            create(Names.CRUSHED, material);
            create(Names.CRUSHED_PURIFIED, material);
            createMekCrystal(material, ItemGroups.getTab(SharedStrings.TAB_ITEMS));
            create(Names.SHARD, material);
            create(Names.CLUMP, material);
            create(Names.POWDER_DIRTY, material);
            create(Names.CRYSTAL, material);
        }
    });
    if (Materials.hasMaterial(MaterialNames.MERCURY)) {
        final MMDMaterial mercury = Materials.getMaterialByName(MaterialNames.MERCURY);
        create(Names.INGOT, mercury);
        create(Names.NUGGET, mercury);
        create(Names.POWDER, mercury);
        create(Names.SMALLPOWDER, mercury);
    }
    Arrays.asList(MaterialNames.STONE, MaterialNames.STEEL, MaterialNames.ADAMANTINE).stream().filter(Materials::hasMaterial).forEach(materialName -> create(Names.ANVIL, Materials.getMaterialByName(materialName)));
    addToMetList();
    MinecraftForge.EVENT_BUS.register(Items.class);
}
Also used : MMDLibRegisterItems(com.mcmoddev.lib.events.MMDLibRegisterItems) Arrays(java.util.Arrays) ItemGroups(com.mcmoddev.lib.init.ItemGroups) Materials(com.mcmoddev.lib.init.Materials) Item(net.minecraft.item.Item) Oredicts(com.mcmoddev.lib.util.Oredicts) MMDMaterial(com.mcmoddev.lib.material.MMDMaterial) MaterialNames(com.mcmoddev.basemetals.data.MaterialNames) SharedStrings(com.mcmoddev.lib.data.SharedStrings) IForgeRegistry(net.minecraftforge.registries.IForgeRegistry) Names(com.mcmoddev.lib.data.Names) IMMDBurnableObject(com.mcmoddev.lib.material.IMMDBurnableObject) ItemStack(net.minecraft.item.ItemStack) List(java.util.List) MinecraftForge(net.minecraftforge.common.MinecraftForge) BaseMetals(com.mcmoddev.basemetals.BaseMetals) ImmutableList(com.google.common.collect.ImmutableList) SubscribeEvent(net.minecraftforge.fml.common.eventhandler.SubscribeEvent) RegistryEvent(net.minecraftforge.event.RegistryEvent) Mod(net.minecraftforge.fml.common.Mod) Nonnull(javax.annotation.Nonnull) Materials(com.mcmoddev.lib.init.Materials) MMDMaterial(com.mcmoddev.lib.material.MMDMaterial) MMDLibRegisterItems(com.mcmoddev.lib.events.MMDLibRegisterItems) SubscribeEvent(net.minecraftforge.fml.common.eventhandler.SubscribeEvent)

Aggregations

ImmutableList (com.google.common.collect.ImmutableList)1 BaseMetals (com.mcmoddev.basemetals.BaseMetals)1 MaterialNames (com.mcmoddev.basemetals.data.MaterialNames)1 Names (com.mcmoddev.lib.data.Names)1 SharedStrings (com.mcmoddev.lib.data.SharedStrings)1 MMDLibRegisterItems (com.mcmoddev.lib.events.MMDLibRegisterItems)1 ItemGroups (com.mcmoddev.lib.init.ItemGroups)1 Materials (com.mcmoddev.lib.init.Materials)1 IMMDBurnableObject (com.mcmoddev.lib.material.IMMDBurnableObject)1 MMDMaterial (com.mcmoddev.lib.material.MMDMaterial)1 Oredicts (com.mcmoddev.lib.util.Oredicts)1 Arrays (java.util.Arrays)1 List (java.util.List)1 Nonnull (javax.annotation.Nonnull)1 Item (net.minecraft.item.Item)1 ItemStack (net.minecraft.item.ItemStack)1 MinecraftForge (net.minecraftforge.common.MinecraftForge)1 RegistryEvent (net.minecraftforge.event.RegistryEvent)1 Mod (net.minecraftforge.fml.common.Mod)1 SubscribeEvent (net.minecraftforge.fml.common.eventhandler.SubscribeEvent)1