Search in sources :

Example 61 with OreDictItemData

use of gregapi.oredict.OreDictItemData in project gregtech6 by GregTech6.

the class Loader_MultiTileEntities method unsorted1.

private static void unsorted1(MultiTileEntityRegistry aRegistry, MultiTileEntityBlock aMetal, MultiTileEntityBlock aMetalChips, MultiTileEntityBlock aMetalWires, MultiTileEntityBlock aMachine, MultiTileEntityBlock aWooden, MultiTileEntityBlock aBush, MultiTileEntityBlock aStone, MultiTileEntityBlock aWool, MultiTileEntityBlock aTNT, MultiTileEntityBlock aHive, MultiTileEntityBlock aUtilMetal, MultiTileEntityBlock aUtilStone, MultiTileEntityBlock aUtilWood, MultiTileEntityBlock aUtilWool, OreDictMaterial aMat, Class<? extends TileEntity> aClass) {
    // Burning Boxes
    aClass = MultiTileEntityGeneratorBrick.class;
    aMat = MT.Brick;
    aRegistry.add("Brick Burning Box (Solid)", "Burning Boxes", 1199, 1104, aClass, aMat.mToolQuality, 16, aStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 2500, NBT_OUTPUT, 16, NBT_ENERGY_EMITTED, TD.Energy.HU), "BBB", "BBB", "BFB", 'B', OP.ingot.dat(MT.Brick), 'F', OD.craftingFirestarter);
    aClass = MultiTileEntityGeneratorMetal.class;
    aMat = MT.Pb;
    aRegistry.add("Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1100, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 5000, NBT_OUTPUT, 16, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Bi;
    aRegistry.add("Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1101, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 4500, NBT_OUTPUT, 20, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Bronze;
    aRegistry.add("Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1102, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 7.0F, NBT_RESISTANCE, 7.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 7500, NBT_OUTPUT, 24, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Invar;
    aRegistry.add("Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1103, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 16, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = ANY.Steel;
    aRegistry.add("Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1104, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 7000, NBT_OUTPUT, 32, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Cr;
    aRegistry.add("Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1105, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 8500, NBT_OUTPUT, 112, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Ti;
    aRegistry.add("Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1106, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 8500, NBT_OUTPUT, 96, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Netherite;
    aRegistry.add("Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1110, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 96, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = ANY.W;
    aRegistry.add("Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1107, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 128, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.TungstenSteel;
    aRegistry.add("Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1108, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 128, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1109, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 256, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Pb;
    aRegistry.add("Dense Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1150, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 5000, NBT_OUTPUT, 64, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Bi;
    aRegistry.add("Dense Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1151, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 4500, NBT_OUTPUT, 80, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Bronze;
    aRegistry.add("Dense Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1152, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 7.0F, NBT_RESISTANCE, 7.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 7500, NBT_OUTPUT, 96, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Invar;
    aRegistry.add("Dense Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1153, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 64, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = ANY.Steel;
    aRegistry.add("Dense Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1154, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 7000, NBT_OUTPUT, 128, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Cr;
    aRegistry.add("Dense Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1155, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 8500, NBT_OUTPUT, 448, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Ti;
    aRegistry.add("Dense Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1156, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 8500, NBT_OUTPUT, 384, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Netherite;
    aRegistry.add("Dense Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1160, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 384, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = ANY.W;
    aRegistry.add("Dense Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1157, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 512, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.TungstenSteel;
    aRegistry.add("Dense Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1158, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 512, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Dense Burning Box (Solid, " + aMat.getLocal() + ")", "Burning Boxes", 1159, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.Furnace, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 1024, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "PwP", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    // Steam Boilers
    aClass = MultiTileEntityBoilerTank.class;
    aMat = MT.Pb;
    aRegistry.add("Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1200, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_CAPACITY, 160000, NBT_CAPACITY_SU, 160000, NBT_OUTPUT_SU, 16 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDouble.dat(aMat));
    aMat = MT.Bi;
    aRegistry.add("Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1201, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_CAPACITY, 200000, NBT_CAPACITY_SU, 200000, NBT_OUTPUT_SU, 20 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDouble.dat(aMat));
    aMat = MT.Bronze;
    aRegistry.add("Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1202, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 7.0F, NBT_RESISTANCE, 7.0F, NBT_CAPACITY, 240000, NBT_CAPACITY_SU, 240000, NBT_OUTPUT_SU, 24 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDouble.dat(aMat));
    aMat = MT.Invar;
    aRegistry.add("Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1203, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_CAPACITY, 160000, NBT_CAPACITY_SU, 160000, NBT_OUTPUT_SU, 16 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDouble.dat(aMat));
    aMat = ANY.Steel;
    aRegistry.add("Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1204, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_CAPACITY, 320000, NBT_CAPACITY_SU, 320000, NBT_OUTPUT_SU, 32 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDouble.dat(aMat));
    aMat = MT.Cr;
    aRegistry.add("Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1205, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_CAPACITY, 960000, NBT_CAPACITY_SU, 960000, NBT_OUTPUT_SU, 96 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDouble.dat(aMat));
    aMat = MT.Ti;
    aRegistry.add("Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1206, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_CAPACITY, 1120000, NBT_CAPACITY_SU, 1120000, NBT_OUTPUT_SU, 112 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDouble.dat(aMat));
    aMat = MT.Netherite;
    aRegistry.add("Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1209, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_CAPACITY, 1120000, NBT_CAPACITY_SU, 1120000, NBT_OUTPUT_SU, 112 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDouble.dat(aMat));
    aMat = ANY.W;
    aRegistry.add("Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1207, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_CAPACITY, 1280000, NBT_CAPACITY_SU, 1280000, NBT_OUTPUT_SU, 128 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDouble.dat(aMat));
    aMat = MT.TungstenSteel;
    aRegistry.add("Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1208, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_CAPACITY, 1280000, NBT_CAPACITY_SU, 1280000, NBT_OUTPUT_SU, 128 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDouble.dat(aMat));
    aMat = MT.Pb;
    aRegistry.add("Strong Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1250, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_CAPACITY, 640000, NBT_CAPACITY_SU, 640000, NBT_OUTPUT_SU, 64 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', MD.HBM.mLoaded ? OP.plateDense.mat(aMat, 1) : OP.plateDense.dat(aMat));
    aMat = MT.Bi;
    aRegistry.add("Strong Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1251, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_CAPACITY, 800000, NBT_CAPACITY_SU, 800000, NBT_OUTPUT_SU, 80 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDense.dat(aMat));
    aMat = MT.Bronze;
    aRegistry.add("Strong Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1252, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 7.0F, NBT_RESISTANCE, 7.0F, NBT_CAPACITY, 960000, NBT_CAPACITY_SU, 960000, NBT_OUTPUT_SU, 96 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDense.dat(aMat));
    aMat = MT.Invar;
    aRegistry.add("Strong Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1253, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_CAPACITY, 640000, NBT_CAPACITY_SU, 640000, NBT_OUTPUT_SU, 64 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDense.dat(aMat));
    aMat = ANY.Steel;
    aRegistry.add("Strong Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1254, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_CAPACITY, 1280000, NBT_CAPACITY_SU, 1280000, NBT_OUTPUT_SU, 128 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDense.dat(aMat));
    aMat = MT.Cr;
    aRegistry.add("Strong Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1255, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_CAPACITY, 3840000, NBT_CAPACITY_SU, 3840000, NBT_OUTPUT_SU, 384 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDense.dat(aMat));
    aMat = MT.Ti;
    aRegistry.add("Strong Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1256, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_CAPACITY, 4480000, NBT_CAPACITY_SU, 4480000, NBT_OUTPUT_SU, 448 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDense.dat(aMat));
    aMat = MT.Netherite;
    aRegistry.add("Strong Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1259, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_CAPACITY, 4480000, NBT_CAPACITY_SU, 4480000, NBT_OUTPUT_SU, 448 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDense.dat(aMat));
    aMat = ANY.W;
    aRegistry.add("Strong Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1257, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_CAPACITY, 5120000, NBT_CAPACITY_SU, 5120000, NBT_OUTPUT_SU, 512 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDense.dat(aMat));
    aMat = MT.TungstenSteel;
    aRegistry.add("Strong Steam Boiler Tank (" + aMat.getLocal() + ")", "Steam Boilers", 1258, 1204, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_CAPACITY, 5120000, NBT_CAPACITY_SU, 5120000, NBT_OUTPUT_SU, 512 * STEAM_PER_EU, NBT_ENERGY_ACCEPTED, TD.Energy.HU), " P ", "PwP", "PhP", 'P', OP.plateDense.dat(aMat));
    // Steam Engines
    aClass = MultiTileEntityEngineSteam.class;
    aMat = MT.Pb;
    aRegistry.add("Steam Engine (" + aMat.getLocal() + ")", "Engines", 1300, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_EFFICIENCY, 3000, NBT_CAPACITY, 16000, NBT_OUTPUT, 16 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDouble.dat(aMat), 'I', OP.springSmall.dat(aMat));
    aMat = MT.TinAlloy;
    aRegistry.add("Steam Engine (" + aMat.getLocal() + ")", "Engines", 1301, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_EFFICIENCY, 4000, NBT_CAPACITY, 20000, NBT_OUTPUT, 20 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDouble.dat(aMat), 'I', OP.springSmall.dat(aMat));
    aMat = MT.Bronze;
    aRegistry.add("Steam Engine (" + aMat.getLocal() + ")", "Engines", 1302, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 7.0F, NBT_RESISTANCE, 7.0F, NBT_EFFICIENCY, 5000, NBT_CAPACITY, 24000, NBT_OUTPUT, 24 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDouble.dat(aMat), 'I', OP.springSmall.dat(aMat));
    aMat = MT.Brass;
    aRegistry.add("Steam Engine (" + aMat.getLocal() + ")", "Engines", 1309, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 7.0F, NBT_RESISTANCE, 7.0F, NBT_EFFICIENCY, 5000, NBT_CAPACITY, 24000, NBT_OUTPUT, 24 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDouble.dat(aMat), 'I', OP.springSmall.dat(aMat));
    aMat = MT.Invar;
    aRegistry.add("Steam Engine (" + aMat.getLocal() + ")", "Engines", 1303, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_EFFICIENCY, 6400, NBT_CAPACITY, 16000, NBT_OUTPUT, 16 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDouble.dat(aMat), 'I', OP.springSmall.dat(aMat));
    aMat = MT.IronWood;
    aRegistry.add("Steam Engine (" + aMat.getLocal() + ")", "Engines", 1310, 1304, aClass, aMat.mToolQuality, 16, aWooden, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_EFFICIENCY, 6450, NBT_CAPACITY, 16000, NBT_OUTPUT, 16 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDouble.dat(aMat), 'I', OP.springSmall.dat(aMat));
    aMat = ANY.Steel;
    aRegistry.add("Steam Engine (" + aMat.getLocal() + ")", "Engines", 1304, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_EFFICIENCY, 5000, NBT_CAPACITY, 32000, NBT_OUTPUT, 32 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDouble.dat(aMat), 'I', OP.springSmall.dat(aMat));
    aMat = MT.FierySteel;
    aRegistry.add("Steam Engine (" + aMat.getLocal() + ")", "Engines", 1311, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 7.0F, NBT_RESISTANCE, 7.0F, NBT_EFFICIENCY, 6200, NBT_CAPACITY, 64000, NBT_OUTPUT, 64 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDouble.dat(aMat), 'I', OP.springSmall.dat(aMat));
    aMat = MT.Cr;
    aRegistry.add("Steam Engine (" + aMat.getLocal() + ")", "Engines", 1305, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_EFFICIENCY, 6300, NBT_CAPACITY, 96000, NBT_OUTPUT, 96 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDouble.dat(aMat), 'I', OP.springSmall.dat(aMat));
    aMat = MT.Ti;
    aRegistry.add("Steam Engine (" + aMat.getLocal() + ")", "Engines", 1306, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_EFFICIENCY, 5800, NBT_CAPACITY, 112000, NBT_OUTPUT, 112 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDouble.dat(aMat), 'I', OP.springSmall.dat(aMat));
    aMat = ANY.W;
    aRegistry.add("Steam Engine (" + aMat.getLocal() + ")", "Engines", 1307, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_EFFICIENCY, 5800, NBT_CAPACITY, 128000, NBT_OUTPUT, 128 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDouble.dat(aMat), 'I', OP.springSmall.dat(aMat));
    aMat = MT.TungstenSteel;
    aRegistry.add("Steam Engine (" + aMat.getLocal() + ")", "Engines", 1308, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_EFFICIENCY, 6000, NBT_CAPACITY, 128000, NBT_OUTPUT, 128 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDouble.dat(aMat), 'I', OP.springSmall.dat(aMat));
    aMat = MT.Pb;
    aRegistry.add("Strong Steam Engine (" + aMat.getLocal() + ")", "Engines", 1350, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_EFFICIENCY, 3000, NBT_CAPACITY, 64000, NBT_OUTPUT, 64 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', MD.HBM.mLoaded ? OP.plateDense.mat(aMat, 1) : OP.plateDense.dat(aMat), 'I', OP.spring.dat(aMat));
    aMat = MT.TinAlloy;
    aRegistry.add("Strong Steam Engine (" + aMat.getLocal() + ")", "Engines", 1351, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_EFFICIENCY, 4000, NBT_CAPACITY, 80000, NBT_OUTPUT, 80 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDense.dat(aMat), 'I', OP.spring.dat(aMat));
    aMat = MT.Bronze;
    aRegistry.add("Strong Steam Engine (" + aMat.getLocal() + ")", "Engines", 1352, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 7.0F, NBT_RESISTANCE, 7.0F, NBT_EFFICIENCY, 5000, NBT_CAPACITY, 96000, NBT_OUTPUT, 96 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDense.dat(aMat), 'I', OP.spring.dat(aMat));
    aMat = MT.Brass;
    aRegistry.add("Strong Steam Engine (" + aMat.getLocal() + ")", "Engines", 1359, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 7.0F, NBT_RESISTANCE, 7.0F, NBT_EFFICIENCY, 5000, NBT_CAPACITY, 96000, NBT_OUTPUT, 96 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDense.dat(aMat), 'I', OP.spring.dat(aMat));
    aMat = MT.Invar;
    aRegistry.add("Strong Steam Engine (" + aMat.getLocal() + ")", "Engines", 1353, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_EFFICIENCY, 6400, NBT_CAPACITY, 64000, NBT_OUTPUT, 64 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDense.dat(aMat), 'I', OP.spring.dat(aMat));
    aMat = MT.IronWood;
    aRegistry.add("Strong Steam Engine (" + aMat.getLocal() + ")", "Engines", 1360, 1304, aClass, aMat.mToolQuality, 16, aWooden, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_EFFICIENCY, 6450, NBT_CAPACITY, 64000, NBT_OUTPUT, 64 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDense.dat(aMat), 'I', OP.spring.dat(aMat));
    aMat = ANY.Steel;
    aRegistry.add("Strong Steam Engine (" + aMat.getLocal() + ")", "Engines", 1354, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_EFFICIENCY, 5000, NBT_CAPACITY, 128000, NBT_OUTPUT, 128 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDense.dat(aMat), 'I', OP.spring.dat(aMat));
    aMat = MT.FierySteel;
    aRegistry.add("Strong Steam Engine (" + aMat.getLocal() + ")", "Engines", 1361, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 7.0F, NBT_RESISTANCE, 7.0F, NBT_EFFICIENCY, 6200, NBT_CAPACITY, 256000, NBT_OUTPUT, 256 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDense.dat(aMat), 'I', OP.spring.dat(aMat));
    aMat = MT.Cr;
    aRegistry.add("Strong Steam Engine (" + aMat.getLocal() + ")", "Engines", 1355, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_EFFICIENCY, 6300, NBT_CAPACITY, 384000, NBT_OUTPUT, 384 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDense.dat(aMat), 'I', OP.spring.dat(aMat));
    aMat = MT.Ti;
    aRegistry.add("Strong Steam Engine (" + aMat.getLocal() + ")", "Engines", 1356, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_EFFICIENCY, 5800, NBT_CAPACITY, 448000, NBT_OUTPUT, 448 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDense.dat(aMat), 'I', OP.spring.dat(aMat));
    aMat = ANY.W;
    aRegistry.add("Strong Steam Engine (" + aMat.getLocal() + ")", "Engines", 1357, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_EFFICIENCY, 5800, NBT_CAPACITY, 512000, NBT_OUTPUT, 512 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDense.dat(aMat), 'I', OP.spring.dat(aMat));
    aMat = MT.TungstenSteel;
    aRegistry.add("Strong Steam Engine (" + aMat.getLocal() + ")", "Engines", 1358, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_EFFICIENCY, 6000, NBT_CAPACITY, 512000, NBT_OUTPUT, 512 / STEAM_PER_EU, NBT_ENERGY_EMITTED, TD.Energy.KU), "PhP", "SIS", "PwP", 'S', OP.stick.dat(aMat), 'P', OP.plateDense.dat(aMat), 'I', OP.spring.dat(aMat));
    // Liquid Burning Boxes
    aClass = MultiTileEntityGeneratorLiquid.class;
    // aMat = MT.Pb;                   aRegistry.add("Burning Box (Liquid, "           +aMat.getLocal()+")", "Burning Boxes"                       ,  1400,  1104, aClass, aMat.mToolQuality, 16, aMachine     , UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS,   4.0F, NBT_RESISTANCE,   4.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY,  5000, NBT_OUTPUT,  16, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    // aMat = MT.Bi;                   aRegistry.add("Burning Box (Liquid, "           +aMat.getLocal()+")", "Burning Boxes"                       ,  1401,  1104, aClass, aMat.mToolQuality, 16, aMachine     , UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS,   4.0F, NBT_RESISTANCE,   4.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY,  4500, NBT_OUTPUT,  20, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Bronze;
    aRegistry.add("Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1402, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 7.0F, NBT_RESISTANCE, 7.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 7500, NBT_OUTPUT, 24, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Invar;
    aRegistry.add("Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1403, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 16, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = ANY.Steel;
    aRegistry.add("Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1404, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 7000, NBT_OUTPUT, 32, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Cr;
    aRegistry.add("Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1405, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 8500, NBT_OUTPUT, 112, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Ti;
    aRegistry.add("Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1406, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 8500, NBT_OUTPUT, 96, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Netherite;
    aRegistry.add("Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1410, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 96, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = ANY.W;
    aRegistry.add("Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1407, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 128, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.TungstenSteel;
    aRegistry.add("Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1408, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 128, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1409, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 256, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    // aMat = MT.Pb;                   aRegistry.add("Dense Burning Box (Liquid, "     +aMat.getLocal()+")", "Burning Boxes"                       ,  1450,  1104, aClass, aMat.mToolQuality, 16, aMachine     , UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS,   4.0F, NBT_RESISTANCE,   4.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY,  5000, NBT_OUTPUT,  64, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    // aMat = MT.Bi;                   aRegistry.add("Dense Burning Box (Liquid, "     +aMat.getLocal()+")", "Burning Boxes"                       ,  1451,  1104, aClass, aMat.mToolQuality, 16, aMachine     , UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS,   4.0F, NBT_RESISTANCE,   4.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY,  4500, NBT_OUTPUT,  80, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Bronze;
    aRegistry.add("Dense Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1452, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 7.0F, NBT_RESISTANCE, 7.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 7500, NBT_OUTPUT, 96, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Invar;
    aRegistry.add("Dense Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1453, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 64, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = ANY.Steel;
    aRegistry.add("Dense Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1454, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 7000, NBT_OUTPUT, 128, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Cr;
    aRegistry.add("Dense Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1455, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 8500, NBT_OUTPUT, 448, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Ti;
    aRegistry.add("Dense Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1456, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 8500, NBT_OUTPUT, 384, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Netherite;
    aRegistry.add("Dense Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1460, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 384, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = ANY.W;
    aRegistry.add("Dense Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1457, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 512, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.TungstenSteel;
    aRegistry.add("Dense Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1458, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 512, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Dense Burning Box (Liquid, " + aMat.getLocal() + ")", "Burning Boxes", 1459, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 1024, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "IwI", "BBB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    // Gas Burning Boxes
    aClass = MultiTileEntityGeneratorGas.class;
    // aMat = MT.Pb;                   aRegistry.add("Burning Box (Gas, "              +aMat.getLocal()+")", "Burning Boxes"                       ,  1600,  1104, aClass, aMat.mToolQuality, 16, aMachine     , UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS,   4.0F, NBT_RESISTANCE,   4.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY,  5000, NBT_OUTPUT,  16, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    // aMat = MT.Bi;                   aRegistry.add("Burning Box (Gas, "              +aMat.getLocal()+")", "Burning Boxes"                       ,  1601,  1104, aClass, aMat.mToolQuality, 16, aMachine     , UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS,   4.0F, NBT_RESISTANCE,   4.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY,  4500, NBT_OUTPUT,  20, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Bronze;
    aRegistry.add("Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1602, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 7.0F, NBT_RESISTANCE, 7.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 7500, NBT_OUTPUT, 24, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Invar;
    aRegistry.add("Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1603, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 16, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = ANY.Steel;
    aRegistry.add("Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1604, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 7000, NBT_OUTPUT, 32, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Cr;
    aRegistry.add("Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1605, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 8500, NBT_OUTPUT, 112, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Ti;
    aRegistry.add("Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1606, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 8500, NBT_OUTPUT, 96, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Netherite;
    aRegistry.add("Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1610, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 96, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = ANY.W;
    aRegistry.add("Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1607, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 128, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.TungstenSteel;
    aRegistry.add("Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1608, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 128, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1609, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 256, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plate.dat(aMat), 'I', OP.pipeSmall.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    // aMat = MT.Pb;                   aRegistry.add("Dense Burning Box (Gas, "        +aMat.getLocal()+")", "Burning Boxes"                       ,  1650,  1104, aClass, aMat.mToolQuality, 16, aMachine     , UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS,   4.0F, NBT_RESISTANCE,   4.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY,  5000, NBT_OUTPUT,  64, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    // aMat = MT.Bi;                   aRegistry.add("Dense Burning Box (Gas, "        +aMat.getLocal()+")", "Burning Boxes"                       ,  1651,  1104, aClass, aMat.mToolQuality, 16, aMachine     , UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS,   4.0F, NBT_RESISTANCE,   4.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY,  4500, NBT_OUTPUT,  80, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Bronze;
    aRegistry.add("Dense Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1652, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 7.0F, NBT_RESISTANCE, 7.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 7500, NBT_OUTPUT, 96, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Invar;
    aRegistry.add("Dense Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1653, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 64, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = ANY.Steel;
    aRegistry.add("Dense Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1654, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 7000, NBT_OUTPUT, 128, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Cr;
    aRegistry.add("Dense Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1655, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 8500, NBT_OUTPUT, 448, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Ti;
    aRegistry.add("Dense Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1656, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 8500, NBT_OUTPUT, 384, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Netherite;
    aRegistry.add("Dense Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1660, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 384, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = ANY.W;
    aRegistry.add("Dense Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1657, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 512, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.TungstenSteel;
    aRegistry.add("Dense Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1658, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 512, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Dense Burning Box (Gas, " + aMat.getLocal() + ")", "Burning Boxes", 1659, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.Burn, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 1024, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "BwB", "BIB", 'B', Blocks.brick_block, 'P', OP.plateQuintuple.dat(aMat), 'I', OP.pipeLarge.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    // Fluidized Burning Boxes
    aClass = MultiTileEntityGeneratorFluidBed.class;
    aMat = MT.Pb;
    aRegistry.add("Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9000, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 5000, NBT_OUTPUT, 64, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Bi;
    aRegistry.add("Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9001, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 4500, NBT_OUTPUT, 80, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Bronze;
    aRegistry.add("Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9002, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 7.0F, NBT_RESISTANCE, 7.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 7500, NBT_OUTPUT, 96, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Invar;
    aRegistry.add("Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9003, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 64, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = ANY.Steel;
    aRegistry.add("Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9004, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 7000, NBT_OUTPUT, 128, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Cr;
    aRegistry.add("Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9005, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 8500, NBT_OUTPUT, 448, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Ti;
    aRegistry.add("Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9006, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 8500, NBT_OUTPUT, 384, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Netherite;
    aRegistry.add("Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9010, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 384, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = ANY.W;
    aRegistry.add("Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9007, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 512, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.TungstenSteel;
    aRegistry.add("Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9008, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 512, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9009, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 1024, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plate.dat(aMat), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = MT.Pb;
    aRegistry.add("Dense Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9050, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 5000, NBT_OUTPUT, 256, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Bi;
    aRegistry.add("Dense Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9051, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 4500, NBT_OUTPUT, 320, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Bronze;
    aRegistry.add("Dense Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9052, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 7.0F, NBT_RESISTANCE, 7.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 7500, NBT_OUTPUT, 384, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Invar;
    aRegistry.add("Dense Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9053, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 256, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = ANY.Steel;
    aRegistry.add("Dense Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9054, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 7000, NBT_OUTPUT, 512, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Cr;
    aRegistry.add("Dense Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9055, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 8500, NBT_OUTPUT, 1792, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Ti;
    aRegistry.add("Dense Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9056, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 8500, NBT_OUTPUT, 1536, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Netherite;
    aRegistry.add("Dense Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9060, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 9.0F, NBT_RESISTANCE, 9.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 1536, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = ANY.W;
    aRegistry.add("Dense Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9057, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 2048, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.TungstenSteel;
    aRegistry.add("Dense Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9058, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 2048, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Dense Fluidized Bed Burning Box (" + aMat.getLocal() + ")", "Burning Boxes", 9059, 1104, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.FluidBed, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 4096, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "UwU", "BXB", 'B', Blocks.brick_block, 'U', OP.plateCurved.dat(aMat), 'X', OP.rotor.dat(aMat), 'P', OP.plateQuintuple.dat(aMat), 'C', OP.plateDense.dat(ANY.Cu));
    // Heat Exchangers
    aClass = MultiTileEntityGeneratorHotFluid.class;
    aMat = MT.Invar;
    aRegistry.add("Heat Exchanger (" + aMat.getLocal() + ")", "Heat Exchangers", 9103, 9103, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Hot, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 16, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "OwO", "PMP", 'M', OP.casingMachine.dat(aMat), 'O', OP.pipeSmall.dat(ANY.Cu), 'P', OP.plate.dat(MT.Pb), 'C', OP.plateDouble.dat(ANY.Cu));
    aMat = ANY.W;
    aRegistry.add("Heat Exchanger (" + aMat.getLocal() + ")", "Heat Exchangers", 9107, 9103, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_FUELMAP, FM.Hot, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 128, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "OwO", "PMP", 'M', OP.casingMachine.dat(aMat), 'O', OP.pipeSmall.dat(ANY.Cu), 'P', OP.plate.dat(MT.Pb), 'C', OP.plateDouble.dat(MT.AnnealedCopper));
    aMat = MT.TungstenSteel;
    aRegistry.add("Heat Exchanger (" + aMat.getLocal() + ")", "Heat Exchangers", 9108, 9103, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.Hot, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 128, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "OwO", "PMP", 'M', OP.casingMachine.dat(aMat), 'O', OP.pipeSmall.dat(ANY.Cu), 'P', OP.plate.dat(MT.Pb), 'C', OP.plateDouble.dat(MT.AnnealedCopper));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Heat Exchanger (" + aMat.getLocal() + ")", "Heat Exchangers", 9109, 9103, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.Hot, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 256, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "OwO", "PMP", 'M', OP.casingMachine.dat(aMat), 'O', OP.pipeSmall.dat(ANY.Cu), 'P', OP.plate.dat(MT.Pb), 'C', OP.plateDouble.dat(MT.AnnealedCopper));
    aMat = MT.Invar;
    aRegistry.add("Dense Heat Exchanger (" + aMat.getLocal() + ")", "Heat Exchangers", 9153, 9103, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_FUELMAP, FM.Hot, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 64, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "OwO", "PMP", 'M', OP.casingMachineQuadruple.dat(aMat), 'O', OP.pipeLarge.dat(ANY.Cu), 'P', OP.plateQuadruple.dat(MT.Pb), 'C', OP.plateDense.dat(ANY.Cu));
    aMat = ANY.W;
    aRegistry.add("Dense Heat Exchanger (" + aMat.getLocal() + ")", "Heat Exchangers", 9157, 9103, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_FUELMAP, FM.Hot, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 512, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "OwO", "PMP", 'M', OP.casingMachineQuadruple.dat(aMat), 'O', OP.pipeLarge.dat(ANY.Cu), 'P', OP.plateQuadruple.dat(MT.Pb), 'C', OP.plateDense.dat(MT.AnnealedCopper));
    aMat = MT.TungstenSteel;
    aRegistry.add("Dense Heat Exchanger (" + aMat.getLocal() + ")", "Heat Exchangers", 9158, 9103, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.Hot, NBT_EFFICIENCY, 9000, NBT_OUTPUT, 512, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "OwO", "PMP", 'M', OP.casingMachineQuadruple.dat(aMat), 'O', OP.pipeLarge.dat(ANY.Cu), 'P', OP.plateQuadruple.dat(MT.Pb), 'C', OP.plateDense.dat(MT.AnnealedCopper));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Dense Heat Exchanger (" + aMat.getLocal() + ")", "Heat Exchangers", 9159, 9103, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 12.5F, NBT_RESISTANCE, 12.5F, NBT_FUELMAP, FM.Hot, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 1024, NBT_ENERGY_EMITTED, TD.Energy.HU), "PCP", "OwO", "PMP", 'M', OP.casingMachineQuadruple.dat(aMat), 'O', OP.pipeLarge.dat(ANY.Cu), 'P', OP.plateQuadruple.dat(MT.Pb), 'C', OP.plateDense.dat(MT.AnnealedCopper));
    // Diesel Engines
    aClass = MultiTileEntityMotorLiquid.class;
    aMat = MT.Bronze;
    aRegistry.add("Diesel Engine (" + aMat.getLocal() + ")", "Engines", 9147, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_FUELMAP, FM.Engine, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 16, NBT_ENERGY_EMITTED, TD.Energy.RU), "PLP", "SMS", "GOC", 'M', OP.casingMachineDouble.dat(aMat), 'O', OP.pipeSmall.dat(aMat), 'P', OP.plateCurved.dat(aMat), 'S', OP.stick.dat(aMat), 'G', OP.gearGt.dat(aMat), 'C', OP.gearGtSmall.dat(aMat), 'L', OD.itemLubricant);
    aMat = ANY.Steel;
    aRegistry.add("Diesel Engine (" + aMat.getLocal() + ")", "Engines", 9148, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_FUELMAP, FM.Engine, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 32, NBT_ENERGY_EMITTED, TD.Energy.RU), "PLP", "SMS", "GOC", 'M', OP.casingMachineDouble.dat(aMat), 'O', OP.pipeSmall.dat(aMat), 'P', OP.plateCurved.dat(aMat), 'S', OP.stick.dat(aMat), 'G', OP.gearGt.dat(aMat), 'C', OP.gearGtSmall.dat(aMat), 'L', OD.itemLubricant);
    aMat = MT.Invar;
    aRegistry.add("Diesel Engine (" + aMat.getLocal() + ")", "Engines", 9149, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_FUELMAP, FM.Engine, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 64, NBT_ENERGY_EMITTED, TD.Energy.RU), "PLP", "SMS", "GOC", 'M', OP.casingMachineDouble.dat(aMat), 'O', OP.pipeSmall.dat(aMat), 'P', OP.plateCurved.dat(aMat), 'S', OP.stick.dat(aMat), 'G', OP.gearGt.dat(aMat), 'C', OP.gearGtSmall.dat(aMat), 'L', OD.itemLubricant);
    aMat = MT.Ti;
    aRegistry.add("Diesel Engine (" + aMat.getLocal() + ")", "Engines", 9197, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_FUELMAP, FM.Engine, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 128, NBT_ENERGY_EMITTED, TD.Energy.RU), "PLP", "SMS", "GOC", 'M', OP.casingMachineDouble.dat(aMat), 'O', OP.pipeSmall.dat(aMat), 'P', OP.plateCurved.dat(aMat), 'S', OP.stick.dat(aMat), 'G', OP.gearGt.dat(aMat), 'C', OP.gearGtSmall.dat(aMat), 'L', OD.itemLubricant);
    aMat = MT.TungstenSteel;
    aRegistry.add("Diesel Engine (" + aMat.getLocal() + ")", "Engines", 9198, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_FUELMAP, FM.Engine, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 256, NBT_ENERGY_EMITTED, TD.Energy.RU), "PLP", "SMS", "GOC", 'M', OP.casingMachineDouble.dat(aMat), 'O', OP.pipeSmall.dat(aMat), 'P', OP.plateCurved.dat(aMat), 'S', OP.stick.dat(aMat), 'G', OP.gearGt.dat(aMat), 'C', OP.gearGtSmall.dat(aMat), 'L', OD.itemLubricant);
    aMat = MT.Ir;
    aRegistry.add("Diesel Engine (" + aMat.getLocal() + ")", "Engines", 9199, 1304, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_FUELMAP, FM.Engine, NBT_EFFICIENCY, 10000, NBT_OUTPUT, 512, NBT_ENERGY_EMITTED, TD.Energy.RU), "PLP", "SMS", "GOC", 'M', OP.casingMachineDouble.dat(aMat), 'O', OP.pipeSmall.dat(aMat), 'P', OP.plateCurved.dat(aMat), 'S', OP.stick.dat(aMat), 'G', OP.gearGt.dat(aMat), 'C', OP.gearGtSmall.dat(aMat), 'L', OD.itemLubricant);
    // Reactor Stuffs
    if (ConfigsGT.GREGTECH.get("general", "Enable1x1ReactorCore", F)) {
        aMat = MT.Pb;
        aRegistry.add("Nuclear Reactor Core (1x1)", "Reactors", 9300, 9200, MultiTileEntityReactorCore1x1.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F), "CP", "wM", 'M', OP.casingMachineDense.dat(aMat), 'C', IL.Processor_Crystal_Ruby, 'P', IL.PISTONS[4]);
        ItemsGT.addNEIRedirects(aRegistry.getItem(), FL.Coolant_IC2.display(), FL.Coolant_IC2_Hot.display());
    } else {
        aMat = MT.Pb;
        aRegistry.add("Nuclear Reactor Core (1x1)", "Reactors", 9300, 9200, MultiTileEntityReactorCore1x1.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    }
    aMat = MT.Pb;
    aRegistry.add("Nuclear Reactor Core (2x2)", "Reactors", 9200, 9200, MultiTileEntityReactorCore2x2.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F), "PCP", "CMC", "PCP", 'M', OP.casingMachineDense.dat(aMat), 'C', IL.Processor_Crystal_Ruby, 'P', IL.PISTONS[4]);
    ItemsGT.addNEIRedirects(aRegistry.getItem(), FL.Coolant_IC2.display(), FL.Coolant_IC2_Hot.display());
    aMat = MT.Zr;
    aRegistry.add("Empty Reactor Rod", "Reactors", 9201, 9200, MultiTileEntityReactorRodBase.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    IL.Reactor_Rod_Empty.set(aRegistry.getItem(), new OreDictItemData(MT.Zr, U));
    aMat = MT.Cd_In_Ag_Alloy;
    aRegistry.add("Neutron Absorber Rod", "Reactors", 9202, 9200, MultiTileEntityReactorRodAbsorber.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    OM.data(aRegistry.getItem(), aMat, OP.stick.mAmount, MT.Zr, U);
    aMat = MT.Be;
    aRegistry.add("Neutron Reflector Rod", "Reactors", 9203, 9200, MultiTileEntityReactorRodReflector.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    OM.data(aRegistry.getItem(), aMat, OP.stick.mAmount, MT.Zr, U);
    aMat = MT.Graphite;
    aRegistry.add("Neutron Moderator Rod", "Reactors", 9204, 9200, MultiTileEntityReactorRodModerator.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    OM.data(aRegistry.getItem(), aMat, OP.stick.mAmount, MT.Zr, U);
    aMat = MT.Th;
    aRegistry.add("Thorium-232 Fuel Rod", "Reactors", 9210, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 12000000000L, NBT_NUCLEAR_SELF, 2, NBT_NUCLEAR_OTHER, 2, NBT_NUCLEAR_DIV, 32, NBT_NUCLEAR_MAX, 128, NBT_VALUE, 9310));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.Cyanite;
    aRegistry.add("Cyanite Fuel Rod", "Reactors", 9219, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 12000000000L, NBT_NUCLEAR_SELF, 2, NBT_NUCLEAR_OTHER, 2, NBT_NUCLEAR_DIV, 32, NBT_NUCLEAR_MAX, 64, NBT_VALUE, 9319));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.U_238;
    aRegistry.add("Uranium-238 Fuel Rod", "Reactors", 9220, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 6000000000L, NBT_NUCLEAR_SELF, 4, NBT_NUCLEAR_OTHER, 4, NBT_NUCLEAR_DIV, 16, NBT_NUCLEAR_MAX, 512, NBT_VALUE, 9320));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.U_235;
    aRegistry.add("Uranium-235 Fuel Rod", "Reactors", 9221, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 1200000000L, NBT_NUCLEAR_SELF, 32, NBT_NUCLEAR_OTHER, 32, NBT_NUCLEAR_DIV, 4, NBT_NUCLEAR_MAX, 2048, NBT_VALUE, 9321));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.U_233;
    aRegistry.add("Uranium-233 Fuel Rod", "Reactors", 9222, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 6000000000L, NBT_NUCLEAR_SELF, 32, NBT_NUCLEAR_OTHER, 32, NBT_NUCLEAR_DIV, 4, NBT_NUCLEAR_MAX, 2048, NBT_VALUE, 9322));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.Yellorium;
    aRegistry.add("Yellorium Fuel Rod", "Reactors", 9229, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 6000000000L, NBT_NUCLEAR_SELF, 4, NBT_NUCLEAR_OTHER, 4, NBT_NUCLEAR_DIV, 16, NBT_NUCLEAR_MAX, 256, NBT_VALUE, 9329));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.Pu;
    aRegistry.add("Plutonium-244 Fuel Rod", "Reactors", 9230, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 1200000000L, NBT_NUCLEAR_SELF, 64, NBT_NUCLEAR_OTHER, 64, NBT_NUCLEAR_DIV, 4, NBT_NUCLEAR_MAX, 2048, NBT_VALUE, 9330));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.Pu_241;
    aRegistry.add("Plutonium-241 Fuel Rod", "Reactors", 9231, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 1200000000L, NBT_NUCLEAR_SELF, 128, NBT_NUCLEAR_OTHER, 128, NBT_NUCLEAR_DIV, 3, NBT_NUCLEAR_MAX, 3072, NBT_VALUE, 9331));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.Pu_243;
    aRegistry.add("Plutonium-243 Fuel Rod", "Reactors", 9232, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 1200000000L, NBT_NUCLEAR_SELF, 128, NBT_NUCLEAR_OTHER, 128, NBT_NUCLEAR_DIV, 3, NBT_NUCLEAR_MAX, 4096, NBT_VALUE, 9332));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.Pu_239;
    aRegistry.add("Plutonium-239 Fuel Rod", "Reactors", 9233, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 2400000000L, NBT_NUCLEAR_SELF, 128, NBT_NUCLEAR_OTHER, 128, NBT_NUCLEAR_DIV, 3, NBT_NUCLEAR_MAX, 4096, NBT_VALUE, 9333));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.Blutonium;
    aRegistry.add("Blutonium Fuel Rod", "Reactors", 9239, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 1200000000L, NBT_NUCLEAR_SELF, 64, NBT_NUCLEAR_OTHER, 64, NBT_NUCLEAR_DIV, 4, NBT_NUCLEAR_MAX, 1024, NBT_VALUE, 9339));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.Am;
    aRegistry.add("Americium-245 Fuel Rod", "Reactors", 9240, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 1200000000L, NBT_NUCLEAR_SELF, 64, NBT_NUCLEAR_OTHER, 64, NBT_NUCLEAR_DIV, 4, NBT_NUCLEAR_MAX, 4096, NBT_VALUE, 9340));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.Am_241;
    aRegistry.add("Americium-241 Fuel Rod", "Reactors", 9241, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 1200000000L, NBT_NUCLEAR_SELF, 128, NBT_NUCLEAR_OTHER, 128, NBT_NUCLEAR_DIV, 3, NBT_NUCLEAR_MAX, 4096, NBT_VALUE, 9341));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.Ludicrite;
    aRegistry.add("Ludicrite Fuel Rod", "Reactors", 9249, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 1200000000L, NBT_NUCLEAR_SELF, 128, NBT_NUCLEAR_OTHER, 128, NBT_NUCLEAR_DIV, 3, NBT_NUCLEAR_MAX, 3072, NBT_VALUE, 9349));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.Co_60;
    aRegistry.add("Cobalt-60 Fuel Rod", "Reactors", 9250, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 6000000000L, NBT_NUCLEAR_SELF, 8, NBT_NUCLEAR_OTHER, 0, NBT_NUCLEAR_DIV, 16, NBT_NUCLEAR_MAX, 256, NBT_VALUE, 9350));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.Nq_528;
    aRegistry.add("Enriched Naquadah Fuel Rod", "Reactors", 9260, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 12000000000L, NBT_NUCLEAR_SELF, 128, NBT_NUCLEAR_OTHER, 128, NBT_NUCLEAR_DIV, 4, NBT_NUCLEAR_MAX, 8192, NBT_VALUE, 9360));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.Nq_522;
    aRegistry.add("Naquadria Fuel Rod", "Reactors", 9261, 9200, MultiTileEntityReactorRodNuclear.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 12000000000L, NBT_NUCLEAR_SELF, 512, NBT_NUCLEAR_OTHER, 512, NBT_NUCLEAR_DIV, 3, NBT_NUCLEAR_MAX, 16384, NBT_VALUE, 9361));
    RM.Canner.addRecipe2(F, 16, 16, OP.stick.mat(aMat, 1), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.Th;
    aRegistry.add("Depleted Thorium-232 Fuel Rod", "Reactors", 9310, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.U_238, 6));
    aMat = MT.Cyanite;
    aRegistry.add("Depleted Cyanite Fuel Rod", "Reactors", 9319, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.Blutonium, 6));
    aMat = MT.U_238;
    aRegistry.add("Depleted Uranium-238 Fuel Rod", "Reactors", 9320, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.U_235, 6));
    aMat = MT.U_235;
    aRegistry.add("Depleted Uranium-235 Fuel Rod", "Reactors", 9321, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.Pu, 6));
    aMat = MT.U_233;
    aRegistry.add("Depleted Uranium-233 Fuel Rod", "Reactors", 9322, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.Pu_243, 6));
    aMat = MT.Yellorium;
    aRegistry.add("Depleted Yellorium Fuel Rod", "Reactors", 9329, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.Cyanite, 6));
    aMat = MT.Pu;
    aRegistry.add("Depleted Plutonium-244 Fuel Rod", "Reactors", 9330, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.Pu_241, 6));
    aMat = MT.Pu_241;
    aRegistry.add("Depleted Plutonium-241 Fuel Rod", "Reactors", 9331, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.Pu_243, 6));
    aMat = MT.Pu_243;
    aRegistry.add("Depleted Plutonium-243 Fuel Rod", "Reactors", 9332, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.Am, 6));
    aMat = MT.Pu_239;
    aRegistry.add("Depleted Plutonium-239 Fuel Rod", "Reactors", 9333, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.Am_241, 6));
    aMat = MT.Blutonium;
    aRegistry.add("Depleted Blutonium Fuel Rod", "Reactors", 9339, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.Ludicrite, 6));
    aMat = MT.Am;
    aRegistry.add("Depleted Americium-245 Fuel Rod", "Reactors", 9340, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.Am_241, 6));
    aMat = MT.Am_241;
    aRegistry.add("Depleted Americium-241 Fuel Rod", "Reactors", 9341, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.Nq_528, 6));
    aMat = MT.Ludicrite;
    aRegistry.add("Depleted Ludicrite Fuel Rod", "Reactors", 9349, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.Yellorium, 6));
    aMat = MT.Co_60;
    aRegistry.add("Depleted Cobalt-60 Fuel Rod", "Reactors", 9350, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.Th, 6));
    aMat = MT.Nq_528;
    aRegistry.add("Depleted Enriched Naquadah Fuel Rod", "Reactors", 9360, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.Nq_522, 6));
    aMat = MT.Nq_522;
    aRegistry.add("Depleted Naquadria Fuel Rod", "Reactors", 9361, 9200, MultiTileEntityReactorRodDepleted.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 1), OP.dustDiv72.mat(MT.Co_60, 6));
    aMat = MT.Th;
    aRegistry.add("Thorium-232 Breeder Rod", "Reactors", 9410, 9200, MultiTileEntityReactorRodBreeder.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 64000000L, NBT_NUCLEAR_LOSS, 1000, NBT_VALUE, 9411));
    RM.Canner.addRecipe2(F, 16, 16, OP.bolt.mat(aMat, 4), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.U_238;
    aRegistry.add("Uranium-238 Breeder Rod", "Reactors", 9420, 9200, MultiTileEntityReactorRodBreeder.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 256000000L, NBT_NUCLEAR_LOSS, 2500, NBT_VALUE, 9421));
    RM.Canner.addRecipe2(F, 16, 16, OP.bolt.mat(aMat, 4), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.Li;
    aRegistry.add("Lithium Breeder Rod", "Reactors", 9430, 9200, MultiTileEntityReactorRodBreeder.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_MAXDURABILITY, 640000L, NBT_NUCLEAR_LOSS, 250, NBT_VALUE, 9431));
    RM.Canner.addRecipe2(F, 16, 16, OP.bolt.mat(aMat, 4), IL.Reactor_Rod_Empty.get(1), aRegistry.getItem());
    aMat = MT.U_233;
    aRegistry.add("Uranium-233 Enriched Rod", "Reactors", 9411, 9200, MultiTileEntityReactorRodProduct.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_VALUE, 9410));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 4), OP.dustDiv72.mat(MT.Th, 4));
    aMat = MT.Pu_239;
    aRegistry.add("Plutonium-239 Enriched Rod", "Reactors", 9421, 9200, MultiTileEntityReactorRodProduct.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_VALUE, 9420));
    RM.Centrifuge.addRecipe1(F, 64, 256, aRegistry.getItem(), ZL_FS, ZL_FS, OP.scrapGt.mat(MT.Zr, 9), OP.dustTiny.mat(aMat, 4), OP.dustDiv72.mat(MT.U_238, 4));
    aMat = MT.T;
    aRegistry.add("Tritium Enriched Rod", "Reactors", 9431, 9200, MultiTileEntityReactorRodProduct.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 10.0F, NBT_RESISTANCE, 10.0F, NBT_VALUE, 9430));
    RM.Canner.addRecipe1(F, 16, 16, aRegistry.getItem(), new FluidStack[] {}, FL.amount(aMat.mGas, 500L), IL.Reactor_Rod_Empty.get(1));
    // Steam Turbines
    aClass = MultiTileEntityTurbineSteam.class;
    aMat = MT.DATA.Kinetic_T[1];
    aRegistry.add("Steam Turbine (" + MT.Bronze.getLocal() + ")", "Turbines", 1512, 1538, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_INPUT, 24 * STEAM_PER_EU, NBT_OUTPUT, 16, NBT_WASTE_ENERGY, T, NBT_ENERGY_ACCEPTED, TD.Energy.STEAM, NBT_ENERGY_EMITTED, TD.Energy.RU), "TwT", "GSG", "TMT", 'S', OP.stickLong.dat(aMat), 'M', OP.casingMachineDouble.dat(aMat), 'G', OP.gearGt.dat(aMat), 'T', OP.rotor.dat(MT.Bronze));
    aMat = MT.DATA.Kinetic_T[1];
    aRegistry.add("Steam Turbine (" + MT.Brass.getLocal() + ")", "Turbines", 1515, 1538, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_INPUT, 36 * STEAM_PER_EU, NBT_OUTPUT, 24, NBT_WASTE_ENERGY, T, NBT_ENERGY_ACCEPTED, TD.Energy.STEAM, NBT_ENERGY_EMITTED, TD.Energy.RU), "TwT", "GSG", "TMT", 'S', OP.stickLong.dat(aMat), 'M', OP.casingMachineDouble.dat(aMat), 'G', OP.gearGt.dat(aMat), 'T', OP.rotor.dat(MT.Brass));
    aMat = MT.DATA.Kinetic_T[1];
    aRegistry.add("Steam Turbine (" + MT.Invar.getLocal() + ")", "Turbines", 1518, 1538, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_INPUT, 48 * STEAM_PER_EU, NBT_OUTPUT, 32, NBT_WASTE_ENERGY, T, NBT_ENERGY_ACCEPTED, TD.Energy.STEAM, NBT_ENERGY_EMITTED, TD.Energy.RU), "TwT", "GSG", "TMT", 'S', OP.stickLong.dat(aMat), 'M', OP.casingMachineDouble.dat(aMat), 'G', OP.gearGt.dat(aMat), 'T', OP.rotor.dat(MT.Invar));
    aMat = MT.DATA.Kinetic_T[2];
    aRegistry.add("Steam Turbine (" + ANY.Steel.getLocal() + ")", "Turbines", 1522, 1538, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_INPUT, 96 * STEAM_PER_EU, NBT_OUTPUT, 64, NBT_WASTE_ENERGY, T, NBT_ENERGY_ACCEPTED, TD.Energy.STEAM, NBT_ENERGY_EMITTED, TD.Energy.RU), "TwT", "GSG", "TMT", 'S', OP.stickLong.dat(aMat), 'M', OP.casingMachineDouble.dat(aMat), 'G', OP.gearGt.dat(aMat), 'T', OP.rotor.dat(ANY.Steel));
    aMat = MT.DATA.Kinetic_T[2];
    aRegistry.add("Steam Turbine (" + MT.Cr.getLocal() + ")", "Turbines", 1525, 1538, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_INPUT, 144 * STEAM_PER_EU, NBT_OUTPUT, 96, NBT_WASTE_ENERGY, T, NBT_ENERGY_ACCEPTED, TD.Energy.STEAM, NBT_ENERGY_EMITTED, TD.Energy.RU), "TwT", "GSG", "TMT", 'S', OP.stickLong.dat(aMat), 'M', OP.casingMachineDouble.dat(aMat), 'G', OP.gearGt.dat(aMat), 'T', OP.rotor.dat(MT.Cr));
    aMat = MT.DATA.Kinetic_T[2];
    aRegistry.add("Steam Turbine (" + MT.IronWood.getLocal() + ")", "Turbines", 1527, 1538, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_INPUT, 192 * STEAM_PER_EU, NBT_OUTPUT, 128, NBT_WASTE_ENERGY, T, NBT_ENERGY_ACCEPTED, TD.Energy.STEAM, NBT_ENERGY_EMITTED, TD.Energy.RU), "TwT", "GSG", "TMT", 'S', OP.stickLong.dat(aMat), 'M', OP.casingMachineDouble.dat(aMat), 'G', OP.gearGt.dat(aMat), 'T', OP.rotor.dat(MT.IronWood));
    aMat = MT.DATA.Kinetic_T[2];
    aRegistry.add("Steam Turbine (" + MT.Steeleaf.getLocal() + ")", "Turbines", 1528, 1538, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_INPUT, 192 * STEAM_PER_EU, NBT_OUTPUT, 128, NBT_WASTE_ENERGY, T, NBT_ENERGY_ACCEPTED, TD.Energy.STEAM, NBT_ENERGY_EMITTED, TD.Energy.RU), "TwT", "GSG", "TMT", 'S', OP.stickLong.dat(aMat), 'M', OP.casingMachineDouble.dat(aMat), 'G', OP.gearGt.dat(aMat), 'T', OP.rotor.dat(MT.Steeleaf));
    aMat = MT.DATA.Kinetic_T[2];
    aRegistry.add("Steam Turbine (" + MT.Thaumium.getLocal() + ")", "Turbines", 1529, 1538, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_INPUT, 192 * STEAM_PER_EU, NBT_OUTPUT, 128, NBT_WASTE_ENERGY, T, NBT_ENERGY_ACCEPTED, TD.Energy.STEAM, NBT_ENERGY_EMITTED, TD.Energy.RU), "TwT", "GSG", "TMT", 'S', OP.stickLong.dat(aMat), 'M', OP.casingMachineDouble.dat(aMat), 'G', OP.gearGt.dat(aMat), 'T', OP.rotor.dat(MT.Thaumium));
    aMat = MT.DATA.Kinetic_T[3];
    aRegistry.add("Steam Turbine (" + MT.Ti.getLocal() + ")", "Turbines", 1530, 1538, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_INPUT, 384 * STEAM_PER_EU, NBT_OUTPUT, 256, NBT_WASTE_ENERGY, T, NBT_ENERGY_ACCEPTED, TD.Energy.STEAM, NBT_ENERGY_EMITTED, TD.Energy.RU), "TwT", "GSG", "TMT", 'S', OP.stickLong.dat(aMat), 'M', OP.casingMachineDouble.dat(aMat), 'G', OP.gearGt.dat(aMat), 'T', OP.rotor.dat(MT.Ti));
    aMat = MT.DATA.Kinetic_T[3];
    aRegistry.add("Steam Turbine (" + MT.FierySteel.getLocal() + ")", "Turbines", 1531, 1538, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_INPUT, 384 * STEAM_PER_EU, NBT_OUTPUT, 256, NBT_WASTE_ENERGY, T, NBT_ENERGY_ACCEPTED, TD.Energy.STEAM, NBT_ENERGY_EMITTED, TD.Energy.RU), "TwT", "GSG", "TMT", 'S', OP.stickLong.dat(aMat), 'M', OP.casingMachineDouble.dat(aMat), 'G', OP.gearGt.dat(aMat), 'T', OP.rotor.dat(MT.FierySteel));
    aMat = MT.DATA.Kinetic_T[3];
    aRegistry.add("Steam Turbine (" + MT.Al.getLocal() + ")", "Turbines", 1535, 1538, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_INPUT, 576 * STEAM_PER_EU, NBT_OUTPUT, 384, NBT_WASTE_ENERGY, T, NBT_ENERGY_ACCEPTED, TD.Energy.STEAM, NBT_ENERGY_EMITTED, TD.Energy.RU), "TwT", "GSG", "TMT", 'S', OP.stickLong.dat(aMat), 'M', OP.casingMachineDouble.dat(aMat), 'G', OP.gearGt.dat(aMat), 'T', OP.rotor.dat(MT.Al));
    aMat = MT.DATA.Kinetic_T[3];
    aRegistry.add("Steam Turbine (" + MT.Magnalium.getLocal() + ")", "Turbines", 1538, 1538, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_INPUT, 768 * STEAM_PER_EU, NBT_OUTPUT, 512, NBT_WASTE_ENERGY, T, NBT_ENERGY_ACCEPTED, TD.Energy.STEAM, NBT_ENERGY_EMITTED, TD.Energy.RU), "TwT", "GSG", "TMT", 'S', OP.stickLong.dat(aMat), 'M', OP.casingMachineDouble.dat(aMat), 'G', OP.gearGt.dat(aMat), 'T', OP.rotor.dat(MT.Magnalium));
    aMat = MT.DATA.Kinetic_T[4];
    aRegistry.add("Steam Turbine (" + MT.VoidMetal.getLocal() + ")", "Turbines", 1540, 1538, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_INPUT, 1152 * STEAM_PER_EU, NBT_OUTPUT, 768, NBT_WASTE_ENERGY, T, NBT_ENERGY_ACCEPTED, TD.Energy.STEAM, NBT_ENERGY_EMITTED, TD.Energy.RU), "TwT", "GSG", "TMT", 'S', OP.stickLong.dat(aMat), 'M', OP.casingMachineDouble.dat(aMat), 'G', OP.gearGt.dat(aMat), 'T', OP.rotor.dat(MT.VoidMetal));
    aMat = MT.DATA.Kinetic_T[4];
    aRegistry.add("Steam Turbine (" + MT.Trinitanium.getLocal() + ")", "Turbines", 1545, 1538, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_INPUT, 1536 * STEAM_PER_EU, NBT_OUTPUT, 1024, NBT_WASTE_ENERGY, T, NBT_ENERGY_ACCEPTED, TD.Energy.STEAM, NBT_ENERGY_EMITTED, TD.Energy.RU), "TwT", "GSG", "TMT", 'S', OP.stickLong.dat(aMat), 'M', OP.casingMachineDouble.dat(aMat), 'G', OP.gearGt.dat(aMat), 'T', OP.rotor.dat(MT.Trinitanium));
    aMat = MT.DATA.Kinetic_T[4];
    aRegistry.add("Steam Turbine (" + MT.Graphene.getLocal() + ")", "Turbines", 1548, 1538, aClass, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 4.0F, NBT_RESISTANCE, 4.0F, NBT_INPUT, 3072 * STEAM_PER_EU, NBT_OUTPUT, 2048, NBT_WASTE_ENERGY, T, NBT_ENERGY_ACCEPTED, TD.Energy.STEAM, NBT_ENERGY_EMITTED, TD.Energy.RU), "TwT", "GSG", "TMT", 'S', OP.stickLong.dat(aMat), 'M', OP.casingMachineDouble.dat(aMat), 'G', OP.gearGt.dat(aMat), 'T', OP.rotor.dat(MT.Graphene));
}
Also used : OreDictItemData(gregapi.oredict.OreDictItemData)

Example 62 with OreDictItemData

use of gregapi.oredict.OreDictItemData in project gregtech6 by GregTech6.

the class Loader_MultiTileEntities method misc.

private static void misc(MultiTileEntityRegistry aRegistry, MultiTileEntityBlock aMetal, MultiTileEntityBlock aMetalChips, MultiTileEntityBlock aMetalWires, MultiTileEntityBlock aMachine, MultiTileEntityBlock aWooden, MultiTileEntityBlock aBush, MultiTileEntityBlock aStone, MultiTileEntityBlock aWool, MultiTileEntityBlock aTNT, MultiTileEntityBlock aHive, MultiTileEntityBlock aUtilMetal, MultiTileEntityBlock aUtilStone, MultiTileEntityBlock aUtilWood, MultiTileEntityBlock aUtilWool, OreDictMaterial aMat, Class<? extends TileEntity> aClass) {
    aRegistry.add("Miniature Nether Portal", "Portals", 32766, 32766, MultiTileEntityMiniPortalNether.class, 3, 16, aStone, null, "SSS", "SsS", "SSS", 'S', OP.stickLong.dat(MT.Obsidian));
    aRegistry.add("Miniature End Portal", "Portals", 32000, 32766, MultiTileEntityMiniPortalEnd.class, 1, 16, aStone, null, "ESE", "SGS", "ESE", 'S', OP.stickLong.dat(MT.Endstone), 'E', OP.gem.dat(MT.EnderEye), 'G', Items.ghast_tear);
    aRegistry.add("Miniature Twilight Portal", "Portals", 32001, 32766, MultiTileEntityMiniPortalTwilight.class, 0, 16, aBush, UT.NBT.make(NBT_HIDDEN, !MD.TF.mLoaded), MD.TF.mLoaded ? new Object[] { "FGF", "GWG", "FGF", 'G', Blocks.grass, 'W', OD.container1000water, 'F', OD.flower } : ZL);
    aRegistry.add("Miniature Erebus Portal", "Portals", 32002, 32766, MultiTileEntityMiniPortalErebus.class, 0, 16, aStone, UT.NBT.make(NBT_HIDDEN, !MD.ERE.mLoaded), MD.ERE.mLoaded ? new Object[] { "SLS", "LKL", "SLS", 'S', OP.stickLong.dat(MT.STONES.Umber), 'L', OP.treeLeaves, 'K', ST.make(MD.ERE, "gaeanKeystone", 1, 0) } : ZL);
    aRegistry.add("Miniature Atum Portal", "Portals", 32005, 32766, MultiTileEntityMiniPortalAtum.class, 0, 16, aStone, UT.NBT.make(NBT_HIDDEN, !MD.ATUM.mLoaded), MD.ATUM.mLoaded ? new Object[] { "SSS", "SsS", "SSS", 'S', OP.stickLong.dat(MT.STONES.Limestone) } : ZL);
    aRegistry.add("Miniature Betweenlands Portal", "Portals", 32006, 32766, MultiTileEntityMiniPortalBetweenlands.class, 0, 16, aWooden, UT.NBT.make(NBT_HIDDEN, !MD.BTL.mLoaded), MD.BTL.mLoaded ? new Object[] { "PsP", "PSP", "PGP", 'P', ST.make(MD.BTL, "portalBark", 1, 0), 'S', OP.treeSapling, 'G', Blocks.grass } : ZL);
    aRegistry.add("Miniature Aether Portal", "Portals", 32015, 32766, MultiTileEntityMiniPortalAether.class, 0, 16, aStone, UT.NBT.make(NBT_HIDDEN, !MD.AETHER.mLoaded), MD.AETHER.mLoaded ? new Object[] { "SSS", "SsS", "SSS", 'S', OP.stickLong.dat(ANY.Glowstone) } : ZL);
    aRegistry.add("Miniature Enviromine Portal", "Portals", 32051, 32766, MultiTileEntityMiniPortalEnviromine.class, 0, 16, aStone, UT.NBT.make(NBT_HIDDEN, !MD.ENVM.mLoaded), MD.ENVM.mLoaded ? new Object[] { "SSS", "SsS", "SSS", 'S', OP.stickLong.dat(MT.STONES.GraniteBlack) } : ZL);
    aRegistry.add("Miniature Mining Dimension Portal", "Portals", 32096, 32766, MultiTileEntityMiniPortalAroma.class, 0, 16, aStone, UT.NBT.make(NBT_HIDDEN, !MD.A97_MINING.mLoaded), MD.A97_MINING.mLoaded ? new Object[] { "BBB", "ByB", "BBB", 'B', ST.make(MD.A97_MINING, "portalFrame", 1, 0) } : ZL);
    aRegistry.add("Miniature Caveworld Dimension Portal", "Portals", 32097, 32766, MultiTileEntityMiniPortalCW2Caveworld.class, 0, 16, aStone, UT.NBT.make(NBT_HIDDEN, !MD.CW2.mLoaded), MD.CW2.mLoaded ? new Object[] { "BBB", "BXB", "BBB", 'B', OP.stoneMossy, 'X', OD.enderChest } : ZL);
    aRegistry.add("Miniature Cavern Dimension Portal", "Portals", 32098, 32766, MultiTileEntityMiniPortalCW2Cavern.class, 0, 16, aStone, UT.NBT.make(NBT_HIDDEN, !MD.CW2.mLoaded), MD.CW2.mLoaded ? new Object[] { "BBB", "BXB", "BBB", 'B', OP.stoneMossy, 'X', OP.gem.dat(MT.Emerald) } : ZL);
    aRegistry.add("Miniature Aqua Cavern Dimension Portal", "Portals", 32099, 32766, MultiTileEntityMiniPortalCW2AquaCavern.class, 0, 16, aStone, UT.NBT.make(NBT_HIDDEN, !MD.CW2.mLoaded), MD.CW2.mLoaded ? new Object[] { "BBB", "BXB", "BBB", 'B', OP.stoneMossy, 'X', OP.gem.dat(MT.Aquamarine) } : ZL);
    aRegistry.add("Miniature Caveland Dimension Portal", "Portals", 32100, 32766, MultiTileEntityMiniPortalCW2Caveland.class, 0, 16, aStone, UT.NBT.make(NBT_HIDDEN, !MD.CW2.mLoaded), MD.CW2.mLoaded ? new Object[] { "BBB", "BXB", "BBB", 'B', OP.stoneMossy, 'X', OP.gem.dat(MT.UNUSED.Cavenium) } : ZL);
    aRegistry.add("Miniature Cavenia Dimension Portal", "Portals", 32101, 32766, MultiTileEntityMiniPortalCW2Cavenia.class, 0, 16, aStone, UT.NBT.make(NBT_HIDDEN, !MD.CW2.mLoaded), MD.CW2.mLoaded ? new Object[] { "BBB", "BXB", "BBB", 'B', OP.stoneMossy, 'X', OP.gem.dat(MT.UNUSED.CaveniumRefined) } : ZL);
    aRegistry.add("Miniature Alfheim Portal", "Portals", 32052, 32766, MultiTileEntityMiniPortalAlfheim.class, 0, 16, aWooden, UT.NBT.make(NBT_HIDDEN, !MD.ALF.mLoaded), MD.ALF.mLoaded ? new Object[] { "SSS", "SXS", "SSS", 'S', OP.stickLong.dat(MT.Dreamwood), 'X', ST.make(MD.ALF, "AlfheimPortal", 1, 0) } : ZL);
    aRegistry.add("Miniature Tropics Portal", "Portals", 32053, 32766, MultiTileEntityMiniPortalTropics.class, 0, 16, aWooden, UT.NBT.make(NBT_HIDDEN, !MD.TROPIC.mLoaded), MD.TROPIC.mLoaded ? new Object[] { "SSS", "SXS", "SSS", 'S', OD.bamboo, 'X', ST.item(MD.TROPIC, "bucketTropicsWater") } : ZL);
    aRegistry.add("Miniature Candy Portal", "Portals", 32054, 32766, MultiTileEntityMiniPortalCandyCraft.class, 0, 16, aStone, UT.NBT.make(NBT_HIDDEN, !MD.CANDY.mLoaded), MD.CANDY.mLoaded ? new Object[] { "SSS", "SsS", "SSS", 'S', ST.item(MD.CANDY, "I12") } : ZL);
    aRegistry.add("Miniature Deep Dark Portal", "Portals", 32003, 32766, MultiTileEntityMiniPortalDeepDark.class, 2, 16, aStone, UT.NBT.make(NBT_HIDDEN, !(MD.ExU.mLoaded || MD.ExS.mLoaded)), MD.ExS.mLoaded ? new Object[] { "SSS", "SXS", "SSS", 'S', OP.stickLong.dat(MT.Obsidian), 'X', ST.make(MD.ExS, "deepPortal", 1, 0) } : MD.ExU.mLoaded ? new Object[] { "SSS", "SXS", "SSS", 'S', OP.stickLong.dat(MT.Obsidian), 'X', ST.make(MD.ExU, "dark_portal", 1, 0) } : ZL);
    aRegistry.add("Miniature Last Millenium Portal", "Portals", 32004, 32766, MultiTileEntityMiniPortalEndOfTime.class, 2, 16, aStone, UT.NBT.make(NBT_HIDDEN, !(MD.ExU.mLoaded || MD.ExS.mLoaded)), MD.ExS.mLoaded ? new Object[] { "SSS", "SXS", "SSS", 'S', OP.stickLong.dat(MT.Obsidian), 'X', ST.make(MD.ExS, "deepPortal", 1, 2) } : MD.ExU.mLoaded ? new Object[] { "SSS", "SXS", "SSS", 'S', OP.stickLong.dat(MT.Obsidian), 'X', ST.make(MD.ExU, "dark_portal", 1, 2) } : ZL);
    aRegistry.add("C-Foam Block", "C-Foam", 32765, 32765, MultiTileEntityCFoam.class, 1, 64, aStone, null);
    aRegistry.add("Supporter Certificate", "Untyped", 32764, 32764, MultiTileEntityCertificate.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 0.3F));
    aRegistry.add("Fluid Spring", "Untyped", 32763, 32764, MultiTileEntityFluidSpring.class, 0, 64, aStone, null);
    aRegistry.add("Rubber Resin Hole", "Untyped", 32762, 32764, MultiTileEntityResinHoleRubber.class, 0, 1, aWooden, null);
    aRegistry.add("Tapped Maple", "Untyped", 32761, 32764, MultiTileEntitySapHoleMaple.class, 0, 1, aWooden, null);
    aRegistry.add("Tapped Rainbowood", "Untyped", 32760, 32764, MultiTileEntitySapHoleRainbowood.class, 0, 1, aWooden, null);
    aRegistry.add("Berry Bush", "Untyped", 32759, 32764, MultiTileEntityBush.class, 0, 64, aBush, UT.NBT.make(NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 0.3F));
    aRegistry.add("Greg o'Lantern", "Untyped", 32758, 32764, MultiTileEntityGregOLantern.class, 0, 64, aUtilWood, null, "Pk", "T ", 'P', Blocks.pumpkin, 'T', OD.blockTorch);
    aRegistry.add("Sandwich", "Untyped", 32105, 32764, MultiTileEntitySandwich.class, 0, 64, aUtilWool, null);
    aRegistry.add("Rock", "Untyped", 32757, 32764, MultiTileEntityRock.class, 0, 64, aUtilStone, null);
    aRegistry.add("Rock", "Untyped", 32074, 32764, MultiTileEntityRockPlaced.class, 0, 64, aUtilStone, null);
    aRegistry.add("Stick", "Untyped", 32756, 32764, MultiTileEntityStick.class, 0, 64, aUtilWood, null);
    aRegistry.add("Stick", "Untyped", 32073, 32764, MultiTileEntityStickPlaced.class, 0, 64, aUtilWood, null);
    aRegistry.add("Ingots", "Untyped", 32084, 32764, MultiTileEntityIngot.class, 0, 64, aUtilMetal, null);
    aRegistry.add("Plates", "Untyped", 32085, 32764, MultiTileEntityPlate.class, 0, 64, aUtilMetal, null);
    aRegistry.add("Gem Plates", "Untyped", 32086, 32764, MultiTileEntityPlateGem.class, 0, 64, aUtilStone, null);
    aRegistry.add("Scrap", "Untyped", 32103, 32764, MultiTileEntityScrap.class, 0, 64, aUtilMetal, null);
    aRegistry.add("Bumble Hive", "Untyped", 32755, 32764, MultiTileEntityBumbleHive.class, 0, 64, aHive, null);
    for (int i = 0; i < 16; i++) {
        ItemStack tPanel = aRegistry.add("Concrete Panel", "Panels", i + 32452, 32500, MultiTileEntityPanelConcrete.class, 0, 16, aStone, UT.NBT.make(NBT_COLOR, i));
        CR.shaped(ST.amount(6, tPanel), CR.DEF_REV_NCC_MIR, "TsT", "TPT", "TdT", 'P', ST.make(BlocksGT.Concrete, 1, i), 'T', OP.screw.dat(ANY.Iron));
        CoverRegistry.put(tPanel, new CoverTextureSimple(BlockTextureDefault.get(Textures.BlockIcons.CONCRETE, DYES[i]), SFX.MC_DIG_ROCK));
        tPanel = aRegistry.add("C-Foam Panel", "Panels", i + 32468, 32500, MultiTileEntityPanelCFoam.class, 0, 16, aStone, UT.NBT.make(NBT_COLOR, i));
        CR.shaped(ST.amount(6, tPanel), CR.DEF_REV_NCC_MIR, "TsT", "TPT", "TdT", 'P', ST.make(BlocksGT.CFoam, 1, i), 'T', OP.screw.dat(ANY.Iron));
        CoverRegistry.put(tPanel, new CoverTextureSimple(BlockTextureDefault.get(Textures.BlockIcons.CFOAM_HARDENED, DYES[i]), SFX.MC_DIG_ROCK));
        tPanel = aRegistry.add("Asphalt Panel", "Panels", i + 32484, 32500, MultiTileEntityPanelAsphalt.class, 0, 16, aStone, UT.NBT.make(NBT_COLOR, i));
        CR.shaped(ST.amount(6, tPanel), CR.DEF_REV_NCC_MIR, "TsT", "TPT", "TdT", 'P', ST.make(BlocksGT.Asphalt, 1, i), 'T', OP.screw.dat(ANY.Iron));
        CoverRegistry.put(tPanel, new CoverAsphalt(BlockTextureDefault.get(Textures.BlockIcons.ASPHALT, DYES[i])));
    }
    for (int i = 0; i < 100; i++) {
        ItemStack tPanel = aRegistry.add("Wooden Panel", "Panels", i + 32500, 32500, MultiTileEntityPanelWood.class, 0, 16, aWooden, UT.NBT.make(NBT_TEXTURE, i, NBT_HIDDEN, ST.invalid(PlankData.PLANKS[i])));
        if (ST.valid(PlankData.PLANKS[i])) {
            CR.shaped(ST.amount(6, tPanel), CR.DEF_REV_NCC_MIR, "TsT", "TPT", "TdT", 'P', PlankData.PLANKS[i], 'T', OP.screw.dat(ANY.Iron));
            CoverRegistry.put(tPanel, new CoverTextureSimple(BlockTextureDefault.get(PlankData.PLANK_ICONS[i]), SFX.MC_DIG_WOOD));
        } else {
            CoverRegistry.put(tPanel, new CoverTextureSimple(BlockTextureCopied.get(Blocks.planks), SFX.MC_DIG_WOOD));
        }
    }
    for (int i = 0; i < 100; i++) {
        ItemStack tPanel = aRegistry.add("Wooden Panel", "Panels", i + 32352, 32500, MultiTileEntityPanelWood.class, 0, 16, aWooden, UT.NBT.make(NBT_TEXTURE, i + 100, NBT_HIDDEN, ST.invalid(PlankData.PLANKS[i + 100])));
        if (ST.valid(PlankData.PLANKS[i + 100])) {
            CR.shaped(ST.amount(6, tPanel), CR.DEF_REV_NCC_MIR, "TsT", "TPT", "TdT", 'P', PlankData.PLANKS[i + 100], 'T', OP.screw.dat(ANY.Iron));
            CoverRegistry.put(tPanel, new CoverTextureSimple(BlockTextureDefault.get(PlankData.PLANK_ICONS[i + 100]), SFX.MC_DIG_WOOD));
        } else {
            CoverRegistry.put(tPanel, new CoverTextureSimple(BlockTextureCopied.get(Blocks.planks), SFX.MC_DIG_WOOD));
        }
    }
    for (int i = 0; i < 100; i++) {
        ItemStack tPanel = aRegistry.add("Wooden Panel", "Panels", i + 32252, 32500, MultiTileEntityPanelWood.class, 0, 16, aWooden, UT.NBT.make(NBT_TEXTURE, i + 200, NBT_HIDDEN, ST.invalid(PlankData.PLANKS[i + 200])));
        if (ST.valid(PlankData.PLANKS[i + 200])) {
            CR.shaped(ST.amount(6, tPanel), CR.DEF_REV_NCC_MIR, "TsT", "TPT", "TdT", 'P', PlankData.PLANKS[i + 200], 'T', OP.screw.dat(ANY.Iron));
            CoverRegistry.put(tPanel, new CoverTextureSimple(BlockTextureDefault.get(PlankData.PLANK_ICONS[i + 200]), SFX.MC_DIG_WOOD));
        } else {
            CoverRegistry.put(tPanel, new CoverTextureSimple(BlockTextureCopied.get(Blocks.planks), SFX.MC_DIG_WOOD));
        }
    }
    // 32106 is next, up to 32251
    aMat = MT.Brown;
    aRegistry.add("Rope", "Ropes", 32011, 32011, MultiTileEntityRope.class, 0, 64, aUtilWool, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 1.0F, NBT_FLAMMABILITY, 100), " S", "SS", "Sq", 'S', "cropHemp");
    IL.Rope.set(aRegistry.getItem(), null, "rope");
    aMat = MT.White;
    aRegistry.add("Silk Rope", "Ropes", 32012, 32011, MultiTileEntityRope.class, 0, 64, aUtilWool, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 1.0F), " S", "SS", "Sq", 'S', Items.string);
    IL.Rope_Silk.set(aRegistry.getItem(), null, "rope");
    aMat = MT.Yellow;
    aRegistry.add("Grass Rope", "Ropes", 32013, 32011, MultiTileEntityRope.class, 0, 64, aUtilWool, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 1.0F, NBT_FLAMMABILITY, 100), " GG", "GGG", "GGq", 'G', OD.itemGrassDry);
    IL.Rope_Grass.set(aRegistry.getItem(), null, "rope");
    aMat = MT.Plastic;
    aRegistry.add("Plastic Rope", "Ropes", 32014, 32011, MultiTileEntityRope.class, 0, 64, aUtilWool, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 1.0F), " P", "PP", "Pq", 'P', OP.wireFine.dat(MT.Plastic));
    IL.Rope_Plastic.set(aRegistry.getItem(), null, "rope");
    aMat = MT.Porcelain;
    aRegistry.add("Porcelain Cup", "Fluid Containers", 32739, 32719, MultiTileEntityCup.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 6.0F, NBT_TANK_CAPACITY, 250, NBT_ACIDPROOF, F, NBT_LIQUIDPROOF, T, NBT_GASPROOF, F, NBT_TEMPERATURE, aMat.mMeltingPoint));
    IL.Porcelain_Cup.set(aRegistry.getItem(), new OreDictItemData(MT.Porcelain, U * 1));
    RM.add_smelting(IL.Porcelain_Cup_Raw.get(1), IL.Porcelain_Cup.get(1), F, F, T);
    aMat = MT.Ceramic;
    aRegistry.add("Ceramic Jug", "Fluid Containers", 32740, 32719, MultiTileEntityJug.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 6.0F, NBT_TANK_CAPACITY, 2000, NBT_ACIDPROOF, F, NBT_LIQUIDPROOF, T, NBT_GASPROOF, F, NBT_TEMPERATURE, aMat.mMeltingPoint));
    IL.Ceramic_Jug.set(aRegistry.getItem(), new OreDictItemData(MT.Ceramic, U * 6));
    RM.add_smelting(IL.Ceramic_Jug_Raw.get(1), IL.Ceramic_Jug.get(1), F, F, T);
    aMat = MT.Ceramic;
    aRegistry.add("Ceramic Measuring Pot", "Fluid Containers", 32738, 32719, MultiTileEntityMeasuringPot.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 6.0F, NBT_TANK_CAPACITY, 1000, NBT_ACIDPROOF, F, NBT_LIQUIDPROOF, T, NBT_GASPROOF, F, NBT_TEMPERATURE, aMat.mMeltingPoint));
    IL.Measuring_Pot.set(aRegistry.getItem(), new OreDictItemData(MT.Ceramic, U * 4));
    RM.add_smelting(IL.Measuring_Pot_Raw.get(1), IL.Measuring_Pot.get(1), F, F, T);
    aMat = MT.StainlessSteel;
    aRegistry.add("Stainless Measuring Pot", "Fluid Containers", 32743, 32719, MultiTileEntityMeasuringPot.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 6.0F, NBT_TANK_CAPACITY, 1000, NBT_ACIDPROOF, T, NBT_LIQUIDPROOF, T, NBT_GASPROOF, F, NBT_TEMPERATURE, aMat.mMeltingPoint - 50), "Ch", "Pf", 'P', OP.plate.dat(aMat), 'C', OP.plateCurved.dat(aMat));
    aMat = ANY.W;
    aRegistry.add("Tungsten Measuring Pot", "Fluid Containers", 32744, 32719, MultiTileEntityMeasuringPot.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 10.0F, NBT_TANK_CAPACITY, 1000, NBT_ACIDPROOF, T, NBT_LIQUIDPROOF, T, NBT_GASPROOF, F, NBT_TEMPERATURE, aMat.mMeltingPoint - 50), "Ch", "Pf", 'P', OP.plate.dat(aMat), 'C', OP.plateCurved.dat(aMat));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Tantalum Hafnium Carbide Measuring Pot", "Fluid Containers", 32077, 32719, MultiTileEntityMeasuringPot.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 10.0F, NBT_TANK_CAPACITY, 1000, NBT_ACIDPROOF, F, NBT_LIQUIDPROOF, T, NBT_GASPROOF, F, NBT_TEMPERATURE, aMat.mMeltingPoint - 50), "Ch", "Pf", 'P', OP.plate.dat(aMat), 'C', OP.plateCurved.dat(aMat));
    aMat = MT.Al;
    aRegistry.add("Thermos Can", "Fluid Containers", 32737, 32719, MultiTileEntityThermos.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 6.0F, NBT_TANK_CAPACITY, 4000, NBT_ACIDPROOF, F, NBT_LIQUIDPROOF, T, NBT_GASPROOF, F, NBT_TEMPERATURE, aMat.mMeltingPoint - 50), "hPw", "PAP", "SBS", 'A', OP.pipeMedium.dat(aMat), 'B', OP.pipeLarge.dat(aMat), 'S', OP.foil.dat(MT.Ag), 'P', OP.plateCurved.dat(MT.Plastic));
    aMat = ANY.Steel;
    aRegistry.add("Steel Barometer Gas Cylinder", "Fluid Containers", 32055, 32719, MultiTileEntityBarometerGasCylinder.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 6.0F, NBT_TANK_CAPACITY, 8000, NBT_ACIDPROOF, F, NBT_LIQUIDPROOF, F, NBT_GASPROOF, T, NBT_TEMPERATURE, aMat.mMeltingPoint - 50), "RCR", "BCh", "TPd", 'P', OP.plate.dat(aMat), 'C', OP.plateCurved.dat(aMat), 'R', OP.ring.dat(aMat), 'B', OP.round.dat(aMat), 'T', OP.screw.dat(aMat));
    aMat = MT.StainlessSteel;
    aRegistry.add("Stainless Barometer Gas Cylinder", "Fluid Containers", 32056, 32719, MultiTileEntityBarometerGasCylinder.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 6.0F, NBT_TANK_CAPACITY, 8000, NBT_ACIDPROOF, T, NBT_LIQUIDPROOF, F, NBT_GASPROOF, T, NBT_TEMPERATURE, aMat.mMeltingPoint - 50), "RCR", "BCh", "TPd", 'P', OP.plate.dat(aMat), 'C', OP.plateCurved.dat(aMat), 'R', OP.ring.dat(aMat), 'B', OP.round.dat(aMat), 'T', OP.screw.dat(aMat));
    aMat = ANY.W;
    aRegistry.add("Tungsten Barometer Gas Cylinder", "Fluid Containers", 32057, 32719, MultiTileEntityBarometerGasCylinder.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 10.0F, NBT_TANK_CAPACITY, 8000, NBT_ACIDPROOF, T, NBT_LIQUIDPROOF, F, NBT_GASPROOF, T, NBT_TEMPERATURE, aMat.mMeltingPoint - 50), "RCR", "BCh", "TPd", 'P', OP.plate.dat(aMat), 'C', OP.plateCurved.dat(aMat), 'R', OP.ring.dat(aMat), 'B', OP.round.dat(aMat), 'T', OP.screw.dat(aMat));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Tantalum Hafnium Carbide Barometer Gas Cylinder", "Fluid Containers", 32078, 32719, MultiTileEntityBarometerGasCylinder.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 10.0F, NBT_TANK_CAPACITY, 8000, NBT_ACIDPROOF, F, NBT_LIQUIDPROOF, F, NBT_GASPROOF, T, NBT_TEMPERATURE, aMat.mMeltingPoint - 50), "RCR", "BCh", "TPd", 'P', OP.plate.dat(aMat), 'C', OP.plateCurved.dat(aMat), 'R', OP.ring.dat(aMat), 'B', OP.round.dat(aMat), 'T', OP.screw.dat(aMat));
    aMat = MT.Ceramic;
    aRegistry.add("Ceramic Tap", "Misc Tool Blocks", 32728, 32720, MultiTileEntityFluidTap.class, 0, 64, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 5.0F, NBT_ACIDPROOF, F));
    IL.Ceramic_Tap.set(aRegistry.getItem(), new OreDictItemData(MT.Ceramic, U * 3));
    RM.add_smelting(IL.Ceramic_Tap_Raw.get(1), IL.Ceramic_Tap.get(1), F, F, T);
    aMat = MT.Plastic;
    aRegistry.add("Plastic Tap", "Misc Tool Blocks", 32729, 32720, MultiTileEntityFluidTap.class, 0, 64, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 3.0F, NBT_ACIDPROOF, F), "  s", "PP ", "xP ", 'P', OP.plateCurved.dat(aMat));
    aMat = MT.StainlessSteel;
    aRegistry.add("Stainless Tap", "Misc Tool Blocks", 32730, 32720, MultiTileEntityFluidTap.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 6.0F, NBT_ACIDPROOF, T), "  h", "PP ", "oP ", 'P', OP.plateCurved.dat(aMat));
    aMat = ANY.W;
    aRegistry.add("Tungsten Tap", "Misc Tool Blocks", 32731, 32720, MultiTileEntityFluidTap.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 10.0F, NBT_ACIDPROOF, T), "  h", "PP ", "oP ", 'P', OP.plateCurved.dat(aMat));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Tantalum Hafnium Carbide Tap", "Misc Tool Blocks", 32080, 32720, MultiTileEntityFluidTap.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 10.0F, NBT_ACIDPROOF, F), "  h", "PP ", "oP ", 'P', OP.plateCurved.dat(aMat));
    aMat = MT.Ad;
    aRegistry.add("Adamantium Tap", "Misc Tool Blocks", 32732, 32720, MultiTileEntityFluidTap.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 100.0F, NBT_ACIDPROOF, T), "  h", "PP ", "oP ", 'P', OP.plateCurved.dat(aMat));
    aMat = MT.Ceramic;
    aRegistry.add("Ceramic Funnel", "Misc Tool Blocks", 32723, 32720, MultiTileEntityFluidFunnel.class, 0, 64, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 5.0F, NBT_ACIDPROOF, F));
    IL.Ceramic_Funnel.set(aRegistry.getItem(), new OreDictItemData(MT.Ceramic, U * 3));
    RM.add_smelting(IL.Ceramic_Funnel_Raw.get(1), IL.Ceramic_Funnel.get(1), F, F, T);
    aMat = MT.Plastic;
    aRegistry.add("Plastic Funnel", "Misc Tool Blocks", 32724, 32720, MultiTileEntityFluidFunnel.class, 0, 64, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 3.0F, NBT_ACIDPROOF, F), " s ", "PxP", " P ", 'P', OP.plateCurved.dat(aMat));
    aMat = MT.StainlessSteel;
    aRegistry.add("Stainless Funnel", "Misc Tool Blocks", 32725, 32720, MultiTileEntityFluidFunnel.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 6.0F, NBT_ACIDPROOF, T), " h ", "PoP", " P ", 'P', OP.plateCurved.dat(aMat));
    aMat = ANY.W;
    aRegistry.add("Tungsten Funnel", "Misc Tool Blocks", 32726, 32720, MultiTileEntityFluidFunnel.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 10.0F, NBT_ACIDPROOF, T), " h ", "PoP", " P ", 'P', OP.plateCurved.dat(aMat));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Tantalum Hafnium Carbide Funnel", "Misc Tool Blocks", 32081, 32720, MultiTileEntityFluidFunnel.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 10.0F, NBT_ACIDPROOF, F), " h ", "PoP", " P ", 'P', OP.plateCurved.dat(aMat));
    aMat = MT.Ad;
    aRegistry.add("Adamantium Funnel", "Misc Tool Blocks", 32727, 32720, MultiTileEntityFluidFunnel.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 100.0F, NBT_ACIDPROOF, T), " h ", "PoP", " P ", 'P', OP.plateCurved.dat(aMat));
    aMat = MT.Plastic;
    aRegistry.add("Plastic Nozzle", "Misc Tool Blocks", 32747, 32720, MultiTileEntityFluidNozzle.class, 0, 64, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 3.0F, NBT_ACIDPROOF, F), "  s", "PRP", "x  ", 'R', OP.ring.dat(MT.Rubber), 'P', OP.plateCurved.dat(aMat));
    aMat = ANY.Steel;
    aRegistry.add("Steel Nozzle", "Misc Tool Blocks", 32746, 32720, MultiTileEntityFluidNozzle.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 5.0F, NBT_ACIDPROOF, F), "  h", "PRP", "o  ", 'R', OP.ring.dat(MT.Rubber), 'P', OP.plateCurved.dat(aMat));
    aMat = MT.StainlessSteel;
    aRegistry.add("Stainless Nozzle", "Misc Tool Blocks", 32748, 32720, MultiTileEntityFluidNozzle.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 6.0F, NBT_ACIDPROOF, T), "  h", "PRP", "o  ", 'R', OP.ring.dat(MT.Rubber), 'P', OP.plateCurved.dat(aMat));
    aMat = ANY.W;
    aRegistry.add("Tungsten Nozzle", "Misc Tool Blocks", 32749, 32720, MultiTileEntityFluidNozzle.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 10.0F, NBT_ACIDPROOF, T), "  h", "PRP", "o  ", 'R', OP.ring.dat(aMat), 'P', OP.plateCurved.dat(aMat));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Tantalum Hafnium Carbide Nozzle", "Misc Tool Blocks", 32079, 32720, MultiTileEntityFluidNozzle.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 10.0F, NBT_ACIDPROOF, F), "  h", "PRP", "o  ", 'R', OP.ring.dat(aMat), 'P', OP.plateCurved.dat(aMat));
    aMat = MT.Ad;
    aRegistry.add("Adamantium Nozzle", "Misc Tool Blocks", 32750, 32720, MultiTileEntityFluidNozzle.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 100.0F, NBT_ACIDPROOF, T), "  h", "PRP", "o  ", 'R', OP.ring.dat(aMat), 'P', OP.plateCurved.dat(aMat));
    aMat = MT.Plastic;
    aRegistry.add("Plastic Cap Nozzle", "Misc Tool Blocks", 32059, 32720, MultiTileEntityFluidCapNozzle.class, 0, 64, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 3.0F, NBT_ACIDPROOF, F), "Rw", "BT", "Nd", 'N', aRegistry.getItem(32747), 'R', OP.ring.dat(MT.Rubber), 'B', OP.round.dat(aMat), 'T', OP.screw.dat(aMat));
    aMat = ANY.Steel;
    aRegistry.add("Steel Cap Nozzle", "Misc Tool Blocks", 32058, 32720, MultiTileEntityFluidCapNozzle.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 5.0F, NBT_ACIDPROOF, F), "Rw", "BT", "Nd", 'N', aRegistry.getItem(32746), 'R', OP.ring.dat(MT.Rubber), 'B', OP.round.dat(aMat), 'T', OP.screw.dat(aMat));
    aMat = MT.StainlessSteel;
    aRegistry.add("Stainless Cap Nozzle", "Misc Tool Blocks", 32060, 32720, MultiTileEntityFluidCapNozzle.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 6.0F, NBT_ACIDPROOF, T), "Rw", "BT", "Nd", 'N', aRegistry.getItem(32748), 'R', OP.ring.dat(MT.Rubber), 'B', OP.round.dat(aMat), 'T', OP.screw.dat(aMat));
    aMat = ANY.W;
    aRegistry.add("Tungsten Cap Nozzle", "Misc Tool Blocks", 32061, 32720, MultiTileEntityFluidCapNozzle.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 10.0F, NBT_ACIDPROOF, T), "Rw", "BT", "Nd", 'N', aRegistry.getItem(32749), 'R', OP.ring.dat(aMat), 'B', OP.round.dat(aMat), 'T', OP.screw.dat(aMat));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Tantalum Hafnium Carbide Cap Nozzle", "Misc Tool Blocks", 32082, 32720, MultiTileEntityFluidCapNozzle.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 10.0F, NBT_ACIDPROOF, F), "Rw", "BT", "Nd", 'N', aRegistry.getItem(32749), 'R', OP.ring.dat(aMat), 'B', OP.round.dat(aMat), 'T', OP.screw.dat(aMat));
    aMat = MT.Ad;
    aRegistry.add("Adamantium Cap Nozzle", "Misc Tool Blocks", 32062, 32720, MultiTileEntityFluidCapNozzle.class, 0, 64, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 100.0F, NBT_ACIDPROOF, T), "Rw", "BT", "Nd", 'N', aRegistry.getItem(32750), 'R', OP.ring.dat(aMat), 'B', OP.round.dat(aMat), 'T', OP.screw.dat(aMat));
    aMat = ANY.Wood;
    aRegistry.add("Wooden Barrel (Cheap)", "Fluid Containers", 32733, 32719, MultiTileEntityBarrelWood.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_TANK_CAPACITY, 8000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, F, NBT_ACIDPROOF, F, NBT_CAPACITY_HU, 340, NBT_FLAMMABILITY, 100), "rGs", "PSP", "PSP", 'G', OD.itemGlue, 'P', OD.plankAnyWood, 'S', OP.stickLong.dat(MT.Pb));
    aMat = ANY.Wood;
    aRegistry.add("Wooden Barrel (Cheap)", "Fluid Containers", 32752, 32719, MultiTileEntityBarrelWood.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_TANK_CAPACITY, 8000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, F, NBT_ACIDPROOF, F, NBT_CAPACITY_HU, 340, NBT_FLAMMABILITY, 100), "rGs", "PSP", "PSP", 'G', OD.itemGlue, 'P', OD.plankAnyWood, 'S', OP.stickLong.dat(MT.Bi));
    aMat = ANY.Wood;
    aRegistry.add("Wooden Barrel (Cheap)", "Fluid Containers", 32753, 32719, MultiTileEntityBarrelWood.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_TANK_CAPACITY, 8000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, F, NBT_ACIDPROOF, F, NBT_CAPACITY_HU, 340, NBT_FLAMMABILITY, 100), "rGs", "PSP", "PSP", 'G', OD.itemGlue, 'P', OD.plankAnyWood, 'S', OP.stickLong.dat(MT.Bronze));
    aMat = ANY.Wood;
    aRegistry.add("Wooden Barrel (Cheap)", "Fluid Containers", 32754, 32719, MultiTileEntityBarrelWood.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_TANK_CAPACITY, 8000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, F, NBT_ACIDPROOF, F, NBT_CAPACITY_HU, 340, NBT_FLAMMABILITY, 100), "rGs", "PSP", "PSP", 'G', OD.itemGlue, 'P', OD.plankAnyWood, 'S', OP.stickLong.dat(MT.Brass));
    aMat = MT.WoodTreated;
    aRegistry.add("Wooden Barrel", "Fluid Containers", 32714, 32719, MultiTileEntityBarrelWood.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_TANK_CAPACITY, 16000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, F, NBT_ACIDPROOF, F, NBT_CAPACITY_HU, 340, NBT_FLAMMABILITY, 100), "rGs", "PSP", "PSP", 'G', OD.itemGlue, 'P', OP.plate.dat(aMat), 'S', OP.stickLong.dat(ANY.Iron));
    aMat = MT.Skyroot;
    aRegistry.add("Skyroot Barrel", "Fluid Containers", 32019, 32719, MultiTileEntityBarrelWood.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_TANK_CAPACITY, 16000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, F, NBT_ACIDPROOF, F, NBT_CAPACITY_HU, 340, NBT_FLAMMABILITY, 100), "rGs", "PSP", "PSP", 'G', OD.itemGlue, 'P', OD.plankSkyroot, 'S', OP.stickLong.dat(ANY.Iron));
    aMat = MT.Weedwood;
    aRegistry.add("Weedwood Barrel", "Fluid Containers", 32008, 32719, MultiTileEntityBarrelWood.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_TANK_CAPACITY, 8000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, F, NBT_ACIDPROOF, F, NBT_CAPACITY_HU, 340), "rGs", "PSP", "PSP", 'G', OD.itemGlue, 'P', OD.plankWeedwood, 'S', OP.stickLong.dat(MT.Syrmorite));
    aMat = MT.Livingwood;
    aRegistry.add("Livingwood Barrel", "Fluid Containers", 32010, 32719, MultiTileEntityBarrelWood.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_TANK_CAPACITY, 16000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, F, NBT_ACIDPROOF, F, NBT_CAPACITY_HU, 340, NBT_FLAMMABILITY, 100), "rGs", "PSP", "PSP", 'G', OD.itemGlue, 'P', OP.plate.dat(aMat), 'S', OP.stickLong.dat(ANY.Iron));
    aMat = MT.Dreamwood;
    aRegistry.add("Dreamwood Barrel", "Fluid Containers", 32009, 32719, MultiTileEntityBarrelWood.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_TANK_CAPACITY, 64000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, F, NBT_ACIDPROOF, F, NBT_CAPACITY_HU, 340), "rGs", "PSP", "PSP", 'G', OD.itemGlue, 'P', OP.plate.dat(aMat), 'S', OP.stickLong.dat(MT.Manasteel));
    aMat = MT.Shimmerwood;
    aRegistry.add("Shimmerwood Barrel", "Fluid Containers", 32016, 32719, MultiTileEntityBarrelWood.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_TANK_CAPACITY, 64000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, F, NBT_ACIDPROOF, F, NBT_CAPACITY_HU, 340), "rGs", "PSP", "PSP", 'G', OD.itemGlue, 'P', OP.plate.dat(aMat), 'S', OP.stickLong.dat(MT.Manasteel));
    aMat = MT.IronWood;
    aRegistry.add("Ironwood Barrel", "Fluid Containers", 32734, 32719, MultiTileEntityBarrelWood.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_TANK_CAPACITY, 32000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, F, NBT_ACIDPROOF, F), "rGs", "PSP", "PSP", 'G', OD.itemGlue, 'P', OP.plate.dat(aMat), 'S', OP.stickLong.dat(ANY.Iron));
    aMat = MT.Greatwood;
    aRegistry.add("Greatwood Barrel", "Fluid Containers", 32017, 32719, MultiTileEntityBarrelWood.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_TANK_CAPACITY, 16000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, F, NBT_ACIDPROOF, F, NBT_CAPACITY_HU, 390, NBT_FLAMMABILITY, 100), "rGs", "PSP", "PSP", 'G', OD.itemGlue, 'P', OP.plate.dat(aMat), 'S', OP.stickLong.dat(ANY.Iron));
    aMat = MT.Silverwood;
    aRegistry.add("Silverwood Barrel", "Fluid Containers", 32018, 32719, MultiTileEntityBarrelWood.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_TANK_CAPACITY, 64000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, F, NBT_ACIDPROOF, F, NBT_CAPACITY_HU, 440), "rGs", "PSP", "PSP", 'G', OD.itemGlue, 'P', OP.plate.dat(aMat), 'S', OP.stickLong.dat(MT.Thaumium));
    aMat = MT.Plastic;
    aRegistry.add("Plastic Canister", "Fluid Containers", 32715, 32719, MultiTileEntityBarrelPlastic.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 3.0F, NBT_TANK_CAPACITY, 32000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, T, NBT_ACIDPROOF, F, NBT_CAPACITY_HU, 370));
    IL.PlasticCan.set(aRegistry.getItem(), new OreDictItemData(MT.Plastic, U * 3));
    aMat = MT.Bronze;
    aRegistry.add("Bronze Drum", "Fluid Containers", 32102, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_TANK_CAPACITY, 64000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, T, NBT_ACIDPROOF, F), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.Invar;
    aRegistry.add("Invar Drum", "Fluid Containers", 32064, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_TANK_CAPACITY, 64000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, T, NBT_ACIDPROOF, F), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.StainlessSteel;
    aRegistry.add("Stainless Steel Drum", "Fluid Containers", 32716, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_TANK_CAPACITY, 64000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, T, NBT_ACIDPROOF, T), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.Desh;
    aRegistry.add("Desh Drum", "Fluid Containers", 32070, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_TANK_CAPACITY, 64000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, T, NBT_ACIDPROOF, F), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.Syrmorite;
    aRegistry.add("Syrmorite Drum", "Fluid Containers", 32020, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_TANK_CAPACITY, 64000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, T, NBT_ACIDPROOF, T), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.Efrine;
    aRegistry.add("Efrine Drum", "Fluid Containers", 32093, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_TANK_CAPACITY, 64000L, NBT_PLASMAPROOF, T, NBT_GASPROOF, T, NBT_ACIDPROOF, F), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.Thaumium;
    aRegistry.add("Thaumium Drum", "Fluid Containers", 32022, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_TANK_CAPACITY, 64000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, T, NBT_ACIDPROOF, T), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.Manasteel;
    aRegistry.add("Manasteel Drum", "Fluid Containers", 32023, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_TANK_CAPACITY, 64000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, T, NBT_ACIDPROOF, T), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.TungstenAlloy;
    aRegistry.add("Tungsten Alloy Drum", "Fluid Containers", 32090, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 9.0F, NBT_TANK_CAPACITY, 128000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, T, NBT_ACIDPROOF, F), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.Ti;
    aRegistry.add("Titanium Drum", "Fluid Containers", 32742, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 9.0F, NBT_TANK_CAPACITY, 128000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, T, NBT_ACIDPROOF, F), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.Netherite;
    aRegistry.add("Netherite Drum", "Fluid Containers", 32087, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 9.0F, NBT_TANK_CAPACITY, 128000L, NBT_PLASMAPROOF, T, NBT_GASPROOF, T, NBT_ACIDPROOF, T), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.TungstenSteel;
    aRegistry.add("Tungstensteel Drum", "Fluid Containers", 32717, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 12.5F, NBT_TANK_CAPACITY, 256000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, T, NBT_ACIDPROOF, F), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = ANY.W;
    aRegistry.add("Tungsten Drum", "Fluid Containers", 32718, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 10.0F, NBT_TANK_CAPACITY, 256000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, T, NBT_ACIDPROOF, T), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.Ta4HfC5;
    aRegistry.add("Tantalum Hafnium Carbide Drum", "Fluid Containers", 32083, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 10.0F, NBT_TANK_CAPACITY, 512000L, NBT_PLASMAPROOF, F, NBT_GASPROOF, T, NBT_ACIDPROOF, F), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.VoidMetal;
    aRegistry.add("Voidmetal Drum", "Fluid Containers", 32063, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 10.0F, NBT_TANK_CAPACITY, 256000L, NBT_PLASMAPROOF, T, NBT_GASPROOF, T, NBT_ACIDPROOF, T), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.GaiaSpirit;
    aRegistry.add("Gaia Drum", "Fluid Containers", 32024, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 25.0F, NBT_TANK_CAPACITY, 1024000L, NBT_PLASMAPROOF, T, NBT_GASPROOF, T, NBT_ACIDPROOF, T), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.Ad;
    aRegistry.add("Adamantium Drum", "Fluid Containers", 32719, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 100.0F, NBT_TANK_CAPACITY, 4096000L, NBT_PLASMAPROOF, T, NBT_GASPROOF, T, NBT_ACIDPROOF, T), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.Draconium;
    aRegistry.add("Draconium Drum", "Fluid Containers", 32021, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 100.0F, NBT_TANK_CAPACITY, 4096000L, NBT_PLASMAPROOF, T, NBT_GASPROOF, T, NBT_ACIDPROOF, T), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.DraconiumAwakened;
    aRegistry.add("Awakened Draconium Drum", "Fluid Containers", 32066, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 100.0F, NBT_TANK_CAPACITY, 8192000L, NBT_PLASMAPROOF, T, NBT_GASPROOF, T, NBT_ACIDPROOF, T, NBT_CAPACITY_HU, 10000), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = MT.Infinity;
    aRegistry.add("Infinity Drum", "Fluid Containers", 32067, 32719, MultiTileEntityBarrelMetal.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 100.0F, NBT_TANK_CAPACITY, 10000000000L, NBT_PLASMAPROOF, T, NBT_GASPROOF, T, NBT_ACIDPROOF, T, NBT_CAPACITY_HU, 1000000000), " h ", "PSP", "PSP", 'P', OP.plateCurved.dat(aMat), 'S', OP.stickLong.dat(aMat));
    aMat = ANY.W;
    aRegistry.add("Logistics Tank", "Logistics", 32072, 17997, MultiTileEntityBarrelLogistics.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 10.0F, NBT_TANK_CAPACITY, 1000000L, NBT_PLASMAPROOF, T, NBT_GASPROOF, T, NBT_ACIDPROOF, T, NBT_CAPACITY_HU, 100000), "TQT", "wFd", "TMT", 'M', aRegistry.getItem(32718), 'T', OP.screw.dat(aMat), 'Q', IL.Cover_Logistics_Generic_Storage, 'F', IL.FIELD_GENERATORS[0]);
    aMat = ANY.Wood;
    aRegistry.add("Wooden Bathing Pot", "Misc Tool Blocks", 32721, 32720, MultiTileEntityBathingPotWood.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_RECIPEMAP, RM.Bath, NBT_TANK_CAPACITY, 4000, NBT_FLAMMABILITY, 100), "sGh", "PLP", "PPP", 'P', OD.plankAnyWood, 'L', OP.stickLong.dat(MT.Pb), 'G', OD.itemGlue);
    aMat = ANY.Wood;
    aRegistry.add("Wooden Bathing Pot Table", "Misc Tool Blocks", 32720, 32720, MultiTileEntityBathingPotTableWood.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_RECIPEMAP, RM.Bath, NBT_TANK_CAPACITY, 4000, NBT_FLAMMABILITY, 100), "M", "S", 'M', aRegistry.getItem(), 'S', ST.make(Blocks.stone_slab, 1, 4));
    aMat = MT.StainlessSteel;
    aRegistry.add("Bathing Pot", "Misc Tool Blocks", 32708, 32720, MultiTileEntityBathingPot.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_RECIPEMAP, RM.Bath, NBT_TANK_CAPACITY, 8000), " f ", "PhP", "PPP", 'P', OP.plate.dat(aMat));
    aMat = MT.StainlessSteel;
    aRegistry.add("Bathing Pot Table", "Misc Tool Blocks", 32707, 32720, MultiTileEntityBathingPotTable.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_RECIPEMAP, RM.Bath, NBT_TANK_CAPACITY, 8000), "M", "S", 'M', aRegistry.getItem(), 'S', ST.make(Blocks.stone_slab, 1, 4));
    aMat = MT.Ceramic;
    aRegistry.add("Ceramic Bowl", "Misc Tool Blocks", 32706, 32720, MultiTileEntityMixingBowl.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_RECIPEMAP, RM.Mixer, NBT_TANK_CAPACITY, 8000));
    IL.Ceramic_Bowl.set(aRegistry.getItem(), new OreDictItemData(MT.Ceramic, U * 5));
    RM.add_smelting(IL.Ceramic_Bowl_Raw.get(1), IL.Ceramic_Bowl.get(1), F, F, T);
    aMat = MT.Ceramic;
    aRegistry.add("Ceramic Bowl Table", "Misc Tool Blocks", 32705, 32720, MultiTileEntityMixingBowlTable.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_RECIPEMAP, RM.Mixer, NBT_TANK_CAPACITY, 8000), "M", "S", 'M', aRegistry.getItem(), 'S', ST.make(Blocks.stone_slab, 1, 4));
    aMat = MT.Ceramic;
    aRegistry.add("Mortar", "Misc Tool Blocks", 32735, 32720, MultiTileEntityMortar.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_RECIPEMAP, RM.Mortar, NBT_DESIGN, 0), "P", "B", 'B', IL.Ceramic_Bowl, 'P', OP.ingot.dat(ANY.Iron));
    aMat = MT.Ceramic;
    aRegistry.add("Mortar", "Misc Tool Blocks", 32094, 32720, MultiTileEntityMortar.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_RECIPEMAP, RM.Mortar, NBT_DESIGN, 1), "P", "B", 'B', IL.Ceramic_Bowl, 'P', OP.ingot.dat(MT.Netherite));
    aMat = MT.Ceramic;
    aRegistry.add("Mortar", "Misc Tool Blocks", 32075, 32720, MultiTileEntityMortar.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_RECIPEMAP, RM.Mortar, NBT_DESIGN, 2), "P", "B", 'B', IL.Ceramic_Bowl, 'P', OP.gem.dat(ANY.Sapphire));
    aMat = MT.Ceramic;
    aRegistry.add("Mortar", "Misc Tool Blocks", 32076, 32720, MultiTileEntityMortar.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_RECIPEMAP, RM.Mortar, NBT_DESIGN, 3), "P", "B", 'B', IL.Ceramic_Bowl, 'P', OP.gem.dat(ANY.Diamond));
    aMat = MT.Ceramic;
    aRegistry.add("Mortar", "Misc Tool Blocks", 32089, 32720, MultiTileEntityMortar.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_RECIPEMAP, RM.Mortar, NBT_DESIGN, 4), "P", "B", 'B', IL.Ceramic_Bowl, 'P', OP.gem.dat(ANY.Amethyst));
    aMat = MT.Ceramic;
    aRegistry.add("Juicer", "Misc Tool Blocks", 32722, 32720, MultiTileEntityJuicer.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F, NBT_RECIPEMAP, RM.Juicer));
    IL.Juicer.set(aRegistry.getItem(), new OreDictItemData(MT.Ceramic, U * 4));
    RM.add_smelting(IL.Juicer_Raw.get(1), IL.Juicer.get(1), F, F, T);
    aMat = MT.Stone;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32025, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 10000L), "RRR", "hR ", "RRR", 'R', Blocks.stone);
    aMat = MT.STONES.Blackstone;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32095, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 100000L), "RRR", "hR ", "RRR", 'R', OP.stone.dat(aMat));
    aMat = MT.STONES.GraniteBlack;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32026, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 100000L), "RRR", "hR ", "RRR", 'R', OP.stone.dat(aMat));
    aMat = MT.STONES.GraniteRed;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32027, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 100000L), "RRR", "hR ", "RRR", 'R', OP.stone.dat(aMat));
    aMat = MT.Pb;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32050, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 800000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.Bronze;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32028, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 1000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.Syrmorite;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32029, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 2000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.IronWood;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32030, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilWood, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 7500000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = ANY.Steel;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32031, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 10000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.Desh;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32071, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 12500000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.Efrine;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32092, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 20000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.Thaumium;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32032, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 25000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.Manasteel;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32033, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 25000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = ANY.BlackSteel;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32034, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 30000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = ANY.BlueSteel;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32035, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 40000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = ANY.RedSteel;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32036, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 50000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.VanadiumSteel;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32037, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 70000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.Octine;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32038, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 80000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.FierySteel;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32039, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 90000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.TungstenAlloy;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32091, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 100000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.Ti;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32040, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 100000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.Netherite;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32088, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 150000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.Terrasteel;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32041, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 200000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.VoidMetal;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32042, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 300000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.TitaniumGold;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32043, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 400000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.TungstenSteel;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32044, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 1000000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = ANY.W;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32045, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 2000000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.Ir;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32046, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 10000000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.GaiaSpirit;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32047, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 100000000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.Ad;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32048, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 1000000000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.Draconium;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32049, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 1000000000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.DraconiumAwakened;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32068, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 2000000000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.Infinity;
    aRegistry.add(aMat.mNameLocal + " Anvil", "Misc Tool Blocks", 32069, 32720, MultiTileEntityAnvil.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_DURABILITY, 1000000000000000L), "III", "hI ", "III", 'I', OP.ingot.dat(aMat));
    aMat = MT.Leather;
    aRegistry.add("Resin/Sap Bag", "Misc Tool Blocks", 32736, 32720, MultiTileEntitySapBag.class, 0, 64, aUtilWool, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 3.0F, NBT_TANK_CAPACITY, 8000), "SSS", "LsL", "LLL", 'L', OD.craftingLeather, 'S', OD.stickAnyWood);
    IL.Bag_Sap_Resin.set(aRegistry.getItem());
    aMat = ANY.Wood;
    aRegistry.add("Bumbliary", "Misc Tool Blocks", 32741, 32720, MultiTileEntityBumbliary.class, 0, 16, aWooden, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 5.0F, NBT_RESISTANCE, 5.0F, NBT_RECIPEMAP, RM.BumbleQueens), "PPP", "PBP", "TdT", 'B', aRegistry.getItem(32755), 'P', OP.plate.dat(MT.WoodTreated), 'T', OP.screw.dat(ANY.Iron));
    aMat = MT.StainlessSteel;
    aRegistry.add("Advanced Bumbliary", "Misc Tool Blocks", 32007, 32720, MultiTileEntityBumbliaryAdvanced.class, 0, 16, aWooden, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F, NBT_RECIPEMAP, RM.BumbleQueens), "PRP", "HBH", "PCP", 'B', aRegistry.getItem(32741), 'P', OP.plate.dat(aMat), 'C', OD.craftingChest, 'R', OD.beeCombCrossbred, 'H', OD.container1000honey);
    aMat = ANY.Steel;
    aRegistry.add("Dust Funnel", "Misc Tool Blocks", 32704, 32720, MultiTileEntityDustFunnel.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F), "hws", "PHP", "SPS", 'P', OP.plate.dat(ANY.Iron), 'S', OP.stick.dat(ANY.Iron), 'H', Blocks.hopper);
    aMat = ANY.Steel;
    aRegistry.add("Grindstone", "Misc Tool Blocks", 32703, 32720, MultiTileEntityGrindStone.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_RECIPEMAP, RM.Sharpening), "SAS", "SwS", "PPP", 'P', OP.plateDouble.dat(ANY.Iron), 'S', OP.stickLong.dat(ANY.Iron), 'A', OP.stick.dat(ANY.Iron));
    aMat = ANY.Steel;
    aRegistry.add("Sifting Table", "Misc Tool Blocks", 32702, 32720, MultiTileEntitySiftingTable.class, 0, 16, aUtilMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 6.0F, NBT_RECIPEMAP, RM.Sifting), "TdT", "WxW", "SPS", 'P', OP.plateDouble.dat(ANY.Iron), 'S', OP.stickLong.dat(ANY.Iron), 'T', OP.screw.dat(ANY.Iron), 'W', OP.wireFine.dat(ANY.Iron));
    aMat = MT.Ceramic;
    aRegistry.add("Universal Plant Pot", "Misc Tool Blocks", 32065, 32720, MultiTileEntityPlantPot.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 1.0F, NBT_RESISTANCE, 5.0F), "SEN", "GUC", "MBD", 'U', IL.Ceramic_Basin, 'G', OP.dust.dat(ANY.Stone), 'C', OP.dust.dat(ANY.Clay), 'B', OP.dust.dat(MT.Bone), 'E', OP.dust.dat(MT.Endstone), 'N', OP.dust.dat(MT.SoulSand), 'S', OP.dust.dat(MT.Sand), 'D', OD.itemMud, 'M', OD.listAllmushroom);
    aMat = ANY.Steel;
    aRegistry.add("Ender Garbage Dump", "Misc Tool Blocks", 32710, 32720, MultiTileEntityEnderGarbageDump.class, aMat.mToolQuality, 16, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F));
    ItemsGT.DEBUG_ITEMS.add(aRegistry.getItem());
    ItemsGT.ILLEGAL_DROPS.add(aRegistry.getItem());
    GarbageGT.BLACKLIST.add(aRegistry.getItem());
    aMat = ANY.Steel;
    aRegistry.add("Ender Garbage Bin", "Misc Tool Blocks", 32709, 32720, MultiTileEntityEnderGarbageBin.class, 0, 16, aUtilStone, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.5F, NBT_RESISTANCE, 6.0F), "OOO", "OXO", "PPP", 'O', OP.plate.dat(MT.Obsidian), 'P', OP.plate.dat(ANY.Iron), 'X', OP.gem.dat(MT.EnderEye));
    aMat = MT.TinAlloy;
    OM.reg(aRegistry.add("Advanced Button", "Misc Tool Blocks", 32711, 32720, MultiTileEntityButtonAdvanced.class, aMat.mToolQuality, 64, aMachine, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F), "dPT", "WLW", "TSw", 'W', OP.wireFine.dat(MT.RedAlloy), 'L', OP.wireFine.dat(MT.Lumium), 'P', OP.plateTiny.dat(aMat), 'T', OP.screw.dat(aMat), 'S', OP.springSmall.dat(aMat)), OD.button);
    CR.shapeless(aRegistry.getItem(), CR.DEF_NCC, new Object[] { aRegistry.getItem() });
    aMat = MT.Orange;
    aRegistry.add("Boomstick", "Misc Tool Blocks", 32104, 32720, MultiTileEntityDynamite.class, 0, 64, aTNT, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.0F, NBT_RESISTANCE, 0.0F, NBT_QUALITY, 10, NBT_FORTUNE, 3, NBT_FLAMMABILITY, 300), " S ", "PGP", "DGD", 'G', OP.dust.dat(MT.Gunpowder), 'D', OP.dust.dat(ANY.SiO2), 'S', OD.itemString, 'P', OD.paperEmpty);
    IL.Boomstick.set(aRegistry.getItem());
    aMat = MT.Red;
    aRegistry.add("Dynamite", "Misc Tool Blocks", 32713, 32720, MultiTileEntityDynamite.class, 0, 64, aTNT, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.0F, NBT_RESISTANCE, 0.0F, NBT_QUALITY, 10, NBT_FORTUNE, 5, NBT_FLAMMABILITY, 300));
    IL.Dynamite.set(aRegistry.getItem(), new OreDictItemData(MT.Dynamite, U));
    aMat = MT.Purple;
    aRegistry.add("Strong Dynamite", "Misc Tool Blocks", 32712, 32720, MultiTileEntityDynamite.class, 0, 64, aTNT, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 0.0F, NBT_RESISTANCE, 0.0F, NBT_QUALITY, 40, NBT_FORTUNE, 5, NBT_FLAMMABILITY, 300));
    IL.Dynamite_Strong.set(aRegistry.getItem(), new OreDictItemData(MT.Dynamite, U * 2));
    aMat = ANY.Steel;
    aRegistry.add("Coinage Mold", "Misc Tool Blocks", 32701, 32720, MultiTileEntityMoldCoinage.class, aMat.mToolQuality, 16, aMetal, UT.NBT.make(NBT_MATERIAL, aMat, NBT_HARDNESS, 6.0F, NBT_RESISTANCE, 6.0F), "yhf", "PPP", "III", 'P', OP.plateDouble.dat(ANY.Iron), 'I', OP.ingot.dat(ANY.Iron));
    aRegistry.add("Coin", "Coins", 32700, 32700, MultiTileEntityCoin.class, 0, 64, aMetalChips, null);
}
Also used : CoverTextureSimple(gregapi.cover.covers.CoverTextureSimple) MultiTileEntityPanelCFoam(gregtech.tileentity.panels.MultiTileEntityPanelCFoam) OreDictItemData(gregapi.oredict.OreDictItemData) MultiTileEntityButtonAdvanced(gregtech.tileentity.redstone.MultiTileEntityButtonAdvanced) ItemStack(net.minecraft.item.ItemStack) MultiTileEntityPanelAsphalt(gregtech.tileentity.panels.MultiTileEntityPanelAsphalt) CoverAsphalt(gregapi.cover.covers.CoverAsphalt)

Example 63 with OreDictItemData

use of gregapi.oredict.OreDictItemData in project gregtech6 by GregTech6.

the class MultiItemRandomTools method addItems.

@Override
public void addItems() {
    IBehavior<MultiItem> tBehaviour;
    IL.Compound_Bronze.set(addItem(0, "Bronze Compound", "Put in Furnace to smelt it", new OreDictItemData(MT.Bronze, U9), TC.stack(TC.METALLUM, 1)));
    IL.Compound_Brass.set(addItem(1, "Brass Compound", "Put in Furnace to smelt it", new OreDictItemData(MT.Brass, U9), TC.stack(TC.METALLUM, 1)));
    IL.Compound_BismuthBronze.set(addItem(2, "Bismuth Bronze Compound", "Put in Furnace to smelt it", new OreDictItemData(MT.BismuthBronze, U9), TC.stack(TC.METALLUM, 1)));
    RM.add_smelting(IL.Compound_Bronze.get(1), OP.nugget.mat(MT.Bronze, 1), F, F, T);
    RM.add_smelting(IL.Compound_Brass.get(1), OP.nugget.mat(MT.Brass, 1), F, F, T);
    RM.add_smelting(IL.Compound_BismuthBronze.get(1), OP.nugget.mat(MT.BismuthBronze, 1), F, F, T);
    IL.Porcelain_Cup_Raw.set(addItem(899, "Modeled Porcelain Cup", "Put in Furnace to harden", new OreDictItemData(MT.Porcelain, U), TC.stack(TC.TERRA, 2), TC.stack(TC.VACUOS, 1)));
    CR.shapeless(OP.dust.mat(MT.Porcelain, 1), CR.DEF_NCC, new Object[] { last() });
    CR.shaped(IL.Porcelain_Cup_Raw.get(1), CR.DEF_NCC, "kPR", 'P', OP.dust.dat(MT.Porcelain), 'R', OreDictToolNames.rollingpin);
    IL.Ceramic_Ingot_Mold_Raw.set(addItem(900, "Clay Ingot Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Chunk_Mold_Raw.set(addItem(901, "Clay Chunk Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Plate_Mold_Raw.set(addItem(902, "Clay Plate Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Tiny_Plate_Mold_Raw.set(addItem(903, "Clay Tiny Plate Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Bolt_Mold_Raw.set(addItem(904, "Clay Bolt Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Rod_Mold_Raw.set(addItem(905, "Clay Rod Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Long_Rod_Mold_Raw.set(addItem(906, "Clay Long Rod Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Item_Casing_Mold_Raw.set(addItem(907, "Clay Item Casing Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Ring_Mold_Raw.set(addItem(908, "Clay Ring Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Gear_Mold_Raw.set(addItem(909, "Clay Gear Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Small_Gear_Mold_Raw.set(addItem(910, "Clay Small Gear Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Sword_Mold_Raw.set(addItem(911, "Clay Sword Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Pickaxe_Mold_Raw.set(addItem(912, "Clay Pickaxe Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Spade_Mold_Raw.set(addItem(913, "Clay Spade Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Shovel_Mold_Raw.set(addItem(914, "Clay Shovel Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Universal_Spade_Mold_Raw.set(addItem(915, "Clay Universal Spade Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Axe_Mold_Raw.set(addItem(916, "Clay Axe Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Double_Axe_Mold_Raw.set(addItem(917, "Clay Double Axe Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Saw_Mold_Raw.set(addItem(918, "Clay Saw Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Hammer_Mold_Raw.set(addItem(919, "Clay Hammer Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_File_Mold_Raw.set(addItem(920, "Clay File Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Screwdriver_Mold_Raw.set(addItem(921, "Clay Screwdriver Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Chisel_Mold_Raw.set(addItem(922, "Clay Chisel Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Arrow_Mold_Raw.set(addItem(923, "Clay Arrow Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Hoe_Mold_Raw.set(addItem(924, "Clay Hoe Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Sense_Mold_Raw.set(addItem(925, "Clay Sense Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Plow_Mold_Raw.set(addItem(926, "Clay Plow Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Builderwand_Mold_Raw.set(addItem(927, "Clay Builder's Wand Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Nugget_Mold_Raw.set(addItem(928, "Clay Nugget Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Billet_Mold_Raw.set(addItem(929, "Clay Billet Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Tap_Raw.set(addItem(987, "Clay Tap", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 3), TC.stack(TC.TERRA, 2), TC.stack(TC.MOTUS, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 3, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Funnel_Raw.set(addItem(988, "Clay Funnel", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 3), TC.stack(TC.TERRA, 2), TC.stack(TC.MOTUS, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 3, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Crucible_Raw.set(addItem(989, "Clay Crucible", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 7), TC.stack(TC.TERRA, 2), TC.stack(TC.IGNIS, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 7, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Basin_Raw.set(addItem(990, "Clay Basin", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Mold_Raw.set(addItem(991, "Clay Mold", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.GELUM, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Faucet_Raw.set(addItem(992, "Clay Faucet", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 3), TC.stack(TC.TERRA, 2), TC.stack(TC.MOTUS, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 3, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Crossing_Raw.set(addItem(993, "Clay Crossing", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.ITER, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Juicer_Raw.set(addItem(994, "Clay Juicer", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 4), TC.stack(TC.TERRA, 2), TC.stack(TC.LIMUS, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 4, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Bowl_Raw.set(addItem(995, "Clay Bowl", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 5), TC.stack(TC.TERRA, 2), TC.stack(TC.PERMUTATIO, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 5, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Ceramic_Jug_Raw.set(addItem(996, "Clay Jug", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 6), TC.stack(TC.TERRA, 2), TC.stack(TC.VACUOS, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 6, 0), CR.DEF_NCC, new Object[] { last() });
    IL.Measuring_Pot_Raw.set(addItem(997, "Clay Measuring Pot", "Put in Furnace to harden", new OreDictItemData(MT.Clay, U * 4), TC.stack(TC.TERRA, 2), TC.stack(TC.VACUOS, 1)));
    CR.shapeless(ST.make(Items.clay_ball, 4, 0), CR.DEF_NCC, new Object[] { last() });
    CR.shaped(IL.Ceramic_Tap_Raw.get(1), CR.DEF_NCC, "CCR", "kC ", 'C', OD.itemClay, 'R', OreDictToolNames.rollingpin);
    CR.shaped(IL.Ceramic_Funnel_Raw.get(1), CR.DEF_NCC, "CRC", "kC ", 'C', OD.itemClay, 'R', OreDictToolNames.rollingpin);
    CR.shaped(IL.Ceramic_Crucible_Raw.get(1), CR.DEF_NCC, "CkC", "CRC", "CCC", 'C', OD.itemClay, 'R', OreDictToolNames.rollingpin);
    CR.shaped(IL.Ceramic_Basin_Raw.get(1), CR.DEF_NCC, "CkC", "CRC", " C ", 'C', OD.itemClay, 'R', OreDictToolNames.rollingpin);
    CR.shaped(IL.Ceramic_Mold_Raw.get(1), CR.DEF_NCC, "C C", "CCC", "k R", 'C', OD.itemClay, 'R', OreDictToolNames.rollingpin);
    CR.shaped(IL.Ceramic_Faucet_Raw.get(1), CR.DEF_NCC, "C C", "kCR", 'C', OD.itemClay, 'R', OreDictToolNames.rollingpin);
    CR.shaped(IL.Ceramic_Crossing_Raw.get(1), CR.DEF_NCC, "kCR", "CCC", " C ", 'C', OD.itemClay, 'R', OreDictToolNames.rollingpin);
    CR.shaped(IL.Juicer_Raw.get(1), CR.DEF_NCC, "kCR", "CCC", 'C', OD.itemClay, 'R', OreDictToolNames.rollingpin);
    CR.shaped(IL.Ceramic_Bowl_Raw.get(1), CR.DEF_NCC, "k R", "C C", "CCC", 'C', OD.itemClay, 'R', OreDictToolNames.rollingpin);
    CR.shaped(IL.Ceramic_Jug_Raw.get(1), CR.DEF_NCC, "kCR", "C C", "CCC", 'C', OD.itemClay, 'R', OreDictToolNames.rollingpin);
    CR.shaped(IL.Measuring_Pot_Raw.get(1), CR.DEF_NCC, "CkC", "CCR", 'C', OD.itemClay, 'R', OreDictToolNames.rollingpin);
    CR.shapeless(IL.Ceramic_Ingot_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, IL.BoP_Mud_Brick });
    CR.shapeless(IL.Ceramic_Ingot_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, IL.ERE_Mud_Brick });
    CR.shapeless(IL.Ceramic_Ingot_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.ingot.dat(MT.UNUSED.Mud) });
    CR.shapeless(IL.Ceramic_Ingot_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.ingot.dat(MT.Brick) });
    CR.shapeless(IL.Ceramic_Plate_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OD.paneGlass });
    CR.shapeless(IL.Ceramic_Plate_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OD.plankAnyWood });
    CR.shapeless(IL.Ceramic_Arrow_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OD.itemFlint });
    CR.shapeless(IL.Ceramic_Arrow_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, Items.arrow });
    CR.shapeless(IL.Ceramic_Sword_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, Items.wooden_sword });
    CR.shapeless(IL.Ceramic_Pickaxe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, Items.wooden_pickaxe });
    CR.shapeless(IL.Ceramic_Shovel_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, Items.wooden_shovel });
    CR.shapeless(IL.Ceramic_Axe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, Items.wooden_axe });
    CR.shapeless(IL.Ceramic_Hoe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, Items.wooden_hoe });
    CR.shapeless(IL.Ceramic_Sword_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.SWORD) });
    CR.shapeless(IL.Ceramic_Pickaxe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.PICKAXE) });
    CR.shapeless(IL.Ceramic_Pickaxe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.GEM_PICK) });
    CR.shapeless(IL.Ceramic_Pickaxe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.CONSTRUCTION_PICK) });
    CR.shapeless(IL.Ceramic_Spade_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.SPADE) });
    CR.shapeless(IL.Ceramic_Shovel_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.SHOVEL) });
    CR.shapeless(IL.Ceramic_Universal_Spade_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.UNIVERSALSPADE) });
    CR.shapeless(IL.Ceramic_Axe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.AXE) });
    CR.shapeless(IL.Ceramic_Double_Axe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.DOUBLE_AXE) });
    CR.shapeless(IL.Ceramic_Saw_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.SAW) });
    CR.shapeless(IL.Ceramic_Hammer_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.SOFTHAMMER) });
    CR.shapeless(IL.Ceramic_Hammer_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.HARDHAMMER) });
    CR.shapeless(IL.Ceramic_File_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.FILE) });
    CR.shapeless(IL.Ceramic_Screwdriver_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.SCREWDRIVER) });
    CR.shapeless(IL.Ceramic_Chisel_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.CHISEL) });
    CR.shapeless(IL.Ceramic_Hoe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.HOE) });
    CR.shapeless(IL.Ceramic_Sense_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.SENSE) });
    CR.shapeless(IL.Ceramic_Plow_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.PLOW) });
    CR.shapeless(IL.Ceramic_Builderwand_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, ToolsGT.sMetaTool.make(ToolsGT.BUILDERWAND) });
    for (OreDictMaterial tMat : new OreDictMaterial[] { ANY.WoodPlastic, ANY.Stone, MT.Glass, ANY.Wax, ANY.Iron, ANY.Cu, MT.Sn, MT.Zn, MT.Pb, MT.Bi, MT.Brass, MT.Bronze, MT.BismuthBronze, MT.Au }) {
        CR.shapeless(IL.Ceramic_Ingot_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.ingot.dat(tMat) });
        CR.shapeless(IL.Ceramic_Billet_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.billet.dat(tMat) });
        CR.shapeless(IL.Ceramic_Chunk_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.chunkGt.dat(tMat) });
        CR.shapeless(IL.Ceramic_Nugget_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.nugget.dat(tMat) });
        CR.shapeless(IL.Ceramic_Plate_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.plate.dat(tMat) });
        CR.shapeless(IL.Ceramic_Plate_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.plateGem.dat(tMat) });
        CR.shapeless(IL.Ceramic_Tiny_Plate_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.plateTiny.dat(tMat) });
        CR.shapeless(IL.Ceramic_Tiny_Plate_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.plateGemTiny.dat(tMat) });
        CR.shapeless(IL.Ceramic_Bolt_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.bolt.dat(tMat) });
        CR.shapeless(IL.Ceramic_Rod_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.stick.dat(tMat) });
        CR.shapeless(IL.Ceramic_Long_Rod_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.stick.dat(tMat), OP.stick.dat(tMat) });
        CR.shapeless(IL.Ceramic_Long_Rod_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.stickLong.dat(tMat) });
        CR.shapeless(IL.Ceramic_Item_Casing_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.casingSmall.dat(tMat) });
        CR.shapeless(IL.Ceramic_Ring_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.ring.dat(tMat) });
        CR.shapeless(IL.Ceramic_Gear_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.gearGt.dat(tMat) });
        CR.shapeless(IL.Ceramic_Small_Gear_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.gearGtSmall.dat(tMat) });
        CR.shapeless(IL.Ceramic_Sword_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadSword.dat(tMat) });
        CR.shapeless(IL.Ceramic_Sword_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadRawSword.dat(tMat) });
        CR.shapeless(IL.Ceramic_Pickaxe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadPickaxe.dat(tMat) });
        CR.shapeless(IL.Ceramic_Pickaxe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadRawPickaxe.dat(tMat) });
        CR.shapeless(IL.Ceramic_Spade_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadSpade.dat(tMat) });
        CR.shapeless(IL.Ceramic_Spade_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadRawSpade.dat(tMat) });
        CR.shapeless(IL.Ceramic_Shovel_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadShovel.dat(tMat) });
        CR.shapeless(IL.Ceramic_Shovel_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadRawShovel.dat(tMat) });
        CR.shapeless(IL.Ceramic_Universal_Spade_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadUniversalSpade.dat(tMat) });
        CR.shapeless(IL.Ceramic_Universal_Spade_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadRawUniversalSpade.dat(tMat) });
        CR.shapeless(IL.Ceramic_Axe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadAxe.dat(tMat) });
        CR.shapeless(IL.Ceramic_Axe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadRawAxe.dat(tMat) });
        CR.shapeless(IL.Ceramic_Double_Axe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadAxe.dat(tMat), OP.toolHeadAxe.dat(tMat) });
        CR.shapeless(IL.Ceramic_Double_Axe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadRawAxe.dat(tMat), OP.toolHeadRawAxe.dat(tMat) });
        CR.shapeless(IL.Ceramic_Double_Axe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadAxeDouble.dat(tMat) });
        CR.shapeless(IL.Ceramic_Double_Axe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadRawAxeDouble.dat(tMat) });
        CR.shapeless(IL.Ceramic_Saw_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadSaw.dat(tMat) });
        CR.shapeless(IL.Ceramic_Saw_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadRawSaw.dat(tMat) });
        CR.shapeless(IL.Ceramic_Hammer_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadHammer.dat(tMat) });
        CR.shapeless(IL.Ceramic_File_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadFile.dat(tMat) });
        CR.shapeless(IL.Ceramic_Screwdriver_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadScrewdriver.dat(tMat) });
        CR.shapeless(IL.Ceramic_Chisel_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadChisel.dat(tMat) });
        CR.shapeless(IL.Ceramic_Chisel_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadRawChisel.dat(tMat) });
        CR.shapeless(IL.Ceramic_Arrow_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadArrow.dat(tMat) });
        CR.shapeless(IL.Ceramic_Arrow_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadRawArrow.dat(tMat) });
        CR.shapeless(IL.Ceramic_Hoe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadHoe.dat(tMat) });
        CR.shapeless(IL.Ceramic_Hoe_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadRawHoe.dat(tMat) });
        CR.shapeless(IL.Ceramic_Sense_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadSense.dat(tMat) });
        CR.shapeless(IL.Ceramic_Sense_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadRawSense.dat(tMat) });
        CR.shapeless(IL.Ceramic_Plow_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadPlow.dat(tMat) });
        CR.shapeless(IL.Ceramic_Plow_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadRawPlow.dat(tMat) });
        CR.shapeless(IL.Ceramic_Builderwand_Mold_Raw.get(1), CR.DEF_NCC, new Object[] { IL.Ceramic_Mold_Raw, OP.toolHeadBuilderwand.dat(tMat) });
    }
    IL.Food_Can_Empty.set(addItem(998, "Empty Food Can", "Used for canning Food", new OreDictItemData(MT.TinAlloy, OP.plateCurved.mAmount), TC.stack(TC.VACUOS, 1), TC.stack(TC.FABRICO, 1)));
    IL.Spray_Empty.set(addItem(999, "Empty Spray Can", "Used for making Sprays", new OreDictItemData(MT.Sn, OP.plateCurved.mAmount, MT.Redstone, OP.dust.mAmount), TC.stack(TC.VACUOS, 1), TC.stack(TC.MOTUS, 1)));
    RM.RollBender.addRecipe1(T, 16, 64, OP.plateCurved.mat(MT.TinAlloy, 1), IL.Food_Can_Empty.get(1));
    // TODO RA.addAssemblerRecipe(OP.dust.mat(MT.Redstone, 1), OP.cell.mat(MT.Empty, 1), IL.Spray_Empty.get(1), 800, 1);
    CR.shaped(IL.Food_Can_Empty.get(1), CR.DEF_NCC, "fh", "oP", 'P', OP.plateCurved.dat(MT.TinAlloy));
    CR.shaped(IL.Spray_Empty.get(1), CR.DEF_NCC, "Rf", "Cs", 'R', OD.itemRedstone, 'C', OP.plateCurved.dat(MT.Sn));
    for (byte i = 0; i < 16; i++) {
        IL.SPRAY_CAN_DYES[i].set(addItem(1000 + 2 * i, "Spray Paint (" + DYE_NAMES[i] + ")", "Full", TC.stack(TC.SENSUS, 4)));
        IL.SPRAY_CAN_DYES_USED[i].set(addItem(mLastID + 1, "Spray Paint (" + DYE_NAMES[i] + ")", "Used", TC.stack(TC.SENSUS, 3), TD.Creative.HIDDEN));
        tBehaviour = new Behavior_Spray_Color(IL.Spray_Empty.get(1), IL.SPRAY_CAN_DYES_USED[i].get(1), IL.SPRAY_CAN_DYES[i].get(1), 512, i);
        addItemBehavior(mLastID, tBehaviour);
        addItemBehavior(mLastID - 1, tBehaviour);
        RM.Canner.addRecipe1(T, 16, 256, IL.Spray_Empty.get(1), FL.mul(DYE_FLUIDS_CHEMICAL[i], 16), NF, IL.SPRAY_CAN_DYES[i].get(1));
        ItemsGT.addNEIRedirects(IL.SPRAY_CAN_DYES_USED[i].get(1), IL.SPRAY_CAN_DYES[i].get(1));
        RM.Other.addFakeRecipe(F, ST.array(IL.SPRAY_CAN_DYES[i].get(1), IL.SPRAY_CAN_DYES_USED[i].get(1), ST.make(Blocks.wool, 1, 0), ST.make(Blocks.glass_pane, 1, 0), ST.make(Blocks.glass, 1, 0), ST.make(Blocks.hardened_clay, 1, 0)), ST.array(NI, NI, ST.make(Blocks.wool, 1, 15 - i), ST.make(Blocks.stained_glass_pane, 1, 15 - i), ST.make(Blocks.stained_glass, 1, 15 - i), ST.make(Blocks.stained_hardened_clay, 1, 15 - i)), null, ZL_LONG, ZL_FS, ZL_FS, 0, 0, 0);
        IL.SPRAY_CAN_FOAM[i].set(addItem(1100 + 2 * i, "C-Foam Spray (" + DYE_NAMES[i] + ")", "Full", TC.stack(TC.TERRA, 2), TC.stack(TC.FABRICO, 2)));
        IL.SPRAY_CAN_FOAM_USED[i].set(addItem(mLastID + 1, "C-Foam Spray (" + DYE_NAMES[i] + ")", "Used", TC.stack(TC.TERRA, 1), TC.stack(TC.FABRICO, 1), TD.Creative.HIDDEN));
        tBehaviour = new Behavior_Spray_Foam(IL.Spray_Empty.get(1), IL.SPRAY_CAN_FOAM_USED[i].get(1), IL.SPRAY_CAN_FOAM[i].get(1), 256, i, F);
        addItemBehavior(mLastID, tBehaviour);
        addItemBehavior(mLastID - 1, tBehaviour);
        RM.Canner.addRecipe1(T, 16, 256, IL.Spray_Empty.get(1), FL.mul(DYED_C_FOAMS[i], 256), NF, IL.SPRAY_CAN_FOAM[i].get(1));
        ItemsGT.addNEIRedirects(IL.SPRAY_CAN_FOAM_USED[i].get(1), IL.SPRAY_CAN_FOAM[i].get(1), ST.make(BlocksGT.CFoamFresh, 1, i), ST.make(BlocksGT.CFoam, 1, i));
        RM.Other.addFakeRecipe(F, ST.array(IL.SPRAY_CAN_FOAM[i].get(1), IL.SPRAY_CAN_FOAM_USED[i].get(1)), ST.array(ST.make(BlocksGT.CFoamFresh, 1, i), ST.make(BlocksGT.CFoam, 1, i)), null, ZL_LONG, ZL_FS, ZL_FS, 0, 0, 0);
        IL.SPRAY_CAN_FOAM_OWNED[i].set(addItem(1132 + 2 * i, "Advanced C-Foam Spray (" + DYE_NAMES[i] + ")", "Full (C-Foam only breakable by Owner once dry)", TC.stack(TC.TERRA, 2), TC.stack(TC.FABRICO, 2), TC.stack(TC.SPIRITUS, 2)));
        IL.SPRAY_CAN_FOAM_OWNED_USED[i].set(addItem(mLastID + 1, "Advanced C-Foam Spray (" + DYE_NAMES[i] + ")", "Used (C-Foam only breakable by Owner once dry)", TC.stack(TC.TERRA, 1), TC.stack(TC.FABRICO, 1), TC.stack(TC.SPIRITUS, 1), TD.Creative.HIDDEN));
        tBehaviour = new Behavior_Spray_Foam(IL.Spray_Empty.get(1), IL.SPRAY_CAN_FOAM_OWNED_USED[i].get(1), IL.SPRAY_CAN_FOAM_OWNED[i].get(1), 256, i, T);
        addItemBehavior(mLastID, tBehaviour);
        addItemBehavior(mLastID - 1, tBehaviour);
        RM.Canner.addRecipe1(T, 16, 256, IL.Spray_Empty.get(1), FL.mul(DYED_C_FOAMS_OWNED[i], 256), NF, IL.SPRAY_CAN_FOAM_OWNED[i].get(1));
        ItemsGT.addNEIRedirects(IL.SPRAY_CAN_FOAM_OWNED_USED[i].get(1), IL.SPRAY_CAN_FOAM_OWNED[i].get(1));
        RM.Other.addFakeRecipe(F, ST.array(IL.SPRAY_CAN_FOAM_OWNED[i].get(1), IL.SPRAY_CAN_FOAM_OWNED_USED[i].get(1)), ST.array(ST.make(BlocksGT.CFoamFresh, 1, i, "Player-Owned C-Foam"), ST.make(BlocksGT.CFoam, 1, i, "Player-Owned C-Foam")), null, ZL_LONG, ZL_FS, ZL_FS, 0, 0, 0);
    }
    IL.Spray_Color_Remover.set(addItem(1096, "Paint Removal Spray", "Full", TC.stack(TC.SENSUS, 2), TC.stack(TC.PERDITIO, 2)));
    IL.Spray_Color_Remover_Used.set(addItem(1097, "Paint Removal Spray", "Used", TC.stack(TC.SENSUS, 1), TC.stack(TC.PERDITIO, 1), TD.Creative.HIDDEN));
    tBehaviour = new Behavior_Spray_Color_Remover(IL.Spray_Empty.get(1), IL.Spray_Color_Remover_Used.get(1), IL.Spray_Color_Remover.get(1), 256);
    addItemBehavior(1096, tBehaviour);
    addItemBehavior(1097, tBehaviour);
    RM.Canner.addRecipe1(T, 16, 256, IL.Spray_Empty.get(1), MT.Cl.fluid(16 * U, T), NF, IL.Spray_Color_Remover.get(1));
    ItemsGT.addNEIRedirects(IL.Spray_Color_Remover_Used.get(1), IL.Spray_Color_Remover.get(1));
    IL.Spray_Foam_Remover.set(addItem(1196, "C-Foam Removal Spray", "Full", TC.stack(TC.TERRA, 2), TC.stack(TC.PERDITIO, 2)));
    IL.Spray_Foam_Remover_Used.set(addItem(1197, "C-Foam Removal Spray", "Used", TC.stack(TC.TERRA, 1), TC.stack(TC.PERDITIO, 1), TD.Creative.HIDDEN));
    tBehaviour = new Behavior_Spray_Foam_Remover(IL.Spray_Empty.get(1), IL.Spray_Foam_Remover_Used.get(1), IL.Spray_Foam_Remover.get(1), 256);
    addItemBehavior(1196, tBehaviour);
    addItemBehavior(1197, tBehaviour);
    RM.Canner.addRecipe1(T, 16, 256, IL.Spray_Empty.get(1), MT.H2SO4.fluid(16 * U, T), NF, IL.Spray_Foam_Remover.get(1));
    RM.Canner.addRecipe1(T, 16, 256, IL.Spray_Empty.get(1), MT.HNO3.fluid(16 * U, T), NF, IL.Spray_Foam_Remover.get(1));
    ItemsGT.addNEIRedirects(IL.Spray_Foam_Remover_Used.get(1), IL.Spray_Foam_Remover.get(1));
    IL.Spray_Foam_Hardener.set(addItem(1198, "Hardening Spray", "Full", TC.stack(TC.TERRA, 2), TC.stack(TC.TUTAMEN, 2)));
    IL.Spray_Foam_Hardener_Used.set(addItem(1199, "Hardening Spray", "Used", TC.stack(TC.TERRA, 1), TC.stack(TC.TUTAMEN, 1), TD.Creative.HIDDEN));
    tBehaviour = new Behavior_Spray_Foam_Hardener(IL.Spray_Empty.get(1), IL.Spray_Foam_Hardener_Used.get(1), IL.Spray_Foam_Hardener.get(1), 256);
    addItemBehavior(1198, tBehaviour);
    addItemBehavior(1199, tBehaviour);
    RM.Canner.addRecipe2(T, 16, 256, ST.make(Blocks.sand, 7, W), IL.Spray_Empty.get(1), IL.Spray_Foam_Hardener.get(1));
    for (OreDictMaterial tMat : ANY.SiO2.mToThis) for (ItemStack tDust : ST.array(OP.dust.mat(tMat, 63), OP.blockDust.mat(tMat, 7))) if (ST.valid(tDust))
        RM.Canner.addRecipe2(T, 16, 256, tDust, IL.Spray_Empty.get(1), IL.Spray_Foam_Hardener.get(1));
    ItemsGT.addNEIRedirects(IL.Spray_Foam_Hardener_Used.get(1), IL.Spray_Foam_Hardener.get(1));
    IL.Spray_Extinguisher.set(addItem(1998, "Fire Extinguisher (CO2)", "Full", TC.stack(TC.PERDITIO, 2), TC.stack(TC.IGNIS, 2)));
    IL.Spray_Extinguisher_Used.set(addItem(1999, "Fire Extinguisher (CO2)", "Used", TC.stack(TC.PERDITIO, 1), TC.stack(TC.IGNIS, 1), TD.Creative.HIDDEN));
    tBehaviour = new Behavior_Spray_Extinguisher(IL.Spray_Empty.get(1), IL.Spray_Extinguisher_Used.get(1), IL.Spray_Extinguisher.get(1), 256);
    addItemBehavior(1998, tBehaviour);
    addItemBehavior(1999, tBehaviour);
    RM.Canner.addRecipe1(T, 16, 256, IL.Spray_Empty.get(1), MT.CO2.fluid(16 * U, T), NF, IL.Spray_Extinguisher.get(1));
    ItemsGT.addNEIRedirects(IL.Spray_Extinguisher_Used.get(1), IL.Spray_Extinguisher.get(1));
    OreDictMaterial[] tBucketMaterials = new OreDictMaterial[] { ANY.Cu, MT.Sn, MT.Zn, MT.Pb, MT.Bi, MT.Brass, MT.Bronze, MT.BismuthBronze, MT.Au };
    for (int i = 0; i < 9; i++) {
        OreDictItemData tData = new OreDictItemData(ANY.Wood, U * 3, OM.stack(tBucketMaterials[i], U * 1));
        ItemStack tBucket = addItem(2000 + i * 100, "Wooden Bucket", "Empty", TC.stack(TC.ARBOR, 2), TC.stack(TC.VACUOS, 2), Behavior_Bucket_Simple.INSTANCE, tData);
        CR.shaped(tBucket, CR.DEF_NCC, "WPW", " Wh", 'P', OP.plate.dat(tBucketMaterials[i]), 'W', OD.plankAnyWood);
        ItemsGT.addNEIRedirects(tBucket, addItem(mLastID + 1, "Wooden Bucket", "Water", TC.stack(TC.ARBOR, 2), TC.stack(TC.AQUA, 2), new Behavior_Bucket_Simple(ST.make(Items.water_bucket, 1, 0)), tData.copy(), FL.Water.make(1000), FL.DistW.make(1000), FL.River_Water.make(1000), FL.Mineralwater.make(1000), FL.Mineralsoda.make(1000), FL.Soda.make(1000), FL.Water_Hot.make(1000), FL.Water_Boiling.make(1000), FL.Water_Geothermal.make(1000), OD.container1000water), addItem(mLastID + 1, "Wooden Bucket", "Milk (you cannot drink out of Buckets!)", TC.stack(TC.ARBOR, 2), TC.stack(TC.SANO, 2), new Behavior_Bucket_Simple(ST.make(Items.milk_bucket, 1, 0)), tData.copy(), FL.Milk.make(1000), FL.MilkGrC.make(1000), OD.container1000milk), addItem(mLastID + 1, "Wooden Bucket", "Latex", TC.stack(TC.ARBOR, 2), TC.stack(TC.LIMUS, 2), Behavior_Bucket_Simple.INSTANCE, tData.copy(), FL.Latex.make(1000), FL.make("molten.latex", 1000), OD.container1000latex), addItem(mLastID + 1, "Wooden Bucket", "Creosote Oil", TC.stack(TC.ARBOR, 2), TC.stack(TC.IGNIS, 2), new Behavior_Bucket_Simple(IL.RC_Creosote_Bucket.get(1)), tData.copy(), FL.Oil_Creosote.make(1000), OD.container1000creosote), addItem(mLastID + 1, "Wooden Bucket", "Sea Water (you cannot place this!)", TC.stack(TC.ARBOR, 2), TC.stack(TC.TEMPESTAS, 2), new Behavior_Switch_Metadata(2000 + i * 100, F, F), tData.copy(), FL.Ocean.make(1000), FL.OceanGrC.make(1000), FL.Tropics_Water.make(1000)), addItem(mLastID + 1, "Wooden Bucket", "Rubber Tree Sap", TC.stack(TC.ARBOR, 2), TC.stack(TC.LIMUS, 2), Behavior_Bucket_Simple.INSTANCE, tData.copy(), FL.Resin_Rubber.make(1000), OD.container1000rubbertreesap), addItem(mLastID + 1, "Wooden Bucket", "Spruce Tree Resin", TC.stack(TC.ARBOR, 3), TC.stack(TC.LIMUS, 1), Behavior_Bucket_Simple.INSTANCE, tData.copy(), FL.Resin_Spruce.make(1000), OD.container1000spruceresin), addItem(mLastID + 1, "Wooden Bucket", "Honey", TC.stack(TC.ARBOR, 3), TC.stack(TC.BESTIA, 1), new Behavior_Bucket_Simple(ST.make(MD.ERE, "bucketHoney", 1, 0, IL.FR_Honey_Bucket)), tData.copy(), FL.Honey.make(1000), FL.HoneyGrC.make(1000), FL.HoneyBoP.make(1000), OD.container1000honey), addItem(mLastID + 1, "Wooden Bucket", "Dirty Water (you cannot place this!)", TC.stack(TC.ARBOR, 2), TC.stack(TC.AQUA, 1), TC.stack(TC.VENENUM, 1), new Behavior_Switch_Metadata(2000 + i * 100, F, F), tData.copy(), FL.Dirty_Water.make(1000)), addItem(mLastID + 1, "Wooden Bucket", "Lubricant", TC.stack(TC.ARBOR, 2), TC.stack(TC.LIMUS, 2), Behavior_Bucket_Simple.INSTANCE, tData.copy(), FL.LubRoCant.make(1000), FL.Lubricant.make(1000), OD.container1000lubricant), addItem(mLastID + 1, "Wooden Bucket", "Milk (you cannot drink out of Buckets!)", TC.stack(TC.ARBOR, 2), TC.stack(TC.VENENUM, 2), Behavior_Bucket_Simple.INSTANCE, tData.copy(), FL.Milk_Spoiled.make(1000)), addItem(mLastID + 1, "Wooden Bucket", "Maple Sap", TC.stack(TC.ARBOR, 2), TC.stack(TC.FAMES, 2), Behavior_Bucket_Simple.INSTANCE, tData.copy(), FL.Sap_Maple.make(1000), OD.container1000maplesap), addItem(mLastID + 1, "Wooden Bucket", "Rainbow Sap", TC.stack(TC.ARBOR, 2), TC.stack(TC.AURAM, 2), Behavior_Bucket_Simple.INSTANCE, tData.copy(), FL.Sap_Rainbow.make(1000), OD.container1000rainbowsap), addItem(mLastID + 1, "Wooden Bucket", "Soy Milk", TC.stack(TC.ARBOR, 2), TC.stack(TC.HERBA, 2), Behavior_Bucket_Simple.INSTANCE, tData.copy(), FL.MilkSoy.make(1000), OD.container1000soymilk), addItem(mLastID + 1, "Wooden Bucket", "Glue", TC.stack(TC.ARBOR, 2), TC.stack(TC.LIMUS, 2), Behavior_Bucket_Simple.INSTANCE, tData.copy(), FL.Glue.make(1000), OD.container1000glue), addItem(mLastID + 1, "Wooden Bucket", "Spectral Dew", TC.stack(TC.ARBOR, 2), TC.stack(TC.SPIRITUS, 2), new Behavior_Bucket_Simple(IL.NeLi_Bucket_Spectral_Dew.get(1)), tData.copy(), FL.SpDew.make(1000), OD.container1000water), addItem(mLastID + 1, "Wooden Bucket", "Seed Oil", TC.stack(TC.ARBOR, 3), TC.stack(TC.GRANUM, 1), new Behavior_Bucket_Simple(IL.FR_SeedOil_Bucket.get(1)), tData.copy(), FL.Oil_Seed.make(1000), FL.Oil_Lin.make(1000), FL.Oil_Hemp.make(1000), FL.Oil_Olive.make(1000), FL.Oil_Sunflower.make(1000), FL.Oil_Nut.make(1000), OD.container1000seedoil));
    }
    IL.Wooden_Bucket_Copper.set(this, 2000);
    IL.Wooden_Bucket_Tin.set(this, 2100);
    IL.Wooden_Bucket_Zinc.set(this, 2200);
    IL.Wooden_Bucket_Lead.set(this, 2300);
    IL.Wooden_Bucket_Bismuth.set(this, 2400);
    IL.Wooden_Bucket_Brass.set(this, 2500);
    IL.Wooden_Bucket_Bronze.set(this, 2600);
    IL.Wooden_Bucket_BismuthBronze.set(this, 2700);
    IL.Wooden_Bucket_Gold.set(this, 2800);
    IL.Tool_Matches.set(addItem(5000, "Match", "", new Behavior_Lighter(9000), TC.stack(TC.IGNIS, 1), TC.stack(TC.VACUOS, 1), OD.craftingFirestarter));
    for (OreDictMaterial tWood : ANY.Wood.mToThis) {
        RM.Assembler.addRecipe2(T, 16, 16, OP.bolt.mat(tWood, 1), OP.dustSmall.mat(MT.P, 1), IL.Tool_Matches.get(1));
        RM.Assembler.addRecipe2(T, 16, 64, OP.bolt.mat(tWood, 4), OP.dust.mat(MT.P, 1), IL.Tool_Matches.get(4));
        for (OreDictMaterial tPhosphorus : ANY.Phosphorus.mToThis) {
            RM.Assembler.addRecipe2(T, 16, 16, OP.bolt.mat(tWood, 1), OP.dustSmall.mat(tPhosphorus, 1), IL.Tool_Matches.get(1));
            RM.Assembler.addRecipe2(T, 16, 64, OP.bolt.mat(tWood, 4), OP.dust.mat(tPhosphorus, 1), IL.Tool_Matches.get(4));
        }
    }
    CR.shaped(IL.Tool_Matches.get(1), CR.DEF, "P", "S", 'P', OP.dustSmall.dat(MT.P), 'S', OP.bolt.dat(ANY.Wood));
    CR.shaped(IL.Tool_Matches.get(1), CR.DEF, "P", "S", 'P', OP.dustSmall.dat(ANY.Phosphorus), 'S', OP.bolt.dat(ANY.Wood));
    CR.shaped(IL.Tool_Matches.get(4), CR.DEF, " S ", "SPS", " S ", 'P', OP.dust.dat(MT.P), 'S', OP.bolt.dat(ANY.Wood));
    CR.shaped(IL.Tool_Matches.get(4), CR.DEF, " S ", "SPS", " S ", 'P', OP.dust.dat(ANY.Phosphorus), 'S', OP.bolt.dat(ANY.Wood));
    IL.Tool_MatchBox_Used.set(addItem(5002, "Match Box", "This is not a Car", TC.stack(TC.IGNIS, 2), TC.stack(TC.POTENTIA, 1), OD.craftingFirestarter, TD.Creative.HIDDEN));
    IL.Tool_MatchBox_Full.set(addItem(5003, "Match Box (Full)", "This is not a Car", TC.stack(TC.IGNIS, 1), TC.stack(TC.POTENTIA, 2), OD.craftingFirestarter));
    tBehaviour = new Behavior_Lighter(null, IL.Tool_MatchBox_Used.get(1), IL.Tool_MatchBox_Full.get(1), 64, 9000);
    addItemBehavior(5002, tBehaviour);
    addItemBehavior(5003, tBehaviour);
    ItemsGT.addNEIRedirects(IL.Tool_Matches.get(1), IL.Tool_MatchBox_Used.get(1), IL.Tool_MatchBox_Full.get(1));
    RM.Boxinator.addRecipe2(T, 16, 64, IL.Tool_Matches.get(64), OP.plateDouble.mat(MT.Paper, 1), IL.Tool_MatchBox_Full.get(1));
    RM.Unboxinator.addRecipe1(T, 16, 32, IL.Tool_MatchBox_Full.get(1), IL.Tool_Matches.get(64), OP.scrapGt.mat(MT.Paper, 16));
    IL.Tool_Lighter_Invar_Empty.set(addItem(5004, "Lighter (Empty)", "Requires Canning Machine to be filled", new OreDictItemData(MT.Invar, OP.plateCurved.mAmount * 2), TC.stack(TC.IGNIS, 1), TC.stack(TC.VACUOS, 1)));
    IL.Tool_Lighter_Invar_Used.set(addItem(5005, "Lighter", "", new OreDictItemData(MT.Invar, OP.plateCurved.mAmount * 2), TC.stack(TC.IGNIS, 2), TC.stack(TC.POTENTIA, 1), OD.craftingFirestarter, TD.Creative.HIDDEN));
    IL.Tool_Lighter_Invar_Full.set(addItem(5006, "Lighter (Full)", "", new OreDictItemData(MT.Invar, OP.plateCurved.mAmount * 2), TC.stack(TC.IGNIS, 1), TC.stack(TC.POTENTIA, 2), OD.craftingFirestarter));
    tBehaviour = new Behavior_Lighter(IL.Tool_Lighter_Invar_Empty.get(1), IL.Tool_Lighter_Invar_Used.get(1), IL.Tool_Lighter_Invar_Full.get(1), 100, 10000);
    addItemBehavior(5005, tBehaviour);
    addItemBehavior(5006, tBehaviour);
    RM.Canner.addRecipe1(T, 16, 16, IL.Tool_Lighter_Invar_Empty.get(1), FL.Butane.make(100), NF, IL.Tool_Lighter_Invar_Full.get(1));
    ItemsGT.addNEIRedirects(IL.Tool_Lighter_Invar_Empty.get(1), IL.Tool_Lighter_Invar_Used.get(1), IL.Tool_Lighter_Invar_Full.get(1));
    IL.Tool_Lighter_Platinum_Empty.set(addItem(5007, "Shiny Lighter (Empty)", "Requires Canning Machine to be filled", new OreDictItemData(MT.Pt, OP.plateCurved.mAmount * 2), TC.stack(TC.IGNIS, 1), TC.stack(TC.NEBRISUM, 1), TC.stack(TC.VACUOS, 1)));
    IL.Tool_Lighter_Platinum_Used.set(addItem(5008, "Shiny Lighter", "A known Master of Pranks is engraved on it", new OreDictItemData(MT.Pt, OP.plateCurved.mAmount * 2), TC.stack(TC.IGNIS, 2), TC.stack(TC.NEBRISUM, 1), TC.stack(TC.POTENTIA, 1), OD.craftingFirestarter, TD.Creative.HIDDEN));
    IL.Tool_Lighter_Platinum_Full.set(addItem(5009, "Shiny Lighter (Full)", "A known Master of Pranks is engraved on it", new OreDictItemData(MT.Pt, OP.plateCurved.mAmount * 2), TC.stack(TC.IGNIS, 1), TC.stack(TC.NEBRISUM, 1), TC.stack(TC.POTENTIA, 2), OD.craftingFirestarter));
    tBehaviour = new Behavior_Lighter(IL.Tool_Lighter_Platinum_Empty.get(1), IL.Tool_Lighter_Platinum_Used.get(1), IL.Tool_Lighter_Platinum_Full.get(1), 1000, 10000);
    addItemBehavior(5008, tBehaviour);
    addItemBehavior(5009, tBehaviour);
    RM.Canner.addRecipe1(T, 16, 64, IL.Tool_Lighter_Platinum_Empty.get(1), FL.Butane.make(1000), NF, IL.Tool_Lighter_Platinum_Full.get(1));
    ItemsGT.addNEIRedirects(IL.Tool_Lighter_Platinum_Empty.get(1), IL.Tool_Lighter_Platinum_Used.get(1), IL.Tool_Lighter_Platinum_Full.get(1));
    IL.Tool_Lighter_Plastic_Empty.set(addItem(5010, "Plastic Lighter (Empty)", "Requires Canning Machine to be filled", new OreDictItemData(MT.Plastic, OP.plateCurved.mAmount * 2, ANY.Fe, OP.screw.mAmount), TC.stack(TC.IGNIS, 1), TC.stack(TC.VACUOS, 1)));
    IL.Tool_Lighter_Plastic_Used.set(addItem(5011, "Plastic Lighter", "", new OreDictItemData(MT.Plastic, OP.plateCurved.mAmount * 2, ANY.Fe, OP.screw.mAmount), TC.stack(TC.IGNIS, 2), TC.stack(TC.POTENTIA, 1), OD.craftingFirestarter, TD.Creative.HIDDEN));
    IL.Tool_Lighter_Plastic_Full.set(addItem(5012, "Plastic Lighter (Full)", "", new OreDictItemData(MT.Plastic, OP.plateCurved.mAmount * 2, ANY.Fe, OP.screw.mAmount), TC.stack(TC.IGNIS, 1), TC.stack(TC.POTENTIA, 2), OD.craftingFirestarter));
    IL.Tool_Lighter_Plastic_Broken.set(addItem(5013, "Plastic Lighter (Broken)", "", new OreDictItemData(MT.Plastic, OP.plateCurved.mAmount * 2, ANY.Fe, OP.screw.mAmount), TC.stack(TC.IGNIS, 1), TC.stack(TC.PERDITIO, 1), TD.Creative.HIDDEN));
    tBehaviour = new Behavior_Lighter(IL.Tool_Lighter_Plastic_Broken.get(1), IL.Tool_Lighter_Plastic_Used.get(1), IL.Tool_Lighter_Plastic_Full.get(1), 100, 9000);
    addItemBehavior(5011, tBehaviour);
    addItemBehavior(5012, tBehaviour);
    CR.shaped(IL.Tool_Lighter_Plastic_Empty.get(1), CR.DEF_NCC, "IF", "dP", "xP", 'F', OD.itemFlint, 'P', OP.plateCurved.dat(MT.Plastic), 'I', OP.screw.dat(ANY.Iron));
    RM.Canner.addRecipe1(T, 16, 16, IL.Tool_Lighter_Plastic_Empty.get(1), FL.Butane.make(100), NF, IL.Tool_Lighter_Plastic_Full.get(1));
    ItemsGT.addNEIRedirects(IL.Tool_Lighter_Plastic_Empty.get(1), IL.Tool_Lighter_Plastic_Used.get(1), IL.Tool_Lighter_Plastic_Full.get(1), IL.Tool_Lighter_Plastic_Broken.get(1));
    IL.Tool_Fire_Starter.set(addItem(5014, "Fire Starter", "(Made with Dry Grass)", new OreDictItemData(ANY.Wood, U), new Behavior_Lighter(5000), TC.stack(TC.IGNIS, 1), TC.stack(TC.ARBOR, 1), TC.stack(TC.HERBA, 1), OD.craftingFirestarter));
    CR.shaped(IL.Tool_Fire_Starter.get(1), CR.DEF_NCC_MIR, "S ", "GS", 'S', OP.stick.dat(ANY.Wood), 'G', OD.itemGrassDry);
    IL.Tool_Fire_Starter_Bark.set(addItem(5015, "Fire Starter", "(Made with Dry Tree Bark)", new OreDictItemData(ANY.Wood, U), new Behavior_Lighter(5500), TC.stack(TC.IGNIS, 1), TC.stack(TC.ARBOR, 2), OD.craftingFirestarter));
    CR.shaped(IL.Tool_Fire_Starter_Bark.get(1), CR.DEF_NCC_MIR, "S ", "GS", 'S', OP.stick.dat(ANY.Wood), 'G', OD.itemBarkDry);
    IL.Pellet_Wood.set(addItem(5999, "Wood Pellet", "", new OreDictItemData(ANY.Wood, U), TICKS_PER_SMELT, TC.stack(TC.POTENTIA, 1)));
    RM.Mixer.addRecipe1(T, 16, 16, OM.dust(MT.LiveRoot, U2), FL.Glue.make(125), NF, IL.Pellet_Wood.get(1));
    RM.Mixer.addRecipe1(T, 16, 32, OM.dust(MT.LiveRoot), FL.Glue.make(250), NF, IL.Pellet_Wood.get(2));
    RM.Mixer.addRecipe1(T, 16, 16, OM.dust(MT.Livingwood, U2), FL.Glue.make(125), NF, IL.Pellet_Wood.get(1));
    RM.Mixer.addRecipe1(T, 16, 32, OM.dust(MT.Livingwood), FL.Glue.make(250), NF, IL.Pellet_Wood.get(2));
    RM.Mixer.addRecipe1(T, 16, 16, OM.dust(MT.Greatwood, U2), FL.Glue.make(125), NF, IL.Pellet_Wood.get(1));
    RM.Mixer.addRecipe1(T, 16, 32, OM.dust(MT.Greatwood), FL.Glue.make(250), NF, IL.Pellet_Wood.get(2));
    RM.Mixer.addRecipe1(T, 16, 16, OM.dust(MT.Dreamwood, U4), FL.Glue.make(125), NF, IL.Pellet_Wood.get(1));
    RM.Mixer.addRecipe1(T, 16, 64, OM.dust(MT.Dreamwood), FL.Glue.make(500), NF, IL.Pellet_Wood.get(4));
    RM.Mixer.addRecipe1(T, 16, 16, OM.dust(MT.Shimmerwood, U4), FL.Glue.make(125), NF, IL.Pellet_Wood.get(1));
    RM.Mixer.addRecipe1(T, 16, 64, OM.dust(MT.Shimmerwood), FL.Glue.make(500), NF, IL.Pellet_Wood.get(4));
    RM.Mixer.addRecipe1(T, 16, 16, OM.dust(MT.Silverwood, U4), FL.Glue.make(125), NF, IL.Pellet_Wood.get(1));
    RM.Mixer.addRecipe1(T, 16, 64, OM.dust(MT.Silverwood), FL.Glue.make(500), NF, IL.Pellet_Wood.get(4));
    for (OreDictMaterial tWood : ANY.Wood.mToThis) RM.Mixer.addRecipe1(T, 16, 16, OM.dust(tWood), FL.Glue.make(125), NF, IL.Pellet_Wood.get(1));
    RM.Mixer.addRecipe1(T, 16, 16, OM.dust(MT.Bark), FL.Glue.make(125), NF, IL.Pellet_Wood.get(1));
    RM.Compressor.addRecipe1(T, 16, 16, IL.Pellet_Wood.get(2), ST.make(BlocksGT.Planks, 1, 8));
    RM.CokeOven.addRecipe1(T, 0, 900, IL.Pellet_Wood.get(1), NF, FL.Oil_Creosote.make(25), chunkGt.mat(MT.Charcoal, 1));
    IL.Module_Stone_Generator.set(addItem(6000, "Stone Generator Module", "Generates Stone for Recipes, also known as a Cobble Generator", TC.stack(TC.MACHINA, 1), TC.stack(TC.FABRICO, 1), TC.stack(TC.IGNIS, 1), TC.stack(TC.TERRA, 1), TC.stack(TC.AQUA, 1)));
    IL.Module_Basalt_Generator.set(addItem(6001, "Basalt Generator Module", "Generates Basalt for Recipes", TC.stack(TC.MACHINA, 1), TC.stack(TC.FABRICO, 1), TC.stack(TC.IGNIS, 1), TC.stack(TC.TERRA, 1), TC.stack(TC.AQUA, 1)));
    IL.Module_Blackstone_Generator.set(addItem(6002, "Blackstone Generator Module", "Generates Blackstone for Recipes", TC.stack(TC.MACHINA, 1), TC.stack(TC.FABRICO, 1), TC.stack(TC.IGNIS, 1), TC.stack(TC.TERRA, 1), TC.stack(TC.AQUA, 1)));
    CR.shaped(IL.Module_Stone_Generator.get(1), CR.DEF_REV_NCC, "CPC", "LMW", "COC", 'M', OP.casingMachine.dat(MT.SteelGalvanized), 'O', IL.Shape_Extruder_Block, 'C', OD_CIRCUITS[4], 'P', OD.craftingPiston, 'L', OD.container1000lava, 'W', OD.container1000water);
    CR.shaped(IL.Module_Basalt_Generator.get(1), CR.DEF_REV_NCC, "S", "M", "I", 'M', IL.Module_Stone_Generator, 'S', OD.soulsand, 'I', Blocks.packed_ice);
    CR.shaped(IL.Module_Blackstone_Generator.get(1), CR.DEF_REV_NCC, "S", "M", "O", 'M', IL.Module_Stone_Generator, 'S', OD.soulsand, 'O', OD.obsidian);
    IL.Paper_Printed_Pages.set(addItem(7002, "Printed Pages", "", Behavior_PrintedPages.INSTANCE, new OreDictItemData(MT.Paper, U * 3), TC.stack(TC.COGNITIO, 3)));
    IL.Paper_Printed_Pages_Many.set(addItem(7003, "Many Printed Pages", "", Behavior_PrintedPages.INSTANCE, new OreDictItemData(MT.Paper, U * 6), TC.stack(TC.COGNITIO, 6)));
    BooksGT.BOOK_REGISTER.put(IL.Paper_Printed_Pages, (byte) 26);
    BooksGT.BOOK_REGISTER.put(IL.Paper_Printed_Pages_Many, (byte) 26);
    IL.Paper_Blueprint_Empty.set(addItem(7010, "Empty Blueprint", "Place in Blueprint Slot and Shiftclick it, to assign Recipe", new OreDictItemData(MT.Paper, U), TC.stack(TC.COGNITIO, 1)));
    IL.Paper_Blueprint_Used.set(addItem(7011, "Blueprint", "Blueprint containing a Crafting Recipe", new OreDictItemData(MT.Paper, U), TC.stack(TC.COGNITIO, 2), "gt:autocrafterblueprintitem"));
    for (FluidStack tDye : DYE_FLUIDS[DYE_INDEX_Blue]) RM.Bath.addRecipe1(T, 0, 16, ST.make(Items.paper, 1, W), tDye, NF, IL.Paper_Blueprint_Empty.get(1));
    BooksGT.BOOK_REGISTER.put(IL.Paper_Blueprint_Empty, (byte) 25);
    BooksGT.BOOK_REGISTER.put(IL.Paper_Blueprint_Used, (byte) 28);
    ItemsGT.addNEIRedirects(IL.Paper_Blueprint_Empty.get(1), IL.Paper_Blueprint_Used.get(1));
    for (int i = 0; i < 16; i++) addItem(i + 7030, DYE_NAMES[i] + " Canvas", "Can be used together with the Obscurator", "gt:canvas", new CoverTextureCanvas(BlockTextureDefault.get("machines/covers/canvas", DYES[i])), new OreDictItemData(MT.Paper, U), TC.stack(TC.PANNUS, 1));
    for (FluidStack tDye : DYE_FLUIDS[DYE_INDEX_White]) RM.Bath.addRecipe1(T, 0, 16, ST.make(Items.paper, 1, W), tDye, NF, make(7030 + DYE_INDEX_White));
    for (int i = 0; i < 16; i++) if (i != DYE_INDEX_White)
        for (FluidStack tDye : DYE_FLUIDS[i]) RM.Bath.addRecipe1(T, 0, 16, make(7030 + DYE_INDEX_White), tDye, NF, make(7030 + i));
    for (int i = 0; i < 16; i++) BooksGT.BOOK_REGISTER.put(this, 7030 + i, (byte) 27);
    IL.Paper_Magic_Research_0.set(addItem(7990, "Magic Research Paper (Introduction)", "", new OreDictItemData(MT.Paper, U), TC.TERRA.get(8), TC.AQUA.get(8), TC.AER.get(8), TC.IGNIS.get(8), TC.PERDITIO.get(8), TC.ORDO.get(8)));
    IL.Paper_Magic_Research_1.set(addItem(7991, "Magic Research Paper (Page 1 / 8)", "", new OreDictItemData(MT.Paper, U), TC.LUX.get(8), TC.MOTUS.get(8), TC.VACUOS.get(8), TC.POTENTIA.get(8), TC.VITREUS.get(8), TC.VICTUS.get(8)));
    IL.Paper_Magic_Research_2.set(addItem(7992, "Magic Research Paper (Page 2 / 8)", "", new OreDictItemData(MT.Paper, U), TC.VOLATUS.get(8), TC.ITER.get(8), TC.MORTUUS.get(8), TC.BESTIA.get(8), TC.TENEBRAE.get(8), TC.PRAECANTIO.get(8)));
    IL.Paper_Magic_Research_3.set(addItem(7993, "Magic Research Paper (Page 3 / 8)", "", new OreDictItemData(MT.Paper, U), TC.ALIENIS.get(8), TC.EXAMINIS.get(8), TC.SPIRITUS.get(8), TC.VITIUM.get(8), TC.METALLUM.get(8), TC.GELUM.get(8)));
    IL.Paper_Magic_Research_4.set(addItem(7994, "Magic Research Paper (Page 4 / 8)", "", new OreDictItemData(MT.Paper, U), TC.COGNITIO.get(8), TC.SENSUS.get(8), TC.HERBA.get(8), TC.SANO.get(8), TC.LIMUS.get(8), TC.TEMPESTAS.get(8)));
    IL.Paper_Magic_Research_5.set(addItem(7995, "Magic Research Paper (Page 5 / 8)", "", new OreDictItemData(MT.Paper, U), TC.HUMANUS.get(8), TC.VINCULUM.get(8), TC.ARBOR.get(8), TC.FAMES.get(8), TC.CORPUS.get(8), TC.AURAM.get(8)));
    IL.Paper_Magic_Research_6.set(addItem(7996, "Magic Research Paper (Page 6 / 8)", "", new OreDictItemData(MT.Paper, U), TC.PERFODIO.get(8), TC.INSTRUMENTUM.get(8), TC.MESSIS.get(8), TC.LUCRUM.get(8), TC.VENENUM.get(8), TC.PERMUTATIO.get(8)));
    IL.Paper_Magic_Research_7.set(addItem(7997, "Magic Research Paper (Page 7 / 8)", "", new OreDictItemData(MT.Paper, U), TC.TELUM.get(8), TC.TUTAMEN.get(8), TC.PANNUS.get(8), TC.FABRICO.get(8), TC.METO.get(8), TC.MACHINA.get(8)));
    IL.Paper_Magic_Research_8.set(addItem(7998, "Magic Research Paper (Page 8 / 8)", "", new OreDictItemData(MT.Paper, U), TC.ELECTRUM.get(8), TC.RADIO.get(8), TC.MAGNETO.get(8), TC.NEBRISUM.get(8), TC.STRONTIO.get(8), TC.REFLEXIO.get(8)));
    for (int i = 0; i < IL.MAGIC_RESEARCH_PAPERS.length; i++) {
        BooksGT.BOOK_REGISTER.put(IL.MAGIC_RESEARCH_PAPERS[i], (byte) 18);
        if (IL.TC_Knowledge_Fragment.exists()) {
            RM.generify(IL.MAGIC_RESEARCH_PAPERS[i].get(1), IL.TC_Knowledge_Fragment.get(Math.max(1, i)));
            CR.shapeless(IL.TC_Knowledge_Fragment.get(Math.max(1, i)), CR.DEF, new Object[] { IL.MAGIC_RESEARCH_PAPERS[i] });
        }
    }
    IL.Robot_Tip_Wrench.set(addItem(8000, "Robot Arm Wrench Tip", "Infinitely usable inside an Autocrafter", OreDictToolNames.wrench, "gt:autocrafterinfinite", TC.stack(TC.INSTRUMENTUM, 4)));
    IL.Robot_Tip_Screwdriver.set(addItem(8001, "Robot Arm Screwdriver Tip", "Infinitely usable inside an Autocrafter", OreDictToolNames.screwdriver, "gt:autocrafterinfinite", TC.stack(TC.INSTRUMENTUM, 4)));
    IL.Robot_Tip_Saw.set(addItem(8002, "Robot Arm Saw Tip", "Infinitely usable inside an Autocrafter", OreDictToolNames.saw, "gt:autocrafterinfinite", TC.stack(TC.INSTRUMENTUM, 4)));
    IL.Robot_Tip_Hammer.set(addItem(8003, "Robot Arm Hammer Tip", "Infinitely usable inside an Autocrafter", OreDictToolNames.hammer, OreDictToolNames.hac_mortar, "gt:autocrafterinfinite", TC.stack(TC.INSTRUMENTUM, 4)));
    IL.Robot_Tip_Cutter.set(addItem(8004, "Robot Arm Cutter Tip", "Infinitely usable inside an Autocrafter", OreDictToolNames.wirecutter, OreDictToolNames.scissors, "gt:autocrafterinfinite", TC.stack(TC.INSTRUMENTUM, 4)));
    IL.Robot_Tip_Chisel.set(addItem(8005, "Robot Arm Chisel Tip", "Infinitely usable inside an Autocrafter", OreDictToolNames.chisel, "gt:autocrafterinfinite", TC.stack(TC.INSTRUMENTUM, 4)));
    IL.Robot_Tip_Rubber.set(addItem(8006, "Robot Arm Rubber Hammer Tip", "Infinitely usable inside an Autocrafter", OreDictToolNames.softhammer, "gt:autocrafterinfinite", TC.stack(TC.INSTRUMENTUM, 4)));
    IL.Robot_Tip_Blade.set(addItem(8007, "Robot Arm Blade Tip", "Infinitely usable inside an Autocrafter", OreDictToolNames.sword, OreDictToolNames.blade, OreDictToolNames.hac_cuttingboard, "gt:autocrafterinfinite", TC.stack(TC.INSTRUMENTUM, 4)));
    IL.Robot_Tip_Drill.set(addItem(8008, "Robot Arm Drill Tip", "Infinitely usable inside an Autocrafter", OreDictToolNames.drill, OreDictToolNames.handdrill, "gt:autocrafterinfinite", TC.stack(TC.INSTRUMENTUM, 4)));
    IL.Robot_Tip_File.set(addItem(8009, "Robot Arm File Tip", "Infinitely usable inside an Autocrafter", OreDictToolNames.file, "gt:autocrafterinfinite", TC.stack(TC.INSTRUMENTUM, 4)));
    CR.shaped(IL.Robot_Tip_Wrench.get(1), CR.DEF_REV, "wPh", "CMC", " X ", 'P', OP.plateCurved.dat(MT.SteelGalvanized), 'C', OD_CIRCUITS[3], 'M', IL.MOTORS[3], 'X', OP.toolHeadWrench.dat(MT.Cr));
    CR.shaped(IL.Robot_Tip_Screwdriver.get(1), CR.DEF_REV, "wPh", "CMC", " X ", 'P', OP.plateCurved.dat(MT.SteelGalvanized), 'C', OD_CIRCUITS[3], 'M', IL.MOTORS[3], 'X', OP.toolHeadScrewdriver.dat(MT.StainlessSteel));
    CR.shaped(IL.Robot_Tip_Saw.get(1), CR.DEF_REV, "wPh", "CMC", "DXd", 'P', OP.plateCurved.dat(MT.SteelGalvanized), 'C', OD_CIRCUITS[3], 'M', IL.MOTORS[3], 'X', OP.toolHeadBuzzSaw.dat(MT.CobaltBrass), 'D', OP.dust.dat(ANY.Diamond));
    CR.shaped(IL.Robot_Tip_Hammer.get(1), CR.DEF_REV, "wPh", "CMC", " X ", 'P', OP.plateCurved.dat(MT.SteelGalvanized), 'C', OD_CIRCUITS[3], 'M', IL.PISTONS[3], 'X', OP.toolHeadHammer.dat(MT.TungstenCarbide));
    CR.shaped(IL.Robot_Tip_Cutter.get(1), CR.DEF_REV, "wPh", "CMC", "XfX", 'P', OP.plateCurved.dat(MT.SteelGalvanized), 'C', OD_CIRCUITS[3], 'M', IL.MOTORS[3], 'X', OP.plate.dat(MT.StainlessSteel));
    CR.shaped(IL.Robot_Tip_Chisel.get(1), CR.DEF_REV, "wPh", "CMC", " X ", 'P', OP.plateCurved.dat(MT.SteelGalvanized), 'C', OD_CIRCUITS[3], 'M', IL.PISTONS[3], 'X', OP.toolHeadChisel.dat(MT.TungstenSteel));
    CR.shaped(IL.Robot_Tip_Rubber.get(1), CR.DEF_REV, "wPh", "CMC", " X ", 'P', OP.plateCurved.dat(MT.SteelGalvanized), 'C', OD_CIRCUITS[3], 'M', IL.PISTONS[3], 'X', OP.toolHeadHammer.dat(MT.Rubber));
    CR.shaped(IL.Robot_Tip_Blade.get(1), CR.DEF_REV, "wPh", "CMC", " X ", 'P', OP.plateCurved.dat(MT.SteelGalvanized), 'C', OD_CIRCUITS[3], 'M', IL.PISTONS[3], 'X', OP.toolHeadSword.dat(MT.Bronze));
    CR.shaped(IL.Robot_Tip_Drill.get(1), CR.DEF_REV, "wPh", "CMC", "fX ", 'P', OP.plateCurved.dat(MT.SteelGalvanized), 'C', OD_CIRCUITS[3], 'M', IL.MOTORS[3], 'X', OP.stick.dat(ANY.Steel));
    CR.shaped(IL.Robot_Tip_File.get(1), CR.DEF_REV, "wPh", "CMC", " X ", 'P', OP.plateCurved.dat(MT.SteelGalvanized), 'C', OD_CIRCUITS[3], 'M', IL.CONVEYERS[3], 'X', OP.dust.dat(ANY.Diamond));
    IL.Tool_Remote_Activator.set(addItem(9000, "Remote Activator", "", Behavior_Remote.INSTANCE, TC.stack(TC.MOTUS, 1), TC.stack(TC.PERMUTATIO, 1)));
    IL.Tool_Cheat.set(addItem(9001, "Debug Scanner", "", Behavior_Cropnalyzer.INSTANCE, ItemsGT.DEBUG_ITEMS, ItemsGT.ILLEGAL_DROPS, GarbageGT.BLACKLIST, new Behavior_Scanner(Integer.MAX_VALUE), EnergyStatDebug.INSTANCE, TC.stack(TC.SENSUS, 10), TC.stack(TC.INSTRUMENTUM, 10)));
    IL.Tool_Scanner.set(addItem(9002, "Portable Scanner", "", Behavior_Cropnalyzer.INSTANCE, new Behavior_Scanner(2), EnergyStat.makeTool(TD.Energy.EU, V[3] * 8000, V[3], 64, next()), TC.stack(TC.SENSUS, 10), TC.stack(TC.INSTRUMENTUM, 10)));
    IL.Tool_Cropnalyzer.set(addItem(9003, "Portable Cropnalyzer", "", Behavior_Cropnalyzer.INSTANCE, EnergyStat.makeTool(TD.Energy.EU, V[2] * 8000, V[2], 64, next()), TC.stack(TC.SENSUS, 5), TC.stack(TC.INSTRUMENTUM, 5), TC.stack(TC.HERBA, 5)));
    IL.Tool_Worldgen_Debugger.set(addItem(9999, "Worldgen Debug Wand", "", Behavior_Worldgen_Debugger.INSTANCE, ItemsGT.DEBUG_ITEMS, ItemsGT.ILLEGAL_DROPS, GarbageGT.BLACKLIST, TC.stack(TC.TERRA, 10), TC.stack(TC.PRAECANTIO, 10), TC.stack(TC.INSTRUMENTUM, 10)));
    CR.shaped(IL.Tool_Remote_Activator.get(1), CR.DEF_REV, "TPE", "BCd", "xPT", 'P', OP.plate.dat(MT.Cr), 'T', OP.screw.dat(MT.Cr), 'C', OD_CIRCUITS[4], 'E', IL.EMITTERS[4], 'B', OD.button);
    BooksGT.BOOK_REGISTER.put(IL.Tool_Remote_Activator, (byte) 1);
    // Moved to the Battery Section of the MTE Loader.
    // CR.shaped(IL.Tool_Scanner               .get(1), CR.DEF_REV, "EXR", "CPU", "BXB", 'B', IL.Battery_Alkaline_HV, 'X', OP.plate.dat(MT.Cr), 'U', OD_USB_STICKS[3], 'C', OD_USB_CABLES[3], 'E', IL.EMITTERS[4], 'R', IL.SENSORS[4], 'P', IL.Processor_Crystal_Sapphire);
    // CR.shaped(IL.Tool_Cropnalyzer           .get(1), CR.DEF_REV, "EXR", "CPU", "BXB", 'B', IL.Battery_Alkaline_MV, 'X', OP.plate.dat(MT.Al), 'U', OD_USB_STICKS[1], 'C', OD_USB_CABLES[1], 'E', IL.EMITTERS[2], 'R', IL.SENSORS[2], 'P', OD_CIRCUITS[6]);
    IL.Thermometer_Quicksilver.set(addItem(10000, "Quicksilver Thermometer", "", new Behavior_Tool(TOOL_thermometer), TC.stack(TC.VENENUM, 1), TC.stack(TC.VITREUS, 1)));
    IL.Geiger_Counter_Empty.set(addItem(10001, "Geiger Counter (Empty)", "Fill with proper inert Gas", TC.stack(TC.SENSUS, 1), TC.stack(TC.RADIO, 1)));
    IL.Geiger_Counter.set(addItem(10002, "Geiger Counter", "", new Behavior_Tool(TOOL_geigercounter), TC.stack(TC.SENSUS, 5), TC.stack(TC.RADIO, 5)));
    RM.Canner.addRecipe1(T, 16, 64, IL.Geiger_Counter_Empty.get(1), FL.Helium.make(1000), NF, IL.Geiger_Counter.get(1));
    RM.Canner.addRecipe1(T, 16, 64, IL.Geiger_Counter_Empty.get(1), FL.Neon.make(1000), NF, IL.Geiger_Counter.get(1));
    RM.Canner.addRecipe1(T, 16, 64, IL.Geiger_Counter_Empty.get(1), FL.Argon.make(1000), NF, IL.Geiger_Counter.get(1));
    CR.shaped(IL.Thermometer_Quicksilver.get(1), CR.DEF_REV, " GD", "GQG", "PG ", 'P', OP.plate.dat(ANY.Cu), 'G', OP.plate.dat(MT.Glass), 'D', DYE_OREDICTS[DYE_INDEX_Red], 'Q', OD.itemQuicksilver);
    CR.shaped(IL.Geiger_Counter_Empty.get(1), CR.DEF_REV, "TUT", "PCP", "TdT", 'U', OP.capcellcon.dat(MT.Al), 'P', OP.plate.dat(MT.Al), 'T', OP.screw.dat(MT.Al), 'C', OD_CIRCUITS[1]);
    OM.data(IL.Geiger_Counter.get(1), OM.data(IL.Geiger_Counter_Empty.get(1)));
    IL.Compass_North.set(addItem(11000, "Compass (NORTH)", "Points to Zed Negative", OD.itemCompass, new Behavior_Switch_Metadata(11001, T, T), OM.data(ST.make(Items.compass, 1, 0)), TC.stack(TC.METALLUM, 2), TC.stack(TC.MAGNETO, 2)));
    CR.shapeless(ST.make(Items.compass, 1, 0), CR.DEF, new Object[] { last() });
    IL.Compass_Face.set(addItem(11001, "Compass (FACE)", "Points into the direction you look", OD.itemCompass, new Behavior_Switch_Metadata(11002, T, T), OM.data(ST.make(Items.compass, 1, 0)), TD.Creative.HIDDEN, TC.stack(TC.METALLUM, 2), TC.stack(TC.MAGNETO, 1), TC.stack(TC.COGNITIO, 1)));
    CR.shapeless(ST.make(Items.compass, 1, 0), CR.DEF, new Object[] { last() });
    IL.Compass_Spawn.set(addItem(11002, "Compass (SPAWN)", "Points to the World Spawn like a normal Compass", OD.itemCompass, new Behavior_Switch_Metadata(11003, T, T), OM.data(ST.make(Items.compass, 1, 0)), TD.Creative.HIDDEN, TC.stack(TC.METALLUM, 2), TC.stack(TC.MAGNETO, 1), TC.stack(TC.HUMANUS, 1)));
    CR.shapeless(ST.make(Items.compass, 1, 0), CR.DEF, new Object[] { last() });
    IL.Compass_Center.set(addItem(11003, "Compass (CENTER)", "Points towards the middle of the World", OD.itemCompass, new Behavior_Switch_Metadata(11004, T, T), OM.data(ST.make(Items.compass, 1, 0)), TD.Creative.HIDDEN, TC.stack(TC.METALLUM, 2), TC.stack(TC.MAGNETO, 1), TC.stack(TC.TERRA, 1)));
    CR.shapeless(ST.make(Items.compass, 1, 0), CR.DEF, new Object[] { last() });
    IL.Compass_Death.set(addItem(11004, "Compass (DEATH)", "Points to your last Death, if you did not Rage Quit", OD.itemCompass, new Behavior_Switch_Metadata(11000, T, T), OM.data(ST.make(Items.compass, 1, 0)), TD.Creative.HIDDEN, TC.stack(TC.METALLUM, 2), TC.stack(TC.MAGNETO, 1), TC.stack(TC.MORTUUS, 1)));
    CR.shapeless(ST.make(Items.compass, 1, 0), CR.DEF, new Object[] { last() });
    ItemsGT.addNEIRedirects(IL.Compass_North.get(1), IL.Compass_Face.get(1), IL.Compass_Spawn.get(1), IL.Compass_Center.get(1), IL.Compass_Death.get(1));
    CR.shapeless(IL.Compass_North.get(1), CR.DEF, new Object[] { Items.compass });
    IL.Tape.set(addItem(12000, "Tape", "Full Roll", TC.stack(TC.PANNUS, 1), TC.stack(TC.LIMUS, 1)));
    IL.Tape_Used.set(addItem(12001, "Tape", "Used Roll", TC.stack(TC.PANNUS, 1), TC.stack(TC.LIMUS, 1)));
    CR.shaped(IL.Tape.get(1), CR.DEF, "PPP", " G ", 'P', OD.paperEmpty, 'G', OD.itemGlue);
    CR.shapeless(IL.Tape.get(1), CR.DEF, new Object[] { IL.Tape_Used, IL.Tape_Used, IL.Tape_Used, IL.Tape_Used });
    tBehaviour = new Behavior_Duct_Tape(null, IL.Tape_Used.get(1), IL.Tape.get(1), 0, 10000);
    ItemsGT.addNEIRedirects(IL.Tape.get(1), IL.Tape_Used.get(1));
    BooksGT.BOOK_REGISTER.put(IL.Tape, (byte) 57);
    BooksGT.BOOK_REGISTER.put(IL.Tape_Used, (byte) 57);
    addItemBehavior(12000, tBehaviour);
    addItemBehavior(12001, tBehaviour);
    IL.Duct_Tape.set(addItem(12002, "Duct Tape", "Full Roll", TC.stack(TC.FABRICO, 1), TC.stack(TC.LIMUS, 1), OD.craftingDuctTape));
    IL.Duct_Tape_Used.set(addItem(12003, "Duct Tape", "Used Roll", TC.stack(TC.FABRICO, 1), TC.stack(TC.LIMUS, 1)));
    CR.shaped(IL.Duct_Tape.get(1), CR.DEF, "PPP", " G ", 'P', OP.foil.dat(MT.Plastic), 'G', OD.itemGlue);
    CR.shapeless(IL.Duct_Tape.get(1), CR.DEF, new Object[] { IL.Duct_Tape_Used, IL.Duct_Tape_Used, IL.Duct_Tape_Used, IL.Duct_Tape_Used });
    tBehaviour = new Behavior_Duct_Tape(null, IL.Duct_Tape_Used.get(1), IL.Duct_Tape.get(1), 1, 100000);
    ItemsGT.addNEIRedirects(IL.Duct_Tape.get(1), IL.Duct_Tape_Used.get(1));
    BooksGT.BOOK_REGISTER.put(IL.Duct_Tape, (byte) 58);
    BooksGT.BOOK_REGISTER.put(IL.Duct_Tape_Used, (byte) 58);
    addItemBehavior(12002, tBehaviour);
    addItemBehavior(12003, tBehaviour);
    IL.Brain_Tape.set(addItem(12008, "BrainTech Aerospace Advanced Reinforced Duct Tape FAL-84", "Full Roll", TC.stack(TC.TUTAMEN, 1), TC.stack(TC.LIMUS, 1), OD.craftingDuctTape));
    IL.Brain_Tape_Used.set(addItem(12009, "BrainTech Aerospace Advanced Reinforced Duct Tape FAL-84", "Used Roll", TC.stack(TC.TUTAMEN, 1), TC.stack(TC.LIMUS, 1), OD.craftingDuctTape));
    CR.shaped(IL.Brain_Tape.get(1), CR.DEF, "PPP", " G ", 'P', OP.foil.dat(ANY.W), 'G', OD.itemGlue);
    CR.shapeless(IL.Brain_Tape.get(1), CR.DEF, new Object[] { IL.Brain_Tape_Used, IL.Brain_Tape_Used, IL.Brain_Tape_Used, IL.Brain_Tape_Used });
    tBehaviour = new Behavior_Duct_Tape(null, IL.Brain_Tape_Used.get(1), IL.Brain_Tape.get(1), 2, 10000000);
    ItemsGT.addNEIRedirects(IL.Brain_Tape.get(1), IL.Brain_Tape_Used.get(1));
    BooksGT.BOOK_REGISTER.put(IL.Brain_Tape, (byte) 59);
    BooksGT.BOOK_REGISTER.put(IL.Brain_Tape_Used, (byte) 59);
    addItemBehavior(12008, tBehaviour);
    addItemBehavior(12009, tBehaviour);
    IL.Key_Iron.set(addItem(30000, "Iron Key", "", OD.itemKey, new OreDictItemData(ANY.Iron, U4), Behavior_Key.INSTANCE, TC.stack(TC.MACHINA, 1)));
    CR.shaped(IL.Key_Iron.get(3), CR.DEF_NCC, "fPx", 'P', OP.plate.dat(ANY.Iron));
    IL.Key_Gold.set(addItem(30001, "Gold Key", "", OD.itemKey, new OreDictItemData(MT.Au, U4), Behavior_Key.INSTANCE, TC.stack(TC.MACHINA, 1)));
    CR.shaped(IL.Key_Gold.get(3), CR.DEF_NCC, "fPx", 'P', OP.plate.dat(MT.Au));
    IL.Key_Copper.set(addItem(30002, "Copper Key", "", OD.itemKey, new OreDictItemData(ANY.Cu, U4), Behavior_Key.INSTANCE, TC.stack(TC.MACHINA, 1)));
    CR.shaped(IL.Key_Copper.get(3), CR.DEF_NCC, "fPx", 'P', OP.plate.dat(ANY.Cu));
    IL.Key_Tin.set(addItem(30003, "Tin Key", "", OD.itemKey, new OreDictItemData(MT.Sn, U4), Behavior_Key.INSTANCE, TC.stack(TC.MACHINA, 1)));
    CR.shaped(IL.Key_Tin.get(3), CR.DEF_NCC, "fPx", 'P', OP.plate.dat(MT.Sn));
    IL.Key_Bronze.set(addItem(30004, "Bronze Key", "", OD.itemKey, new OreDictItemData(MT.Bronze, U4), Behavior_Key.INSTANCE, TC.stack(TC.MACHINA, 1)));
    CR.shaped(IL.Key_Bronze.get(3), CR.DEF_NCC, "fPx", 'P', OP.plate.dat(MT.Bronze));
    IL.Key_Brass.set(addItem(30005, "Brass Key", "", OD.itemKey, new OreDictItemData(MT.Brass, U4), Behavior_Key.INSTANCE, TC.stack(TC.MACHINA, 1)));
    CR.shaped(IL.Key_Brass.get(3), CR.DEF_NCC, "fPx", 'P', OP.plate.dat(MT.Brass));
    IL.Key_Silver.set(addItem(30006, "Silver Key", "", OD.itemKey, new OreDictItemData(MT.Ag, U4), Behavior_Key.INSTANCE, TC.stack(TC.MACHINA, 1)));
    CR.shaped(IL.Key_Silver.get(3), CR.DEF_NCC, "fPx", 'P', OP.plate.dat(MT.Ag));
    IL.Key_Platinum.set(addItem(30007, "Platinum Key", "", OD.itemKey, new OreDictItemData(MT.Pt, U4), Behavior_Key.INSTANCE, TC.stack(TC.MACHINA, 1)));
    CR.shaped(IL.Key_Platinum.get(3), CR.DEF_NCC, "fPx", 'P', OP.plate.dat(MT.Pt));
    IL.Key_Lead.set(addItem(30008, "Lead Key", "", OD.itemKey, new OreDictItemData(MT.Pb, U4), Behavior_Key.INSTANCE, TC.stack(TC.MACHINA, 1)));
    CR.shaped(IL.Key_Lead.get(3), CR.DEF_NCC, "fPx", 'P', OP.plate.dat(MT.Pb));
    IL.Key_Plastic.set(addItem(30009, "Plastic Key", "", OD.itemKey, new OreDictItemData(MT.Plastic, U4), Behavior_Key.INSTANCE, TC.stack(TC.MACHINA, 1)));
    CR.shaped(IL.Key_Plastic.get(3), CR.DEF_NCC, "fPx", 'P', OP.plate.dat(MT.Plastic));
    // In order to be able to hide Keys inside Bookshelves
    for (IItemContainer tContainer : IL.KEYS) BooksGT.BOOK_REGISTER.put(tContainer, (byte) 1);
}
Also used : OreDictMaterial(gregapi.oredict.OreDictMaterial) Behavior_Bucket_Simple(gregapi.item.multiitem.behaviors.Behavior_Bucket_Simple) OreDictItemData(gregapi.oredict.OreDictItemData) FluidStack(net.minecraftforge.fluids.FluidStack) IItemContainer(gregapi.code.IItemContainer) CoverTextureCanvas(gregapi.cover.covers.CoverTextureCanvas) MultiItem(gregapi.item.multiitem.MultiItem) Behavior_Tool(gregapi.item.multiitem.behaviors.Behavior_Tool) ItemStack(net.minecraft.item.ItemStack) Behavior_Switch_Metadata(gregapi.item.multiitem.behaviors.Behavior_Switch_Metadata)

Example 64 with OreDictItemData

use of gregapi.oredict.OreDictItemData in project gregtech6 by GregTech6.

the class MultiItemTechnological method addItems.

@Override
public void addItems() {
    int tLastID = 0;
    for (int i = 0; i < 10; i++) {
        IL.MOTORS[i].set(addItem(12000 + i, "Compact Electric Motor (" + VN[i] + ")", "", TC.stack(TC.ELECTRUM, 1 + i), TC.stack(TC.MACHINA, 1 + i), TC.stack(TC.MOTUS, 1 + i)));
        IL.PUMPS[i].set(addItem(12020 + i, "Compact Electric Pump (" + VN[i] + ")", "", TC.stack(TC.ELECTRUM, 1 + i), TC.stack(TC.MACHINA, 1 + i), TC.stack(TC.ITER, 1 + i), TC.stack(TC.AQUA, 1 + i), new CoverPump(250 << (2 * i))));
        IL.CONVEYERS[i].set(addItem(12040 + i, "Compact Electric Conveyor (" + VN[i] + ")", "", TC.stack(TC.ELECTRUM, 1 + i), TC.stack(TC.MACHINA, 1 + i), TC.stack(TC.ITER, 1 + i), new CoverConveyor(512 >> i)));
        IL.PISTONS[i].set(addItem(12060 + i, "Compact Electric Piston (" + VN[i] + ")", "", TC.stack(TC.ELECTRUM, 1 + i), TC.stack(TC.MACHINA, 1 + i), TC.stack(TC.MOTUS, 1 + i)));
        IL.ROBOT_ARMS[i].set(addItem(12080 + i, "Compact Robot Arm (" + VN[i] + ")", "", TC.stack(TC.ELECTRUM, 1 + i), TC.stack(TC.MACHINA, 1 + i), TC.stack(TC.HUMANUS, 1 + i), new CoverRobotArm(512 >> i)));
        IL.FIELD_GENERATORS[i].set(addItem(12100 + i, "Compact Force Field Emitter (" + VN[i] + ")", "", TC.stack(TC.ELECTRUM, 1 + i), TC.stack(TC.MACHINA, 1 + i), TC.stack(TC.TUTAMEN, 1 + i)));
        IL.EMITTERS[i].set(addItem(12120 + i, "Compact Signal Emitter (" + VN[i] + ")", "", TC.stack(TC.ELECTRUM, 1 + i), TC.stack(TC.MACHINA, 1 + i), TC.stack(TC.LUX, 1 + i)));
        IL.SENSORS[i].set(addItem(12140 + i, "Compact Sensor (" + VN[i] + ")", "", TC.stack(TC.ELECTRUM, 1 + i), TC.stack(TC.MACHINA, 1 + i), TC.stack(TC.SENSUS, 1 + i)));
    }
    IL.Cover_Blank.set(addItem(tLastID = 1000, "Blank Cover", "*BLANK*", new CoverTextureMulti(T, T, "machines/covers/blank/", 6), TC.stack(TC.MACHINA, 2)));
    IL.Cover_Crafting.set(addItem(tLastID = 1001, "Crafting Table Cover", "A regular old Workbench as a Cover", new CoverCrafting("machines/covers/crafting/", 6), TC.stack(TC.MACHINA, 1), TC.stack(TC.FABRICO, 3)));
    IL.Cover_Machine_Display.set(addItem(tLastID = 1002, "Machine Status Display Cover", "Shows Machine Status and has ON/OFF Switch", new CoverControllerDisplay(), TC.stack(TC.MACHINA, 1), TC.stack(TC.SENSUS, 3)));
    IL.Cover_Auto_Switch.set(addItem(tLastID = 1003, "Automatic Machine Switch", "Automatically turns Machines ON/OFF when needed", new CoverControllerAuto(), TC.stack(TC.MACHINA, 1), TC.stack(TC.PERMUTATIO, 3)));
    IL.Cover_Energy_Display.set(addItem(tLastID = 1004, "Energy Display Cover", "Displays contained Energy", new CoverDisplayEnergy(), TC.stack(TC.MACHINA, 1), TC.stack(TC.SENSUS, 2), TC.stack(TC.POTENTIA, 1)));
    IL.Cover_Redstone_Switch.set(addItem(tLastID = 1005, "Redstone Machine Switch", "Turns Machines ON/OFF using Redstone", new CoverControllerRedstone(), TC.stack(TC.MACHINA, 1), TC.stack(TC.PERMUTATIO, 2)));
    IL.Cover_Auto_Switch_Redstone.set(addItem(tLastID = 1006, "Auto Redstone Machine Switch", "Turns ON/OFF using Redstone but lets it finish", new CoverControllerAutoRedstone(), TC.stack(TC.MACHINA, 2), TC.stack(TC.PERMUTATIO, 3)));
    IL.Cover_Redstone_Selector.set(addItem(tLastID = 1007, "Redstone Selector", "Selector Cover that is controlled by Redstone", new CoverSelectorRedstone(), TC.stack(TC.MACHINA, 1), TC.stack(TC.PERMUTATIO, 2)));
    IL.Cover_Manual_Selector.set(addItem(tLastID = 1008, "Manual Selector", "Selector Cover that is controlled by Buttons", new CoverSelectorManual(), TC.stack(TC.MACHINA, 1), TC.stack(TC.PERMUTATIO, 2)));
    IL.Cover_Auto_Switch_01_Minute.set(addItem(tLastID = 1009, "Auto Reboot Switch (1 min)", "Attempts to Reboot a Machine every Minute", new CoverControllerAutoTimer(1200), TC.stack(TC.MACHINA, 2), TC.stack(TC.PERMUTATIO, 1)));
    IL.Cover_Auto_Switch_05_Minute.set(addItem(tLastID = 1010, "Auto Reboot Switch (5 mins)", "Attempts to Reboot a Machine every 5 Minutes", new CoverControllerAutoTimer(6000), TC.stack(TC.MACHINA, 2), TC.stack(TC.PERMUTATIO, 1)));
    IL.Cover_Auto_Switch_10_Minute.set(addItem(tLastID = 1011, "Auto Reboot Switch (10 mins)", "Attempts to Reboot a Machine every 10 Minutes", new CoverControllerAutoTimer(12000), TC.stack(TC.MACHINA, 2), TC.stack(TC.PERMUTATIO, 1)));
    IL.Cover_Auto_Switch_20_Minute.set(addItem(tLastID = 1012, "Auto Reboot Switch (20 mins)", "Attempts to Reboot a Machine every 20 Minutes", new CoverControllerAutoTimer(24000), TC.stack(TC.MACHINA, 2), TC.stack(TC.PERMUTATIO, 1)));
    IL.Cover_Auto_Switch_30_Minute.set(addItem(tLastID = 1013, "Auto Reboot Switch (30 mins)", "Attempts to Reboot a Machine every 30 Minutes", new CoverControllerAutoTimer(36000), TC.stack(TC.MACHINA, 2), TC.stack(TC.PERMUTATIO, 1)));
    IL.Cover_Scale_Energy.set(addItem(tLastID = 1014, "Energy Sensor", "Emits depending on Energy stored", new CoverScaleEnergy(), TC.stack(TC.MACHINA, 2), TC.stack(TC.POTENTIA, 1)));
    IL.Cover_Detector_Possible.set(addItem(tLastID = 1015, "Activity Detector (Possible)", "Emits when Machine could run", new CoverDetectorRunningPossible(), TC.stack(TC.MACHINA, 2), TC.stack(TC.PERMUTATIO, 1)));
    IL.Cover_Detector_Passively.set(addItem(tLastID = 1016, "Activity Detector (Running)", "Emits when Machine is running", new CoverDetectorRunningPassively(), TC.stack(TC.MACHINA, 2), TC.stack(TC.PERMUTATIO, 1)));
    IL.Cover_Detector_Actively.set(addItem(tLastID = 1017, "Activity Detector (Processing)", "Emits when Machine is processing", new CoverDetectorRunningActively(), TC.stack(TC.MACHINA, 2), TC.stack(TC.PERMUTATIO, 1)));
    IL.Cover_Scale_Progress.set(addItem(tLastID = 1018, "Progress Sensor", "Emits depending on Progress", new CoverScaleProgress(), TC.stack(TC.MACHINA, 2), TC.stack(TC.FABRICO, 1)));
    IL.Cover_Detector_Success.set(addItem(tLastID = 1019, "Activity Detector (Success)", "Emits when Machine produced something", new CoverDetectorRunningSuccessfully(), TC.stack(TC.MACHINA, 2), TC.stack(TC.FABRICO, 1)));
    IL.Cover_Drain.set(addItem(tLastID = 1020, "Drain", "", new CoverDrain(), TC.stack(TC.MACHINA, 1), TC.stack(TC.AQUA, 1), TC.stack(TC.VACUOS, 1)));
    IL.Cover_Redstone_Emitter.set(addItem(tLastID = 1021, "Redstone Emitter", "Emits a constant Redstone Signal", new CoverRedstoneEmitter(), TC.stack(TC.MACHINA, 1), TC.stack(TC.POTENTIA, 1)));
    IL.Cover_Vent.set(addItem(tLastID = 1022, "Air Vent", "Ventilates Air into Tanks and Pipes", new CoverVent(), TC.stack(TC.MACHINA, 1), TC.stack(TC.AER, 1), TC.stack(TC.VACUOS, 1)));
    IL.Cover_Filter_Item.set(addItem(tLastID = 1023, "Item Filter", "Filters for an Item", new CoverFilterItem(), TC.stack(TC.MACHINA, 1), TC.stack(TC.ORDO, 1), TC.stack(TC.ITER, 1)));
    IL.Cover_Filter_Fluid.set(addItem(tLastID = 1024, "Fluid Filter", "Filters for a Fluid", new CoverFilterFluid(), TC.stack(TC.MACHINA, 1), TC.stack(TC.ORDO, 1), TC.stack(TC.AQUA, 1)));
    IL.Cover_Controller.set(addItem(tLastID = 1025, "Cover Controller", "Turns Redstone into ON/OFF State for Covers", new CoverControllerCovers(), TC.stack(TC.MACHINA, 1), TC.stack(TC.PERMUTATIO, 2)));
    IL.Cover_Shutter.set(addItem(tLastID = 1026, "Shutter Cover", "Connects and Disconnects Pipes and Wires", new CoverShutter(), TC.stack(TC.MACHINA, 2), TC.stack(TC.PERMUTATIO, 1)));
    IL.Cover_Button_Selector.set(addItem(tLastID = 1027, "Button Panel Selector", "Selector Cover that is controlled by Buttons", new CoverSelectorButtonPanel(), TC.stack(TC.MACHINA, 1), TC.stack(TC.PERMUTATIO, 1)));
    IL.Cover_Warning.set(addItem(tLastID = 1028, "Warning Cover", "Warns about certain Types of Danger", new CoverTextureMulti(T, T, "machines/covers/warning/", 20), TC.stack(TC.MACHINA, 1), TC.stack(TC.SENSUS, 1), TC.stack(TC.VINCULUM, 1)));
    IL.Cover_Redstone_Conductor_IN.set(addItem(tLastID = 1029, "Redstone Conductor Cover (Accept)", "Redstone will transfer to emitting Conductors", new CoverRedstoneConductorIN(), TC.stack(TC.MACHINA, 2), TC.stack(TC.SENSUS, 1)));
    IL.Cover_Redstone_Conductor_OUT.set(addItem(tLastID = 1030, "Redstone Conductor Cover (Emit)", "Redstone of accepting Conductors gets emitted", new CoverRedstoneConductorOUT(), TC.stack(TC.MACHINA, 2), TC.stack(TC.VINCULUM, 1)));
    IL.Cover_Retriever_Item.set(addItem(tLastID = 1031, "Item Retriever Cover", "Pulls Items from the attached Pipe Network", new CoverRetrieverItem(), TC.stack(TC.MACHINA, 2), TC.stack(TC.COGNITIO, 1), TC.stack(TC.VACUOS, 1), TC.stack(TC.ITER, 1)));
    RM.Other.addFakeRecipe(F, ST.array(IL.Cover_Vent.get(1)), ZL_IS, null, ZL_LONG, ZL_FS, FL.array(FL.Air.make(0), FL.Air_Nether.make(0), FL.Air_End.make(0)), 0, 0, 0);
    RM.Other.addFakeRecipe(F, ST.array(IL.Cover_Drain.get(1)), ZL_IS, null, ZL_LONG, ZL_FS, FL.array(FL.Water.make(0), FL.Ocean.make(0), FL.Dirty_Water.make(0)), 0, 0, 0);
    if (FL.XP.exists() || FL.Mob.exists())
        RM.Other.addFakeRecipe(F, ST.array(IL.Cover_Drain.get(1)), ZL_IS, null, ZL_LONG, ZL_FS, FL.array(FL.XP.make(20), FL.Mob.make(66)), 0, 0, 0);
    if (FL.Sewage.exists())
        RM.Other.addFakeRecipe(F, ST.array(IL.Cover_Drain.get(1)), ZL_IS, null, ZL_LONG, ZL_FS, FL.array(FL.Sewage.make(0)), 0, 0, 0);
    IL.Cover_Logistics_Display_CPU_Logic.set(addItem(tLastID = 1086, "Logistics Display (CPU Logic)", "For use with Logistics Cores and Wiring", CoverLogisticsDisplayCPULogic.INSTANCE, TC.stack(TC.MACHINA, 2), TC.stack(TC.SENSUS, 2), TC.stack(TC.ITER, 1)));
    IL.Cover_Logistics_Display_CPU_Control.set(addItem(tLastID = 1087, "Logistics Display (CPU Control)", "For use with Logistics Cores and Wiring", CoverLogisticsDisplayCPUControl.INSTANCE, TC.stack(TC.MACHINA, 2), TC.stack(TC.SENSUS, 2), TC.stack(TC.ITER, 1)));
    IL.Cover_Logistics_Display_CPU_Storage.set(addItem(tLastID = 1088, "Logistics Display (CPU Storage)", "For use with Logistics Cores and Wiring", CoverLogisticsDisplayCPUStorage.INSTANCE, TC.stack(TC.MACHINA, 2), TC.stack(TC.SENSUS, 2), TC.stack(TC.ITER, 1)));
    IL.Cover_Logistics_Display_CPU_Conversion.set(addItem(tLastID = 1089, "Logistics Display (CPU Conversion)", "For use with Logistics Cores and Wiring", CoverLogisticsDisplayCPUConversion.INSTANCE, TC.stack(TC.MACHINA, 2), TC.stack(TC.SENSUS, 2), TC.stack(TC.ITER, 1)));
    IL.Cover_Logistics_Fluid_Export.set(addItem(tLastID = 1090, "Filtered Logistics Export Bus (Fluid)", "For use with Logistics Cores and Wiring", CoverLogisticsFluidExport.INSTANCE, TC.stack(TC.MACHINA, 2), TC.stack(TC.COGNITIO, 2), TC.stack(TC.PERMUTATIO, 4), TC.stack(TC.ITER, 4)));
    IL.Cover_Logistics_Fluid_Import.set(addItem(tLastID = 1091, "Filtered Logistics Import Bus (Fluid)", "For use with Logistics Cores and Wiring", CoverLogisticsFluidImport.INSTANCE, TC.stack(TC.MACHINA, 2), TC.stack(TC.COGNITIO, 2), TC.stack(TC.PERMUTATIO, 4), TC.stack(TC.ITER, 4)));
    IL.Cover_Logistics_Fluid_Storage.set(addItem(tLastID = 1092, "Filtered Logistics Storage Bus (Fluid)", "For use with Logistics Cores and Wiring", CoverLogisticsFluidStorage.INSTANCE, TC.stack(TC.MACHINA, 2), TC.stack(TC.COGNITIO, 2), TC.stack(TC.PERMUTATIO, 4), TC.stack(TC.ITER, 4)));
    IL.Cover_Logistics_Item_Export.set(addItem(tLastID = 1093, "Filtered Logistics Export Bus (Item)", "For use with Logistics Cores and Wiring", CoverLogisticsItemExport.INSTANCE, TC.stack(TC.MACHINA, 2), TC.stack(TC.COGNITIO, 2), TC.stack(TC.PERMUTATIO, 4), TC.stack(TC.ITER, 4)));
    IL.Cover_Logistics_Item_Import.set(addItem(tLastID = 1094, "Filtered Logistics Import Bus (Item)", "For use with Logistics Cores and Wiring", CoverLogisticsItemImport.INSTANCE, TC.stack(TC.MACHINA, 2), TC.stack(TC.COGNITIO, 2), TC.stack(TC.PERMUTATIO, 4), TC.stack(TC.ITER, 4)));
    IL.Cover_Logistics_Item_Storage.set(addItem(tLastID = 1095, "Filtered Logistics Storage Bus (Item)", "For use with Logistics Cores and Wiring", CoverLogisticsItemStorage.INSTANCE, TC.stack(TC.MACHINA, 2), TC.stack(TC.COGNITIO, 2), TC.stack(TC.PERMUTATIO, 4), TC.stack(TC.ITER, 4)));
    IL.Cover_Logistics_Generic_Export.set(addItem(tLastID = 1096, "Generic Logistics Export Bus", "For use with Logistics Cores and Wiring", CoverLogisticsGenericExport.INSTANCE, TC.stack(TC.MACHINA, 2), TC.stack(TC.COGNITIO, 2), TC.stack(TC.PERMUTATIO, 4), TC.stack(TC.ITER, 4)));
    IL.Cover_Logistics_Generic_Import.set(addItem(tLastID = 1097, "Generic Logistics Import Bus", "For use with Logistics Cores and Wiring", CoverLogisticsGenericImport.INSTANCE, TC.stack(TC.MACHINA, 2), TC.stack(TC.COGNITIO, 2), TC.stack(TC.PERMUTATIO, 4), TC.stack(TC.ITER, 4)));
    IL.Cover_Logistics_Generic_Storage.set(addItem(tLastID = 1098, "Generic Logistics Storage Bus", "For use with Logistics Cores and Wiring", CoverLogisticsGenericStorage.INSTANCE, TC.stack(TC.MACHINA, 2), TC.stack(TC.COGNITIO, 2), TC.stack(TC.PERMUTATIO, 4), TC.stack(TC.ITER, 4)));
    IL.Cover_Logistics_Dump.set(addItem(tLastID = 1099, "Logistics Dump Bus (Item)", "For use with Logistics Cores and Wiring", CoverLogisticsGenericDump.INSTANCE, TC.stack(TC.MACHINA, 2), TC.stack(TC.COGNITIO, 2), TC.stack(TC.PERMUTATIO, 4), TC.stack(TC.ITER, 4)));
    // Cycle Logistics Displays
    CR.shapeless(IL.Cover_Logistics_Display_CPU_Logic.get(1), new Object[] { IL.Cover_Logistics_Display_CPU_Conversion });
    CR.shapeless(IL.Cover_Logistics_Display_CPU_Control.get(1), new Object[] { IL.Cover_Logistics_Display_CPU_Logic });
    CR.shapeless(IL.Cover_Logistics_Display_CPU_Storage.get(1), new Object[] { IL.Cover_Logistics_Display_CPU_Control });
    CR.shapeless(IL.Cover_Logistics_Display_CPU_Conversion.get(1), new Object[] { IL.Cover_Logistics_Display_CPU_Storage });
    // Cycle Logistics IO
    CR.shapeless(IL.Cover_Logistics_Fluid_Export.get(1), new Object[] { IL.Cover_Logistics_Dump });
    CR.shapeless(IL.Cover_Logistics_Fluid_Import.get(1), new Object[] { IL.Cover_Logistics_Fluid_Export });
    CR.shapeless(IL.Cover_Logistics_Fluid_Storage.get(1), new Object[] { IL.Cover_Logistics_Fluid_Import });
    CR.shapeless(IL.Cover_Logistics_Item_Export.get(1), new Object[] { IL.Cover_Logistics_Fluid_Storage });
    CR.shapeless(IL.Cover_Logistics_Item_Import.get(1), new Object[] { IL.Cover_Logistics_Item_Export });
    CR.shapeless(IL.Cover_Logistics_Item_Storage.get(1), new Object[] { IL.Cover_Logistics_Item_Import });
    CR.shapeless(IL.Cover_Logistics_Generic_Export.get(1), new Object[] { IL.Cover_Logistics_Item_Storage });
    CR.shapeless(IL.Cover_Logistics_Generic_Import.get(1), new Object[] { IL.Cover_Logistics_Generic_Export });
    CR.shapeless(IL.Cover_Logistics_Generic_Storage.get(1), new Object[] { IL.Cover_Logistics_Generic_Import });
    CR.shapeless(IL.Cover_Logistics_Dump.get(1), new Object[] { IL.Cover_Logistics_Generic_Storage });
    // Reset Filters
    CR.shapeless(IL.Cover_Filter_Item.get(1), new Object[] { IL.Cover_Filter_Item });
    CR.shapeless(IL.Cover_Filter_Fluid.get(1), new Object[] { IL.Cover_Filter_Fluid });
    CR.shaped(IL.Cover_Blank.get(1), CR.DEF_REV, "Sh", "Pd", 'P', OP.plate.dat(MT.Al), 'S', OP.screw.dat(MT.Al));
    CR.shaped(IL.Cover_Crafting.get(1), CR.DEF_REV, "C", "Q", 'Q', IL.Cover_Blank, 'C', OD.craftingWorkBench);
    CR.shaped(IL.Cover_Machine_Display.get(1), CR.DEF_REV, "LLB", "CQW", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[1], 'W', MT.DATA.CABLES_01[1], 'B', OD.lever, 'L', OP.wireGt01.dat(MT.Lumium));
    CR.shaped(IL.Cover_Auto_Switch.get(1), CR.DEF_REV, "BW", "CQ", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[1], 'W', MT.DATA.CABLES_01[1], 'B', OD.lever);
    CR.shaped(IL.Cover_Energy_Display.get(1), CR.DEF_REV, "CLB", "WQW", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[1], 'W', MT.DATA.CABLES_01[1], 'B', MT.DATA.WIRES_01[1], 'L', OP.wireGt01.dat(MT.Lumium));
    CR.shaped(IL.Cover_Redstone_Switch.get(1), CR.DEF_REV, "BW", "CQ", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[1], 'W', MT.DATA.CABLES_01[1], 'B', OD.craftingRedstoneTorch);
    CR.shaped(IL.Cover_Auto_Switch_Redstone.get(1), CR.DEF_REV, "BW", "CQ", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[2], 'W', MT.DATA.CABLES_01[2], 'B', OD.lever);
    CR.shaped(IL.Cover_Redstone_Selector.get(1), CR.DEF_REV, " C ", "WQX", " B ", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[1], 'W', MT.DATA.CABLES_01[2], 'B', Items.comparator, 'X', IL.Circuit_Selector.wild(1));
    CR.shaped(IL.Cover_Manual_Selector.get(1), CR.DEF_REV, " C ", "WQX", " B ", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[1], 'W', MT.DATA.CABLES_01[2], 'B', OD.button, 'X', IL.Circuit_Selector.wild(1));
    CR.shaped(IL.Cover_Auto_Switch_01_Minute.get(1), CR.DEF_REV, "BWd", "CQ ", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[5], 'W', MT.DATA.CABLES_01[1], 'B', Items.repeater);
    CR.shaped(IL.Cover_Auto_Switch_05_Minute.get(1), CR.DEF_REV, "BW ", "CQd", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[4], 'W', MT.DATA.CABLES_01[1], 'B', Items.repeater);
    CR.shaped(IL.Cover_Auto_Switch_10_Minute.get(1), CR.DEF_REV, "BW ", "CQ ", "  d", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[3], 'W', MT.DATA.CABLES_01[1], 'B', Items.repeater);
    CR.shaped(IL.Cover_Auto_Switch_20_Minute.get(1), CR.DEF_REV, "BW", "CQ", " d", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[2], 'W', MT.DATA.CABLES_01[1], 'B', Items.repeater);
    CR.shaped(IL.Cover_Auto_Switch_30_Minute.get(1), CR.DEF_REV, "BW", "CQ", "d ", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[1], 'W', MT.DATA.CABLES_01[1], 'B', Items.repeater);
    CR.shaped(IL.Cover_Scale_Energy.get(1), CR.DEF_REV, "WQW", "BCB", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[2], 'W', MT.DATA.CABLES_01[1], 'B', MT.DATA.WIRES_01[1]);
    CR.shaped(IL.Cover_Detector_Possible.get(1), CR.DEF_REV, "WQW", "BCB", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[2], 'W', MT.DATA.CABLES_01[1], 'B', Items.comparator);
    CR.shaped(IL.Cover_Detector_Passively.get(1), CR.DEF_REV, "WQW", "BCB", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[2], 'W', MT.DATA.CABLES_01[1], 'B', Items.repeater);
    CR.shaped(IL.Cover_Detector_Actively.get(1), CR.DEF_REV, "WQW", "BCX", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[2], 'W', MT.DATA.CABLES_01[1], 'B', Items.comparator, 'X', Items.repeater);
    CR.shaped(IL.Cover_Scale_Progress.get(1), CR.DEF_REV, "WQW", "BCB", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[2], 'W', MT.DATA.CABLES_01[1], 'B', OP.gearGtSmall.dat(MT.Brass));
    CR.shaped(IL.Cover_Detector_Success.get(1), CR.DEF_REV, "WQW", "BCX", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[2], 'W', MT.DATA.CABLES_01[1], 'B', OD.button, 'X', OD.craftingRedstoneTorch);
    CR.shaped(IL.Cover_Drain.get(1), CR.DEF_REV, "RRR", "RwR", "RRR", 'R', OP.stick.dat(ANY.Iron));
    CR.shaped(IL.Cover_Redstone_Emitter.get(1), CR.DEF_REV, "BQB", "WXW", 'Q', IL.Cover_Blank, 'W', MT.DATA.CABLES_01[1], 'B', OD.button, 'X', Items.comparator);
    CR.shaped(IL.Cover_Vent.get(1), CR.DEF_REV, "RRR", "RXR", "RRR", 'R', OP.stick.dat(ANY.Iron), 'X', OP.rotor.dat(ANY.Iron));
    CR.shaped(IL.Cover_Filter_Item.get(1), CR.DEF_REV, " Z ", "ZQZ", " Z ", 'Q', IL.Cover_Blank, 'Z', OP.foil.dat(MT.Zn));
    CR.shaped(IL.Cover_Filter_Fluid.get(1), CR.DEF_REV, "Z Z", " Q ", "Z Z", 'Q', IL.Cover_Blank, 'Z', OP.foil.dat(MT.Zn));
    CR.shaped(IL.Cover_Controller.get(1), CR.DEF_REV, "BW", "CQ", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[2], 'W', MT.DATA.CABLES_01[1], 'B', Items.comparator);
    CR.shaped(IL.Cover_Shutter.get(1), CR.DEF_REV, "TwT", "PQP", "TdT", 'Q', IL.Cover_Blank, 'P', OP.plate.dat(MT.StainlessSteel), 'T', OP.screw.dat(MT.StainlessSteel));
    CR.shaped(IL.Cover_Button_Selector.get(1), CR.DEF_REV, "BXB", "BQB", "BCB", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[1], 'B', OD.button, 'X', IL.Circuit_Selector.wild(1));
    CR.shaped(IL.Cover_Warning.get(1), CR.DEF_REV, "GB", "YQ", 'Q', IL.Cover_Blank, 'Y', DYE_OREDICTS[DYE_INDEX_Yellow], 'G', OD.itemGlue);
    CR.shaped(IL.Cover_Redstone_Conductor_IN.get(1), CR.DEF_REV, "R", "Q", 'Q', IL.Cover_Blank, 'R', OP.wireGt01.dat(MT.RedAlloy));
    CR.shaped(IL.Cover_Redstone_Conductor_OUT.get(1), CR.DEF_REV, "Q", "R", 'Q', IL.Cover_Blank, 'R', OP.wireGt01.dat(MT.RedAlloy));
    CR.shaped(IL.Cover_Retriever_Item.get(1), CR.DEF_REV, "RPR", "CQC", 'Q', IL.Cover_Filter_Item, 'P', IL.PISTONS[1], 'C', OD_CIRCUITS[3], 'R', OP.plateCurved.dat(MT.Electrum));
    CR.shapeless(IL.Cover_Redstone_Conductor_IN.get(1), new Object[] { IL.Cover_Redstone_Conductor_OUT.get(1) });
    CR.shapeless(IL.Cover_Redstone_Conductor_OUT.get(1), new Object[] { IL.Cover_Redstone_Conductor_IN.get(1) });
    IL.Cover_Pressure_Valve.set(addItem(tLastID = 2000, "Pressure Valve", "", new CoverPressureValve(), TC.stack(TC.MACHINA, 1), TC.stack(TC.AER, 1), TC.stack(TC.VACUOS, 1)));
    CR.shaped(IL.Cover_Pressure_Valve.get(1), CR.DEF_REV, "TCT", "wPd", 'C', OP.plateCurved.dat(MT.Brass), 'P', OP.plate.dat(MT.Brass), 'T', OP.screw.dat(MT.Brass));
    IL.Shape_Extruder_Empty.set(addItem(tLastID = 10000, "Empty Extruder Shape", "Raw Plate to make Extruder Shapes", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    CR.shaped(IL.Shape_Extruder_Empty.get(1), CR.DEF_REV, "hf", "xP", 'P', OP.plateDouble.dat(MT.TungstenCarbide));
    IL.Shape_Extruder_Plate.set(addItem(tLastID = 10001, "Extruder Shape (Plate)", "Extruder Shape for making Plates", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Rod_Long.set(addItem(tLastID = 10002, "Extruder Shape (Long Rod)", "Extruder Shape for making long Rods", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Bolt.set(addItem(tLastID = 10003, "Extruder Shape (Bolt)", "Extruder Shape for making Bolts", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Ring.set(addItem(tLastID = 10004, "Extruder Shape (Ring)", "Extruder Shape for making Rings", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Cell.set(addItem(tLastID = 10005, "Extruder Shape (Cell)", "Extruder Shape for making Cells", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Ingot.set(addItem(tLastID = 10006, "Extruder Shape (Ingot)", "Extruder Shape for making Ingots", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Wire.set(addItem(tLastID = 10007, "Extruder Shape (Wire)", "Extruder Shape for making Wires", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Casing.set(addItem(tLastID = 10008, "Extruder Shape (Casing)", "Extruder Shape for making Item Casings", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Pipe_Tiny.set(addItem(tLastID = 10009, "Extruder Shape (Tiny Pipe)", "Extruder Shape for making tiny Pipes", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Pipe_Small.set(addItem(tLastID = 10010, "Extruder Shape (Small Pipe)", "Extruder Shape for making small Pipes", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Pipe_Medium.set(addItem(tLastID = 10011, "Extruder Shape (Normal Pipe)", "Extruder Shape for making Pipes", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Pipe_Large.set(addItem(tLastID = 10012, "Extruder Shape (Large Pipe)", "Extruder Shape for making large Pipes", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Pipe_Huge.set(addItem(tLastID = 10013, "Extruder Shape (Huge Pipe)", "Extruder Shape for making full Block Pipes", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Block.set(addItem(tLastID = 10014, "Extruder Shape (Block)", "Extruder Shape for making Blocks", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Sword.set(addItem(tLastID = 10015, "Extruder Shape (Sword Blade)", "Extruder Shape for making Swords", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Pickaxe.set(addItem(tLastID = 10016, "Extruder Shape (Pickaxe Head)", "Extruder Shape for making Pickaxes", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Shovel.set(addItem(tLastID = 10017, "Extruder Shape (Shovel Head)", "Extruder Shape for making Shovels", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Axe.set(addItem(tLastID = 10018, "Extruder Shape (Axe Head)", "Extruder Shape for making Axes", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Hoe.set(addItem(tLastID = 10019, "Extruder Shape (Hoe Head)", "Extruder Shape for making Hoes", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Hammer.set(addItem(tLastID = 10020, "Extruder Shape (Hammer Head)", "Extruder Shape for making Hammers", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_File.set(addItem(tLastID = 10021, "Extruder Shape (File Head)", "Extruder Shape for making Files", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Saw.set(addItem(tLastID = 10022, "Extruder Shape (Saw Blade)", "Extruder Shape for making Saws", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Gear.set(addItem(tLastID = 10023, "Extruder Shape (Gear)", "Extruder Shape for making Gears", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Bottle.set(addItem(tLastID = 10024, "Extruder Shape (Bottle)", "Extruder Shape for making Bottles", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Plate_Curved.set(addItem(tLastID = 10025, "Extruder Shape (Curved Plate)", "Extruder Shape for making Curved Plates", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Gear_Small.set(addItem(tLastID = 10026, "Extruder Shape (Small Gear)", "Extruder Shape for making small Gears", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Rod.set(addItem(tLastID = 10027, "Extruder Shape (Rod)", "Extruder Shape for making Rods", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_CCC.set(addItem(tLastID = 10028, "Extruder Shape (Capsule-Cell-Container)", "Extruder Shape for making Capsule-Cell-Containers", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Foil.set(addItem(tLastID = 10029, "Extruder Shape (Foil)", "Extruder Shape for making Foils from Non-Metals", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Plate_Tiny.set(addItem(tLastID = 10030, "Extruder Shape (Tiny Plate)", "Extruder Shape for making Tiny Plates", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_Extruder_Wire_Fine.set(addItem(tLastID = 10031, "Extruder Shape (Fine Wire)", "Extruder Shape for making Fine Wires from Non-Metals", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    CR.shaped(IL.Shape_Extruder_Ingot.get(1), CR.DEF_REV, "x  ", " P ", "   ", 'P', IL.Shape_Extruder_Empty);
    CR.shaped(IL.Shape_Extruder_Plate_Tiny.get(1), CR.DEF_REV, " x ", " P ", "   ", 'P', IL.Shape_Extruder_Empty);
    CR.shaped(IL.Shape_Extruder_Plate_Curved.get(1), CR.DEF_REV, "  x", " P ", "   ", 'P', IL.Shape_Extruder_Empty);
    CR.shaped(IL.Shape_Extruder_Rod.get(1), CR.DEF_REV, "   ", " Px", "   ", 'P', IL.Shape_Extruder_Empty);
    CR.shaped(IL.Shape_Extruder_Foil.get(1), CR.DEF_REV, "   ", " P ", "  x", 'P', IL.Shape_Extruder_Empty);
    CR.shaped(IL.Shape_Extruder_Ring.get(1), CR.DEF_REV, "   ", " P ", " x ", 'P', IL.Shape_Extruder_Empty);
    CR.shaped(IL.Shape_Extruder_Bolt.get(1), CR.DEF_REV, "x  ", " P ", "   ", 'P', IL.Shape_Extruder_Rod);
    CR.shaped(IL.Shape_Extruder_Wire.get(1), CR.DEF_REV, " x ", " P ", "   ", 'P', IL.Shape_Extruder_Rod);
    CR.shaped(IL.Shape_Extruder_Rod_Long.get(1), CR.DEF_REV, "  x", " P ", "   ", 'P', IL.Shape_Extruder_Rod);
    CR.shaped(IL.Shape_Extruder_Wire_Fine.get(1), CR.DEF_REV, "   ", " Px", "   ", 'P', IL.Shape_Extruder_Rod);
    CR.shaped(IL.Shape_Extruder_Block.get(1), CR.DEF_REV, "x  ", " P ", "   ", 'P', IL.Shape_Extruder_Ingot);
    CR.shaped(IL.Shape_Extruder_Pickaxe.get(1), CR.DEF_REV, " x ", " P ", "   ", 'P', IL.Shape_Extruder_Ingot);
    CR.shaped(IL.Shape_Extruder_Hammer.get(1), CR.DEF_REV, "  x", " P ", "   ", 'P', IL.Shape_Extruder_Ingot);
    CR.shaped(IL.Shape_Extruder_Hoe.get(1), CR.DEF_REV, "   ", " Px", "   ", 'P', IL.Shape_Extruder_Ingot);
    CR.shaped(IL.Shape_Extruder_Gear.get(1), CR.DEF_REV, "x  ", " P ", "   ", 'P', IL.Shape_Extruder_Ring);
    CR.shaped(IL.Shape_Extruder_Gear_Small.get(1), CR.DEF_REV, " x ", " P ", "   ", 'P', IL.Shape_Extruder_Ring);
    CR.shaped(IL.Shape_Extruder_Bottle.get(1), CR.DEF_REV, "  x", " P ", "   ", 'P', IL.Shape_Extruder_Ring);
    CR.shaped(IL.Shape_Extruder_Cell.get(1), CR.DEF_REV, "   ", " Px", "   ", 'P', IL.Shape_Extruder_Ring);
    CR.shaped(IL.Shape_Extruder_CCC.get(1), CR.DEF_REV, "   ", " P ", "  x", 'P', IL.Shape_Extruder_Ring);
    CR.shaped(IL.Shape_Extruder_Axe.get(1), CR.DEF_REV, "x  ", " P ", "   ", 'P', IL.Shape_Extruder_Plate_Tiny);
    CR.shaped(IL.Shape_Extruder_Shovel.get(1), CR.DEF_REV, " x ", " P ", "   ", 'P', IL.Shape_Extruder_Plate_Tiny);
    CR.shaped(IL.Shape_Extruder_File.get(1), CR.DEF_REV, "  x", " P ", "   ", 'P', IL.Shape_Extruder_Plate_Tiny);
    CR.shaped(IL.Shape_Extruder_Sword.get(1), CR.DEF_REV, "   ", " Px", "   ", 'P', IL.Shape_Extruder_Plate_Tiny);
    CR.shaped(IL.Shape_Extruder_Saw.get(1), CR.DEF_REV, "   ", " P ", "  x", 'P', IL.Shape_Extruder_Plate_Tiny);
    CR.shaped(IL.Shape_Extruder_Plate.get(1), CR.DEF_REV, "x  ", " P ", "   ", 'P', IL.Shape_Extruder_Foil);
    CR.shaped(IL.Shape_Extruder_Casing.get(1), CR.DEF_REV, " x ", " P ", "   ", 'P', IL.Shape_Extruder_Foil);
    CR.shaped(IL.Shape_Extruder_Pipe_Tiny.get(1), CR.DEF_REV, "x  ", " P ", "   ", 'P', IL.Shape_Extruder_Plate_Curved);
    CR.shaped(IL.Shape_Extruder_Pipe_Small.get(1), CR.DEF_REV, " x ", " P ", "   ", 'P', IL.Shape_Extruder_Plate_Curved);
    CR.shaped(IL.Shape_Extruder_Pipe_Medium.get(1), CR.DEF_REV, "  x", " P ", "   ", 'P', IL.Shape_Extruder_Plate_Curved);
    CR.shaped(IL.Shape_Extruder_Pipe_Large.get(1), CR.DEF_REV, "   ", " Px", "   ", 'P', IL.Shape_Extruder_Plate_Curved);
    CR.shaped(IL.Shape_Extruder_Pipe_Huge.get(1), CR.DEF_REV, "   ", " P ", "  x", 'P', IL.Shape_Extruder_Plate_Curved);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Empty.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Plate.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Rod_Long.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Bolt.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Ring.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Cell.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Ingot.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Wire.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Casing.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Pipe_Tiny.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Pipe_Small.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Pipe_Medium.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Pipe_Large.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Pipe_Huge.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Block.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Sword.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Pickaxe.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Shovel.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Axe.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Hoe.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Hammer.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_File.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Saw.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Gear.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Bottle.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Plate_Curved.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Gear_Small.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Rod.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_CCC.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Foil.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Plate_Tiny.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Extruder_Wire_Fine.get(1)), (byte) 45);
    IL.Shape_SimpleEx_Empty.set(addItem(tLastID = 10200, "Empty Extruder Shape", "Raw Plate to make Extruder Shapes", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    CR.shaped(IL.Shape_SimpleEx_Empty.get(1), CR.DEF_REV, "hf", "xP", 'P', OP.plateDouble.dat(ANY.Steel));
    IL.Shape_SimpleEx_Plate.set(addItem(tLastID = 10201, "Low Heat Extruder Shape (Plate)", "Extruder Shape for making Plates", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Rod_Long.set(addItem(tLastID = 10202, "Low Heat Extruder Shape (Long Rod)", "Extruder Shape for making long Rods", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Bolt.set(addItem(tLastID = 10203, "Low Heat Extruder Shape (Bolt)", "Extruder Shape for making Bolts", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Ring.set(addItem(tLastID = 10204, "Low Heat Extruder Shape (Ring)", "Extruder Shape for making Rings", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Cell.set(addItem(tLastID = 10205, "Low Heat Extruder Shape (Cell)", "Extruder Shape for making Cells", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Ingot.set(addItem(tLastID = 10206, "Low Heat Extruder Shape (Ingot)", "Extruder Shape for making Ingots", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Wire.set(addItem(tLastID = 10207, "Low Heat Extruder Shape (Wire)", "Extruder Shape for making Wires", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Casing.set(addItem(tLastID = 10208, "Low Heat Extruder Shape (Casing)", "Extruder Shape for making Item Casings", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Pipe_Tiny.set(addItem(tLastID = 10209, "Low Heat Extruder Shape (Tiny Pipe)", "Extruder Shape for making tiny Pipes", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Pipe_Small.set(addItem(tLastID = 10210, "Low Heat Extruder Shape (Small Pipe)", "Extruder Shape for making small Pipes", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Pipe_Medium.set(addItem(tLastID = 10211, "Low Heat Extruder Shape (Normal Pipe)", "Extruder Shape for making Pipes", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Pipe_Large.set(addItem(tLastID = 10212, "Low Heat Extruder Shape (Large Pipe)", "Extruder Shape for making large Pipes", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Pipe_Huge.set(addItem(tLastID = 10213, "Low Heat Extruder Shape (Huge Pipe)", "Extruder Shape for making full Block Pipes", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Block.set(addItem(tLastID = 10214, "Low Heat Extruder Shape (Block)", "Extruder Shape for making Blocks", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Sword.set(addItem(tLastID = 10215, "Low Heat Extruder Shape (Sword Blade)", "Extruder Shape for making Swords", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Pickaxe.set(addItem(tLastID = 10216, "Low Heat Extruder Shape (Pickaxe Head)", "Extruder Shape for making Pickaxes", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Shovel.set(addItem(tLastID = 10217, "Low Heat Extruder Shape (Shovel Head)", "Extruder Shape for making Shovels", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Axe.set(addItem(tLastID = 10218, "Low Heat Extruder Shape (Axe Head)", "Extruder Shape for making Axes", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Hoe.set(addItem(tLastID = 10219, "Low Heat Extruder Shape (Hoe Head)", "Extruder Shape for making Hoes", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Hammer.set(addItem(tLastID = 10220, "Low Heat Extruder Shape (Hammer Head)", "Extruder Shape for making Hammers", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_File.set(addItem(tLastID = 10221, "Low Heat Extruder Shape (File Head)", "Extruder Shape for making Files", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Saw.set(addItem(tLastID = 10222, "Low Heat Extruder Shape (Saw Blade)", "Extruder Shape for making Saws", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Gear.set(addItem(tLastID = 10223, "Low Heat Extruder Shape (Gear)", "Extruder Shape for making Gears", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Bottle.set(addItem(tLastID = 10224, "Low Heat Extruder Shape (Bottle)", "Extruder Shape for making Bottles", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Plate_Curved.set(addItem(tLastID = 10225, "Low Heat Extruder Shape (Curved Plate)", "Extruder Shape for making Curved Plates", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Gear_Small.set(addItem(tLastID = 10226, "Low Heat Extruder Shape (Small Gear)", "Extruder Shape for making small Gears", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Rod.set(addItem(tLastID = 10227, "Low Heat Extruder Shape (Rod)", "Extruder Shape for making Rods", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_CCC.set(addItem(tLastID = 10228, "Low Heat Extruder Shape (Capsule-Cell-Container)", "Extruder Shape for making Capsule-Cell-Containers", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Foil.set(addItem(tLastID = 10229, "Low Heat Extruder Shape (Foil)", "Extruder Shape for making Foils from Non-Metals", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Plate_Tiny.set(addItem(tLastID = 10230, "Low Heat Extruder Shape (Tiny Plate)", "Extruder Shape for making Tiny Plates", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 2)));
    IL.Shape_SimpleEx_Wire_Fine.set(addItem(tLastID = 10231, "Low Heat Extruder Shape (Fine Wire)", "Extruder Shape for making Fine Wires from Non-Metals", TC.stack(TC.FABRICO, 1), TC.stack(TC.METALLUM, 2)));
    CR.shaped(IL.Shape_SimpleEx_Ingot.get(1), CR.DEF_REV, "x  ", " P ", "   ", 'P', IL.Shape_SimpleEx_Empty);
    CR.shaped(IL.Shape_SimpleEx_Plate_Tiny.get(1), CR.DEF_REV, " x ", " P ", "   ", 'P', IL.Shape_SimpleEx_Empty);
    CR.shaped(IL.Shape_SimpleEx_Plate_Curved.get(1), CR.DEF_REV, "  x", " P ", "   ", 'P', IL.Shape_SimpleEx_Empty);
    CR.shaped(IL.Shape_SimpleEx_Rod.get(1), CR.DEF_REV, "   ", " Px", "   ", 'P', IL.Shape_SimpleEx_Empty);
    CR.shaped(IL.Shape_SimpleEx_Foil.get(1), CR.DEF_REV, "   ", " P ", "  x", 'P', IL.Shape_SimpleEx_Empty);
    CR.shaped(IL.Shape_SimpleEx_Ring.get(1), CR.DEF_REV, "   ", " P ", " x ", 'P', IL.Shape_SimpleEx_Empty);
    CR.shaped(IL.Shape_SimpleEx_Bolt.get(1), CR.DEF_REV, "x  ", " P ", "   ", 'P', IL.Shape_SimpleEx_Rod);
    CR.shaped(IL.Shape_SimpleEx_Wire.get(1), CR.DEF_REV, " x ", " P ", "   ", 'P', IL.Shape_SimpleEx_Rod);
    CR.shaped(IL.Shape_SimpleEx_Rod_Long.get(1), CR.DEF_REV, "  x", " P ", "   ", 'P', IL.Shape_SimpleEx_Rod);
    CR.shaped(IL.Shape_SimpleEx_Wire_Fine.get(1), CR.DEF_REV, "   ", " Px", "   ", 'P', IL.Shape_SimpleEx_Rod);
    CR.shaped(IL.Shape_SimpleEx_Block.get(1), CR.DEF_REV, "x  ", " P ", "   ", 'P', IL.Shape_SimpleEx_Ingot);
    CR.shaped(IL.Shape_SimpleEx_Pickaxe.get(1), CR.DEF_REV, " x ", " P ", "   ", 'P', IL.Shape_SimpleEx_Ingot);
    CR.shaped(IL.Shape_SimpleEx_Hammer.get(1), CR.DEF_REV, "  x", " P ", "   ", 'P', IL.Shape_SimpleEx_Ingot);
    CR.shaped(IL.Shape_SimpleEx_Hoe.get(1), CR.DEF_REV, "   ", " Px", "   ", 'P', IL.Shape_SimpleEx_Ingot);
    CR.shaped(IL.Shape_SimpleEx_Gear.get(1), CR.DEF_REV, "x  ", " P ", "   ", 'P', IL.Shape_SimpleEx_Ring);
    CR.shaped(IL.Shape_SimpleEx_Gear_Small.get(1), CR.DEF_REV, " x ", " P ", "   ", 'P', IL.Shape_SimpleEx_Ring);
    CR.shaped(IL.Shape_SimpleEx_Bottle.get(1), CR.DEF_REV, "  x", " P ", "   ", 'P', IL.Shape_SimpleEx_Ring);
    CR.shaped(IL.Shape_SimpleEx_Cell.get(1), CR.DEF_REV, "   ", " Px", "   ", 'P', IL.Shape_SimpleEx_Ring);
    CR.shaped(IL.Shape_SimpleEx_CCC.get(1), CR.DEF_REV, "   ", " P ", "  x", 'P', IL.Shape_SimpleEx_Ring);
    CR.shaped(IL.Shape_SimpleEx_Axe.get(1), CR.DEF_REV, "x  ", " P ", "   ", 'P', IL.Shape_SimpleEx_Plate_Tiny);
    CR.shaped(IL.Shape_SimpleEx_Shovel.get(1), CR.DEF_REV, " x ", " P ", "   ", 'P', IL.Shape_SimpleEx_Plate_Tiny);
    CR.shaped(IL.Shape_SimpleEx_File.get(1), CR.DEF_REV, "  x", " P ", "   ", 'P', IL.Shape_SimpleEx_Plate_Tiny);
    CR.shaped(IL.Shape_SimpleEx_Sword.get(1), CR.DEF_REV, "   ", " Px", "   ", 'P', IL.Shape_SimpleEx_Plate_Tiny);
    CR.shaped(IL.Shape_SimpleEx_Saw.get(1), CR.DEF_REV, "   ", " P ", "  x", 'P', IL.Shape_SimpleEx_Plate_Tiny);
    CR.shaped(IL.Shape_SimpleEx_Plate.get(1), CR.DEF_REV, "x  ", " P ", "   ", 'P', IL.Shape_SimpleEx_Foil);
    CR.shaped(IL.Shape_SimpleEx_Casing.get(1), CR.DEF_REV, " x ", " P ", "   ", 'P', IL.Shape_SimpleEx_Foil);
    CR.shaped(IL.Shape_SimpleEx_Pipe_Tiny.get(1), CR.DEF_REV, "x  ", " P ", "   ", 'P', IL.Shape_SimpleEx_Plate_Curved);
    CR.shaped(IL.Shape_SimpleEx_Pipe_Small.get(1), CR.DEF_REV, " x ", " P ", "   ", 'P', IL.Shape_SimpleEx_Plate_Curved);
    CR.shaped(IL.Shape_SimpleEx_Pipe_Medium.get(1), CR.DEF_REV, "  x", " P ", "   ", 'P', IL.Shape_SimpleEx_Plate_Curved);
    CR.shaped(IL.Shape_SimpleEx_Pipe_Large.get(1), CR.DEF_REV, "   ", " Px", "   ", 'P', IL.Shape_SimpleEx_Plate_Curved);
    CR.shaped(IL.Shape_SimpleEx_Pipe_Huge.get(1), CR.DEF_REV, "   ", " P ", "  x", 'P', IL.Shape_SimpleEx_Plate_Curved);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Empty.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Plate.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Rod_Long.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Bolt.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Ring.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Cell.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Ingot.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Wire.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Casing.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Pipe_Tiny.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Pipe_Small.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Pipe_Medium.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Pipe_Large.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Pipe_Huge.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Block.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Sword.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Pickaxe.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Shovel.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Axe.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Hoe.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Hammer.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_File.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Saw.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Gear.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Bottle.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Plate_Curved.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Gear_Small.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Rod.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_CCC.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Foil.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Plate_Tiny.get(1)), (byte) 55);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_SimpleEx_Wire_Fine.get(1)), (byte) 55);
    IL.Shape_Foodmold_Empty.set(addItem(tLastID = 10800, "Empty Food Grade Mold", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 1)));
    CR.shaped(IL.Shape_Foodmold_Empty.get(1), CR.DEF_REV, "hf", "xP", 'P', OP.plateDouble.dat(MT.StainlessSteel));
    IL.Shape_Foodmold_Bun.set(addItem(tLastID = 10801, "Food Grade Mold (Bun)", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 1)));
    IL.Shape_Foodmold_Bread.set(addItem(tLastID = 10802, "Food Grade Mold (Bread)", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 1)));
    IL.Shape_Foodmold_Baguette.set(addItem(tLastID = 10803, "Food Grade Mold (Baguette)", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 1)));
    IL.Shape_Foodmold_Cylinder.set(addItem(tLastID = 10804, "Food Grade Mold (Cylinder)", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 1)));
    IL.Shape_Foodmold_Toast.set(addItem(tLastID = 10805, "Food Grade Mold (Toast)", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 1)));
    CR.shaped(IL.Shape_Foodmold_Bun.get(1), CR.DEF_REV, "h  ", " P ", "   ", 'P', IL.Shape_Foodmold_Empty);
    CR.shaped(IL.Shape_Foodmold_Bread.get(1), CR.DEF_REV, " h ", " P ", "   ", 'P', IL.Shape_Foodmold_Empty);
    CR.shaped(IL.Shape_Foodmold_Baguette.get(1), CR.DEF_REV, "  h", " P ", "   ", 'P', IL.Shape_Foodmold_Empty);
    CR.shaped(IL.Shape_Foodmold_Cylinder.get(1), CR.DEF_REV, "   ", " Ph", "   ", 'P', IL.Shape_Foodmold_Empty);
    CR.shaped(IL.Shape_Foodmold_Toast.get(1), CR.DEF_REV, "   ", " P ", "  h", 'P', IL.Shape_Foodmold_Empty);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Foodmold_Empty.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Foodmold_Bun.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Foodmold_Bread.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Foodmold_Baguette.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Foodmold_Cylinder.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Foodmold_Toast.get(1)), (byte) 45);
    IL.Shape_Press_Bullet_Casing_Small.set(addItem(tLastID = 10896, "Bullet Casing Mold (Small)", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.TELUM, 2)));
    IL.Shape_Press_Bullet_Casing_Medium.set(addItem(tLastID = 10897, "Bullet Casing Mold (Medium)", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.TELUM, 3)));
    IL.Shape_Press_Bullet_Casing_Large.set(addItem(tLastID = 10898, "Bullet Casing Mold (Large)", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.TELUM, 4)));
    CR.shaped(IL.Shape_Press_Bullet_Casing_Small.get(1), CR.DEF_REV, "TPT", "dyh", "SPS", 'S', OP.stick.dat(ANY.Steel), 'T', OP.screw.dat(ANY.Steel), 'P', OP.plateDouble.dat(ANY.Steel));
    CR.shaped(IL.Shape_Press_Bullet_Casing_Medium.get(1), CR.DEF_REV, "TPT", "dyh", "SPS", 'S', OP.stick.dat(ANY.Steel), 'T', OP.screw.dat(ANY.Steel), 'P', OP.plateTriple.dat(ANY.Steel));
    CR.shaped(IL.Shape_Press_Bullet_Casing_Large.get(1), CR.DEF_REV, "TPT", "dyh", "SPS", 'S', OP.stick.dat(ANY.Steel), 'T', OP.screw.dat(ANY.Steel), 'P', OP.plateQuadruple.dat(ANY.Steel));
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Press_Bullet_Casing_Small.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Press_Bullet_Casing_Medium.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Press_Bullet_Casing_Large.get(1)), (byte) 45);
    IL.Shape_Slicer_Empty.set(addItem(tLastID = 10900, "Slicer Blade Frame", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 1)));
    CR.shaped(IL.Shape_Slicer_Empty.get(1), CR.DEF_REV, " R ", "RhR", " R ", 'R', OP.stick.dat(MT.StainlessSteel));
    IL.Shape_Slicer_Flat.set(addItem(tLastID = 10901, "Slicer Blades (Flat)", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 1), TC.stack(TC.TELUM, 1)));
    IL.Shape_Slicer_Grid.set(addItem(tLastID = 10902, "Slicer Blades (Grid)", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 1), TC.stack(TC.TELUM, 1)));
    IL.Shape_Slicer_Eigths.set(addItem(tLastID = 10903, "Slicer Blades (Eigths)", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 1), TC.stack(TC.TELUM, 1)));
    IL.Shape_Slicer_Eigths_Hollow.set(addItem(tLastID = 10904, "Slicer Blades (Hollow Eigths)", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 1), TC.stack(TC.TELUM, 1)));
    IL.Shape_Slicer_Split.set(addItem(tLastID = 10905, "Slicer Blades (Split)", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 1), TC.stack(TC.TELUM, 1)));
    IL.Shape_Slicer_Quarters.set(addItem(tLastID = 10906, "Slicer Blades (Quarters)", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 1), TC.stack(TC.TELUM, 1)));
    IL.Shape_Slicer_Quarters_Hollow.set(addItem(tLastID = 10907, "Slicer Blades (Hollow Quarters)", "", TC.stack(TC.FABRICO, 2), TC.stack(TC.METALLUM, 1), TC.stack(TC.TELUM, 1)));
    CR.shaped(IL.Shape_Slicer_Flat.get(1), CR.DEF_REV, "B f", "BO ", "B s", 'O', IL.Shape_Slicer_Empty, 'B', OP.plateTiny.dat(MT.StainlessSteel));
    CR.shaped(IL.Shape_Slicer_Grid.get(1), CR.DEF_REV, " Bf", "BOB", " Bs", 'O', IL.Shape_Slicer_Empty, 'B', OP.plateTiny.dat(MT.StainlessSteel));
    CR.shaped(IL.Shape_Slicer_Eigths.get(1), CR.DEF_REV, "B B", "s f", "BOB", 'O', IL.Shape_Slicer_Empty, 'B', OP.plateTiny.dat(MT.StainlessSteel));
    CR.shaped(IL.Shape_Slicer_Eigths_Hollow.get(1), CR.DEF_REV, "B B", "sRf", "BOB", 'O', IL.Shape_Slicer_Empty, 'B', OP.plateTiny.dat(MT.StainlessSteel), 'R', OP.ring.dat(MT.StainlessSteel));
    CR.shaped(IL.Shape_Slicer_Split.get(1), CR.DEF_REV, " Of", "BBB", "  s", 'O', IL.Shape_Slicer_Empty, 'B', OP.plateTiny.dat(MT.StainlessSteel));
    CR.shaped(IL.Shape_Slicer_Quarters.get(1), CR.DEF_REV, "fB ", "B s", " O ", 'O', IL.Shape_Slicer_Empty, 'B', OP.plateTiny.dat(MT.StainlessSteel));
    CR.shaped(IL.Shape_Slicer_Quarters_Hollow.get(1), CR.DEF_REV, "fB ", "BRs", " O ", 'O', IL.Shape_Slicer_Empty, 'B', OP.plateTiny.dat(MT.StainlessSteel), 'R', OP.ring.dat(MT.StainlessSteel));
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Slicer_Empty.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Slicer_Flat.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Slicer_Grid.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Slicer_Eigths.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Slicer_Eigths_Hollow.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Slicer_Split.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Slicer_Quarters.get(1)), (byte) 45);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.Shape_Slicer_Quarters_Hollow.get(1)), (byte) 45);
    IL.Comp_Laser_Gas_Empty.set(addItem(tLastID = 11000, "Empty Gas Laser Emitter", "For Electric Lasers", TC.stack(TC.LUX, 1), TC.stack(TC.VACUOS, 2)));
    CR.shaped(IL.Comp_Laser_Gas_Empty.get(1), CR.DEF_REV_NCC, "CWM", "WGx", "MTd", 'W', MT.DATA.CABLES_01[2], 'C', OD_CIRCUITS[2], 'M', OP.plate.dat(MT.Ag), 'T', OP.screw.dat(MT.StainlessSteel), 'G', OD.blockGlassColorless);
    IL.Comp_Laser_Gas_He.set(addItem(tLastID = 11001, "Helium Laser Emitter", "Purpose: Weak Optical Appliances", TC.stack(TC.LUX, 2), TC.stack(TC.AER, 1), OM.data(IL.Comp_Laser_Gas_Empty.get(1))));
    IL.Comp_Laser_Gas_Ne.set(addItem(tLastID = 11002, "Neon Laser Emitter", "Purpose: Weak Optical Appliances", TC.stack(TC.LUX, 2), TC.stack(TC.AER, 1), OM.data(IL.Comp_Laser_Gas_Empty.get(1))));
    IL.Comp_Laser_Gas_Ar.set(addItem(tLastID = 11003, "Argon Laser Emitter", "Purpose: Strong Optical Appliances", TC.stack(TC.LUX, 2), TC.stack(TC.AER, 1), OM.data(IL.Comp_Laser_Gas_Empty.get(1))));
    IL.Comp_Laser_Gas_Kr.set(addItem(tLastID = 11004, "Krypton Laser Emitter", "Purpose: Science", TC.stack(TC.LUX, 2), TC.stack(TC.AER, 1), OM.data(IL.Comp_Laser_Gas_Empty.get(1))));
    IL.Comp_Laser_Gas_Xe.set(addItem(tLastID = 11005, "Xenon Laser Emitter", "Purpose: Science", TC.stack(TC.LUX, 2), TC.stack(TC.AER, 1), OM.data(IL.Comp_Laser_Gas_Empty.get(1))));
    IL.Comp_Laser_Gas_HeNe.set(addItem(tLastID = 11006, "Helium-Neon Laser Emitter", "Purpose: Weak Optical Appliances", TC.stack(TC.LUX, 2), TC.stack(TC.AER, 1), OM.data(IL.Comp_Laser_Gas_Empty.get(1))));
    IL.Comp_Laser_Gas_CO.set(addItem(tLastID = 11007, "Carbon Monoxide Laser Emitter", "Purpose: Weak Material Processing", TC.stack(TC.LUX, 2), TC.stack(TC.AER, 1), OM.data(IL.Comp_Laser_Gas_Empty.get(1))));
    IL.Comp_Laser_Gas_CO2.set(addItem(tLastID = 11008, "Carbon Dioxide Laser Emitter", "Purpose: Strong Material Processing", TC.stack(TC.LUX, 2), TC.stack(TC.AER, 1), OM.data(IL.Comp_Laser_Gas_Empty.get(1))));
    RM.Canner.addRecipe1(T, 16, 128, IL.Comp_Laser_Gas_Empty.get(1), MT.He.gas(U, T), NF, IL.Comp_Laser_Gas_He.get(1));
    RM.Canner.addRecipe1(T, 16, 128, IL.Comp_Laser_Gas_Empty.get(1), MT.Ne.gas(U, T), NF, IL.Comp_Laser_Gas_Ne.get(1));
    RM.Canner.addRecipe1(T, 16, 128, IL.Comp_Laser_Gas_Empty.get(1), MT.Ar.gas(U, T), NF, IL.Comp_Laser_Gas_Ar.get(1));
    RM.Canner.addRecipe1(T, 16, 128, IL.Comp_Laser_Gas_Empty.get(1), MT.Kr.gas(U, T), NF, IL.Comp_Laser_Gas_Kr.get(1));
    RM.Canner.addRecipe1(T, 16, 128, IL.Comp_Laser_Gas_Empty.get(1), MT.Xe.gas(U, T), NF, IL.Comp_Laser_Gas_Xe.get(1));
    RM.Canner.addRecipe1(T, 16, 128, IL.Comp_Laser_Gas_Empty.get(1), MT.HeNe.gas(U, T), NF, IL.Comp_Laser_Gas_HeNe.get(1));
    RM.Canner.addRecipe1(T, 16, 128, IL.Comp_Laser_Gas_Empty.get(1), MT.CO.gas(U, T), NF, IL.Comp_Laser_Gas_CO.get(1));
    RM.Canner.addRecipe1(T, 16, 128, IL.Comp_Laser_Gas_Empty.get(1), MT.CO2.gas(U, T), NF, IL.Comp_Laser_Gas_CO2.get(1));
    CR.shaped(IL.MOTORS[0].get(1), CR.DEF_REV, "CWR", "WIW", "PWC", 'I', OP.bolt.dat(MT.IronMagnetic), 'P', OP.plateCurved.dat(MT.DATA.Electric_T[0]), 'R', OP.stick.dat(MT.DATA.Electric_T[0]), 'W', OP.wireFine.dat(ANY.Cu), 'C', MT.DATA.CABLES_01[0]);
    CR.shaped(IL.MOTORS[0].get(1), CR.DEF, "CWR", "WIW", "PWC", 'I', OP.bolt.dat(MT.SteelMagnetic), 'P', OP.plateCurved.dat(MT.DATA.Electric_T[0]), 'R', OP.stick.dat(MT.DATA.Electric_T[0]), 'W', OP.wireFine.dat(ANY.Cu), 'C', MT.DATA.CABLES_01[0]);
    CR.shaped(IL.MOTORS[1].get(1), CR.DEF_REV, "CWR", "WIW", "PWC", 'I', OP.stick.dat(MT.IronMagnetic), 'P', OP.plateCurved.dat(MT.DATA.Electric_T[1]), 'R', OP.stick.dat(MT.DATA.Electric_T[1]), 'W', OP.wireGt01.dat(ANY.Cu), 'C', MT.DATA.CABLES_01[1]);
    CR.shaped(IL.MOTORS[1].get(1), CR.DEF, "CWR", "WIW", "PWC", 'I', OP.stick.dat(MT.SteelMagnetic), 'P', OP.plateCurved.dat(MT.DATA.Electric_T[1]), 'R', OP.stick.dat(MT.DATA.Electric_T[1]), 'W', OP.wireGt01.dat(ANY.Cu), 'C', MT.DATA.CABLES_01[1]);
    CR.shaped(IL.MOTORS[2].get(1), CR.DEF_REV, "CWR", "WIW", "PWC", 'I', OP.stick.dat(MT.SteelMagnetic), 'P', OP.plateCurved.dat(MT.DATA.Electric_T[2]), 'R', OP.stick.dat(MT.DATA.Electric_T[2]), 'W', OP.wireGt02.dat(ANY.Cu), 'C', MT.DATA.CABLES_01[2]);
    CR.shaped(IL.MOTORS[3].get(1), CR.DEF_REV, "CWR", "WIW", "PWC", 'I', OP.stick.dat(MT.SteelMagnetic), 'P', OP.plateCurved.dat(MT.DATA.Electric_T[3]), 'R', OP.stick.dat(MT.DATA.Electric_T[3]), 'W', OP.wireGt03.dat(ANY.Cu), 'C', MT.DATA.CABLES_01[3]);
    CR.shaped(IL.MOTORS[4].get(1), CR.DEF_REV, "CWR", "WIW", "PWC", 'I', OP.stick.dat(MT.NeodymiumMagnetic), 'P', OP.plateCurved.dat(MT.DATA.Electric_T[4]), 'R', OP.stick.dat(MT.DATA.Electric_T[4]), 'W', OP.wireGt04.dat(MT.AnnealedCopper), 'C', MT.DATA.CABLES_01[4]);
    CR.shaped(IL.MOTORS[5].get(1), CR.DEF_REV, "CWR", "WIW", "PWC", 'I', OP.stick.dat(MT.NeodymiumMagnetic), 'P', OP.plateCurved.dat(MT.DATA.Electric_T[5]), 'R', OP.stick.dat(MT.DATA.Electric_T[5]), 'W', OP.wireGt05.dat(MT.AnnealedCopper), 'C', MT.DATA.CABLES_01[5]);
    CR.shaped(IL.MOTORS[6].get(1), CR.DEF_REV, "CWR", "WIW", "PWC", 'I', OP.stickLong.dat(MT.NeodymiumMagnetic), 'P', OP.plateCurved.dat(MT.DATA.Electric_T[6]), 'R', OP.stick.dat(MT.DATA.Electric_T[6]), 'W', OP.wireGt06.dat(MT.AnnealedCopper), 'C', MT.DATA.CABLES_01[6]);
    CR.shaped(IL.MOTORS[7].get(1), CR.DEF_REV, "CWR", "WIW", "PWC", 'I', OP.stickLong.dat(MT.NeodymiumMagnetic), 'P', OP.plateCurved.dat(MT.DATA.Electric_T[7]), 'R', OP.stick.dat(MT.DATA.Electric_T[7]), 'W', OP.wireGt07.dat(MT.AnnealedCopper), 'C', MT.DATA.CABLES_01[7]);
    CR.shaped(IL.MOTORS[8].get(1), CR.DEF_REV, "CWR", "WIW", "PWC", 'I', OP.stickLong.dat(MT.NeodymiumMagnetic), 'P', OP.plateCurved.dat(MT.DATA.Electric_T[8]), 'R', OP.stick.dat(MT.DATA.Electric_T[8]), 'W', OP.wireGt08.dat(MT.AnnealedCopper), 'C', MT.DATA.CABLES_01[8]);
    CR.shaped(IL.MOTORS[9].get(1), CR.DEF_REV, "CWR", "WIW", "PWC", 'I', OP.stickLong.dat(MT.NeodymiumMagnetic), 'P', OP.plateCurved.dat(MT.DATA.Electric_T[9]), 'R', OP.stick.dat(MT.DATA.Electric_T[9]), 'W', OP.wireGt09.dat(MT.AnnealedCopper), 'C', MT.DATA.CABLES_01[9]);
    for (int i = 0; i < 10; i++) {
        CR.shaped(IL.PUMPS[i].get(1), CR.DEF_REV, "TXO", "dPw", "OMT", 'M', IL.MOTORS[i], 'O', OP.ring.dat(MT.Rubber), 'X', OP.rotor.dat(MT.DATA.Electric_T[i]), 'T', OP.screw.dat(MT.DATA.Electric_T[i]), 'P', OP.plateCurved.dat(MT.DATA.Electric_T[i]));
        CR.shaped(IL.CONVEYERS[i].get(1), CR.DEF_REV, "RRR", "MCM", "RRR", 'M', IL.MOTORS[i], 'C', MT.DATA.CABLES_01[i], 'R', OP.plate.dat(MT.Rubber));
        CR.shaped(IL.PISTONS[i].get(1), CR.DEF_REV, "TPP", "dSS", "TMG", 'M', IL.MOTORS[i], 'P', OP.plate.dat(MT.DATA.Electric_T[i]), 'S', OP.stick.dat(MT.DATA.Electric_T[i]), 'G', OP.gearGtSmall.dat(MT.DATA.Electric_T[i]), 'T', OP.screw.dat(MT.DATA.Electric_T[i]));
        CR.shaped(IL.ROBOT_ARMS[i].get(1), CR.DEF_REV, "CCC", "MSM", "PES", 'M', IL.MOTORS[i], 'C', MT.DATA.CABLES_01[i], 'E', OD_CIRCUITS[i], 'S', OP.stick.dat(MT.DATA.Electric_T[i]), 'P', IL.PISTONS[i]);
    }
    CR.shaped(IL.FIELD_GENERATORS[0].get(1), CR.DEF_REV, "WPW", "CGC", "WPW", 'G', OP.gem.dat(MT.EnderPearl), 'C', OD_CIRCUITS[0], 'P', OP.plateDouble.dat(MT.DATA.Electric_T[0]), 'W', OP.wireFine.dat(MT.Os));
    CR.shaped(IL.FIELD_GENERATORS[1].get(1), CR.DEF_REV, "WPW", "CGC", "WPW", 'G', OP.gem.dat(MT.EnderPearl), 'C', OD_CIRCUITS[1], 'P', OP.plateDouble.dat(MT.DATA.Electric_T[1]), 'W', OP.wireGt01.dat(MT.Os));
    CR.shaped(IL.FIELD_GENERATORS[2].get(1), CR.DEF_REV, "WPW", "CGC", "WPW", 'G', OP.gem.dat(MT.EnderEye), 'C', OD_CIRCUITS[2], 'P', OP.plateDouble.dat(MT.DATA.Electric_T[2]), 'W', OP.wireGt02.dat(MT.Os));
    CR.shaped(IL.FIELD_GENERATORS[3].get(1), CR.DEF_REV, "WPW", "CGC", "WPW", 'G', OP.gem.dat(MT.EnderEye), 'C', OD_CIRCUITS[3], 'P', OP.plateDouble.dat(MT.DATA.Electric_T[3]), 'W', OP.wireGt04.dat(MT.Os));
    CR.shaped(IL.FIELD_GENERATORS[4].get(1), CR.DEF_REV, "WPW", "CGC", "WPW", 'G', OP.gem.dat(MT.NetherStar), 'C', OD_CIRCUITS[4], 'P', OP.plateDouble.dat(MT.DATA.Electric_T[4]), 'W', OP.wireGt06.dat(MT.Os));
    CR.shaped(IL.FIELD_GENERATORS[5].get(1), CR.DEF_REV, "WPW", "CGC", "WPW", 'G', OP.gem.dat(MT.NetherStar), 'C', OD_CIRCUITS[5], 'P', OP.plateDouble.dat(MT.DATA.Electric_T[5]), 'W', OP.wireGt08.dat(MT.Os));
    CR.shaped(IL.FIELD_GENERATORS[6].get(1), CR.DEF_REV, "WPW", "CGC", "WPW", 'G', OP.gem.dat(MT.NetherStar), 'C', OD_CIRCUITS[6], 'P', OP.plateDouble.dat(MT.DATA.Electric_T[6]), 'W', OP.wireGt10.dat(MT.Os));
    CR.shaped(IL.FIELD_GENERATORS[7].get(1), CR.DEF_REV, "WPW", "CGC", "WPW", 'G', OP.gem.dat(MT.NetherStar), 'C', OD_CIRCUITS[7], 'P', OP.plateDouble.dat(MT.DATA.Electric_T[7]), 'W', OP.wireGt12.dat(MT.Os));
    CR.shaped(IL.FIELD_GENERATORS[8].get(1), CR.DEF_REV, "WPW", "CGC", "WPW", 'G', OP.gem.dat(MT.NetherStar), 'C', OD_CIRCUITS[8], 'P', OP.plateDouble.dat(MT.DATA.Electric_T[8]), 'W', OP.wireGt14.dat(MT.Os));
    CR.shaped(IL.FIELD_GENERATORS[9].get(1), CR.DEF_REV, "WPW", "CGC", "WPW", 'G', OP.gem.dat(MT.NetherStar), 'C', OD_CIRCUITS[9], 'P', OP.plateDouble.dat(MT.DATA.Electric_T[9]), 'W', OP.wireGt16.dat(MT.Os));
    CR.shaped(IL.EMITTERS[0].get(1), CR.DEF_REV, "SPC", "WQP", "CWS", 'Q', OP.gem.dat(ANY.SiO2), 'S', MT.DATA.WIRES_04[0], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[0]), 'C', OD_CIRCUITS[0], 'W', MT.DATA.CABLES_01[0]);
    CR.shaped(IL.EMITTERS[1].get(1), CR.DEF_REV, "SPC", "WQP", "CWS", 'Q', OP.gem.dat(ANY.SiO2), 'S', MT.DATA.WIRES_04[1], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[1]), 'C', OD_CIRCUITS[1], 'W', MT.DATA.CABLES_01[1]);
    CR.shaped(IL.EMITTERS[2].get(1), CR.DEF_REV, "SPC", "WQP", "CWS", 'Q', OP.gem.dat(ANY.SiO2), 'S', MT.DATA.WIRES_04[2], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[2]), 'C', OD_CIRCUITS[2], 'W', MT.DATA.CABLES_01[2]);
    CR.shaped(IL.EMITTERS[3].get(1), CR.DEF_REV, "SPC", "WQP", "CWS", 'Q', OP.gem.dat(ANY.Emerald), 'S', MT.DATA.WIRES_04[3], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[3]), 'C', OD_CIRCUITS[3], 'W', MT.DATA.CABLES_01[3]);
    CR.shaped(IL.EMITTERS[4].get(1), CR.DEF_REV, "SPC", "WQP", "CWS", 'Q', OP.gem.dat(MT.EnderPearl), 'S', MT.DATA.WIRES_04[4], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[4]), 'C', OD_CIRCUITS[4], 'W', MT.DATA.CABLES_01[4]);
    CR.shaped(IL.EMITTERS[5].get(1), CR.DEF_REV, "SPC", "WQP", "CWS", 'Q', OP.gem.dat(MT.EnderEye), 'S', MT.DATA.WIRES_04[5], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[5]), 'C', OD_CIRCUITS[5], 'W', MT.DATA.CABLES_01[5]);
    CR.shaped(IL.EMITTERS[6].get(1), CR.DEF_REV, "SPC", "WQP", "CWS", 'Q', OP.gem.dat(MT.NetherStar), 'S', MT.DATA.WIRES_04[6], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[6]), 'C', OD_CIRCUITS[6], 'W', MT.DATA.CABLES_01[6]);
    CR.shaped(IL.EMITTERS[7].get(1), CR.DEF_REV, "SPC", "WQP", "CWS", 'Q', OP.gem.dat(MT.NetherStar), 'S', MT.DATA.WIRES_04[7], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[7]), 'C', OD_CIRCUITS[7], 'W', MT.DATA.CABLES_01[7]);
    CR.shaped(IL.EMITTERS[8].get(1), CR.DEF_REV, "SPC", "WQP", "CWS", 'Q', OP.gem.dat(MT.NetherStar), 'S', MT.DATA.WIRES_04[8], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[8]), 'C', OD_CIRCUITS[8], 'W', MT.DATA.CABLES_01[8]);
    CR.shaped(IL.EMITTERS[9].get(1), CR.DEF_REV, "SPC", "WQP", "CWS", 'Q', OP.gem.dat(MT.NetherStar), 'S', MT.DATA.WIRES_04[9], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[9]), 'C', OD_CIRCUITS[9], 'W', MT.DATA.CABLES_01[9]);
    CR.shaped(IL.SENSORS[0].get(1), CR.DEF_REV, "P Q", "PS ", "CPP", 'Q', OP.gem.dat(ANY.SiO2), 'S', MT.DATA.WIRES_01[0], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[0]), 'C', OD_CIRCUITS[0]);
    CR.shaped(IL.SENSORS[1].get(1), CR.DEF_REV, "P Q", "PS ", "CPP", 'Q', OP.gem.dat(ANY.SiO2), 'S', MT.DATA.WIRES_01[1], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[1]), 'C', OD_CIRCUITS[1]);
    CR.shaped(IL.SENSORS[2].get(1), CR.DEF_REV, "P Q", "PS ", "CPP", 'Q', OP.gem.dat(ANY.SiO2), 'S', MT.DATA.WIRES_01[2], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[2]), 'C', OD_CIRCUITS[2]);
    CR.shaped(IL.SENSORS[3].get(1), CR.DEF_REV, "P Q", "PS ", "CPP", 'Q', OP.gem.dat(ANY.Emerald), 'S', MT.DATA.WIRES_01[3], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[3]), 'C', OD_CIRCUITS[3]);
    CR.shaped(IL.SENSORS[4].get(1), CR.DEF_REV, "P Q", "PS ", "CPP", 'Q', OP.gem.dat(MT.EnderPearl), 'S', MT.DATA.WIRES_01[4], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[4]), 'C', OD_CIRCUITS[4]);
    CR.shaped(IL.SENSORS[5].get(1), CR.DEF_REV, "P Q", "PS ", "CPP", 'Q', OP.gem.dat(MT.EnderEye), 'S', MT.DATA.WIRES_01[5], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[5]), 'C', OD_CIRCUITS[5]);
    CR.shaped(IL.SENSORS[6].get(1), CR.DEF_REV, "P Q", "PS ", "CPP", 'Q', OP.gem.dat(MT.NetherStar), 'S', MT.DATA.WIRES_01[6], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[6]), 'C', OD_CIRCUITS[6]);
    CR.shaped(IL.SENSORS[7].get(1), CR.DEF_REV, "P Q", "PS ", "CPP", 'Q', OP.gem.dat(MT.NetherStar), 'S', MT.DATA.WIRES_01[7], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[7]), 'C', OD_CIRCUITS[7]);
    CR.shaped(IL.SENSORS[8].get(1), CR.DEF_REV, "P Q", "PS ", "CPP", 'Q', OP.gem.dat(MT.NetherStar), 'S', MT.DATA.WIRES_01[8], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[8]), 'C', OD_CIRCUITS[8]);
    CR.shaped(IL.SENSORS[9].get(1), CR.DEF_REV, "P Q", "PS ", "CPP", 'Q', OP.gem.dat(MT.NetherStar), 'S', MT.DATA.WIRES_01[9], 'P', OP.plateCurved.dat(MT.DATA.Electric_T[9]), 'C', OD_CIRCUITS[9]);
    IL.Battery_Lead_Acid_Cell_Empty.set(addItem(tLastID = 20000, "Lead-Acid Cell (Empty)", "Battery Part (doesn't require Canning Machine!)", ItemsGT.NEI_DONT_SHOW_FLUIDS, TC.stack(TC.METALLUM, 2), TC.stack(TC.VACUOS, 2), new OreDictItemData(MT.Pb, U, MT.BatteryAlloy, U)));
    IL.Battery_Lead_Acid_Cell_Filled.set(addItem(tLastID = 20001, "Lead-Acid Cell (Filled)", "Battery Part", ItemsGT.NEI_DONT_SHOW_FLUIDS, TC.stack(TC.ELECTRUM, 2), TC.stack(TC.VENENUM, 2), new OreDictItemData(MT.Pb, U, MT.BatteryAlloy, U, MT.H2SO4, 2 * U), new FluidContainerData(MT.H2SO4.liquid(2 * U, T), ST.make(this, 1, 20001), ST.make(this, 1, 20000), F)));
    ItemsGT.addNEIRedirects(IL.Battery_Lead_Acid_Cell_Empty.get(1), IL.Battery_Lead_Acid_Cell_Filled.get(1));
    CR.shaped(IL.Battery_Lead_Acid_Cell_Empty.get(1), CR.DEF_NCC, " Fh", "FPF", "xF ", 'P', OP.plateCurved.dat(MT.BatteryAlloy), 'F', OP.foil.dat(MT.Pb));
    IL.Battery_Alkaline_Cell_Empty.set(addItem(tLastID = 20002, "Alkaline Button Cell (Empty)", "Battery Part (doesn't require Canning Machine!)", ItemsGT.NEI_DONT_SHOW_FLUIDS, TC.stack(TC.METALLUM, 2), TC.stack(TC.VACUOS, 2), new OreDictItemData(OM.stack(MT.BatteryAlloy, U), OM.stack(MT.Al, U4), OM.stack(MT.StainlessSteel, U), OM.stack(MT.Plastic, U4), OM.stack(ANY.Iron, U2), OM.stack(ANY.C, U), OM.stack(MT.KOH, U), OM.stack(MT.Zn, U), OM.stack(MT.MnO2, U))));
    IL.Battery_Alkaline_Cell_Filled.set(addItem(tLastID = 20003, "Alkaline Button Cell (Filled)", "Battery Part", ItemsGT.NEI_DONT_SHOW_FLUIDS, TC.stack(TC.ELECTRUM, 2), TC.stack(TC.VENENUM, 2), new OreDictItemData(OM.stack(MT.BatteryAlloy, U), OM.stack(MT.Al, U4), OM.stack(MT.StainlessSteel, U), OM.stack(MT.Plastic, U4), OM.stack(ANY.Iron, U2), OM.stack(ANY.C, U), OM.stack(MT.KOH, U), OM.stack(MT.Zn, U), OM.stack(MT.MnO2, U), OM.stack(MT.H2O, U)), new FluidContainerData(FL.DistW.make(1000), ST.make(this, 1, tLastID), ST.make(this, 1, tLastID - 1), F)));
    ItemsGT.addNEIRedirects(IL.Battery_Alkaline_Cell_Empty.get(1), IL.Battery_Alkaline_Cell_Filled.get(1));
    CR.shaped(IL.Battery_Alkaline_Cell_Empty.get(1), CR.DEF_NCC, "KSM", "OPF", "CWZ", 'P', OP.plateCurved.dat(MT.BatteryAlloy), 'F', OP.foil.dat(MT.Al), 'S', OP.plateCurved.dat(MT.StainlessSteel), 'O', OP.ring.dat(MT.Plastic), 'W', OP.wireGt01.dat(ANY.Iron), 'C', OP.dust.dat(ANY.C), 'K', OP.dust.dat(MT.KOH), 'Z', OP.dust.dat(MT.Zn), 'M', OP.dust.dat(MT.MnO2));
    IL.Battery_NiCd_Cell_Empty.set(addItem(tLastID = 20004, "Nickel-Cadmium Cell (Empty)", "Battery Part (doesn't require Canning Machine!)", ItemsGT.NEI_DONT_SHOW_FLUIDS, TC.stack(TC.METALLUM, 2), TC.stack(TC.VACUOS, 2), new OreDictItemData(OM.stack(MT.BatteryAlloy, U), OM.stack(MT.Al, U4), OM.stack(MT.StainlessSteel, U), OM.stack(MT.Plastic, U4), OM.stack(ANY.Iron, U2), OM.stack(MT.Graphite, U2), OM.stack(MT.KOH, U), OM.stack(MT.Ni, U), OM.stack(MT.Cd, U))));
    IL.Battery_NiCd_Cell_Filled.set(addItem(tLastID = 20005, "Nickel-Cadmium Cell (Filled)", "Battery Part", ItemsGT.NEI_DONT_SHOW_FLUIDS, TC.stack(TC.ELECTRUM, 2), TC.stack(TC.VENENUM, 2), new OreDictItemData(OM.stack(MT.BatteryAlloy, U), OM.stack(MT.Al, U4), OM.stack(MT.StainlessSteel, U), OM.stack(MT.Plastic, U4), OM.stack(ANY.Iron, U2), OM.stack(MT.Graphite, U2), OM.stack(MT.KOH, U), OM.stack(MT.Ni, U), OM.stack(MT.Cd, U), OM.stack(MT.H2O, U)), new FluidContainerData(FL.DistW.make(1000), ST.make(this, 1, tLastID), ST.make(this, 1, tLastID - 1), F)));
    ItemsGT.addNEIRedirects(IL.Battery_NiCd_Cell_Empty.get(1), IL.Battery_NiCd_Cell_Filled.get(1));
    CR.shaped(IL.Battery_NiCd_Cell_Empty.get(1), CR.DEF_NCC, "KSM", "OPF", "CWZ", 'P', OP.plateCurved.dat(MT.BatteryAlloy), 'F', OP.foil.dat(MT.Al), 'S', OP.plateCurved.dat(MT.StainlessSteel), 'O', OP.ring.dat(MT.Plastic), 'W', OP.wireGt01.dat(ANY.Iron), 'C', OP.stick.dat(MT.Graphite), 'K', OP.dust.dat(MT.KOH), 'Z', OP.plateCurved.dat(MT.Ni), 'M', OP.plateCurved.dat(MT.Cd));
    IL.Battery_LiCoO2_Cell_Empty.set(addItem(tLastID = 20006, "Lithium-Cobalt Cell (Empty)", "Battery Part (doesn't require Canning Machine!)", ItemsGT.NEI_DONT_SHOW_FLUIDS, TC.stack(TC.METALLUM, 2), TC.stack(TC.VACUOS, 2), new OreDictItemData(OM.stack(MT.BatteryAlloy, U), OM.stack(MT.Co, U2), OM.stack(MT.Cr, U), OM.stack(MT.Plastic, U2), OM.stack(MT.Graphite, U2), OM.stack(MT.LiClO4, U * 2))));
    IL.Battery_LiCoO2_Cell_Filled.set(addItem(tLastID = 20007, "Lithium-Cobalt Cell (Filled)", "Battery Part", ItemsGT.NEI_DONT_SHOW_FLUIDS, TC.stack(TC.ELECTRUM, 2), TC.stack(TC.VENENUM, 2), new OreDictItemData(OM.stack(MT.BatteryAlloy, U), OM.stack(MT.Co, U2), OM.stack(MT.Cr, U), OM.stack(MT.Plastic, U2), OM.stack(MT.Graphite, U2), OM.stack(MT.LiClO4, U * 2), OM.stack(MT.HCl, U * 2)), new FluidContainerData(MT.HCl.gas(U * 2, T), ST.make(this, 1, tLastID), ST.make(this, 1, tLastID - 1), F)));
    ItemsGT.addNEIRedirects(IL.Battery_LiCoO2_Cell_Empty.get(1), IL.Battery_LiCoO2_Cell_Filled.get(1));
    CR.shaped(IL.Battery_LiCoO2_Cell_Empty.get(1), CR.DEF_NCC, "CLF", "XSG", "FLP", 'P', OP.plateCurved.dat(MT.BatteryAlloy), 'X', OP.stick.dat(MT.Co), 'G', OP.stick.dat(MT.Graphite), 'L', OP.dust.dat(MT.LiClO4), 'S', OP.plateCurved.dat(MT.Cr), 'F', OP.foil.dat(MT.Plastic), 'C', OD_CIRCUITS[4]);
    IL.Battery_LiMn_Cell_Empty.set(addItem(tLastID = 20008, "Lithium-Manganese Cell (Empty)", "Battery Part (doesn't require Canning Machine!)", ItemsGT.NEI_DONT_SHOW_FLUIDS, TC.stack(TC.METALLUM, 2), TC.stack(TC.VACUOS, 2), new OreDictItemData(OM.stack(MT.BatteryAlloy, U), OM.stack(MT.Mn, U2), OM.stack(MT.Cr, U), OM.stack(MT.Plastic, U2), OM.stack(MT.Graphite, U2), OM.stack(MT.LiClO4, U * 2))));
    IL.Battery_LiMn_Cell_Filled.set(addItem(tLastID = 20009, "Lithium-Manganese Cell (Filled)", "Battery Part", ItemsGT.NEI_DONT_SHOW_FLUIDS, TC.stack(TC.ELECTRUM, 2), TC.stack(TC.VENENUM, 2), new OreDictItemData(OM.stack(MT.BatteryAlloy, U), OM.stack(MT.Mn, U2), OM.stack(MT.Cr, U), OM.stack(MT.Plastic, U2), OM.stack(MT.Graphite, U2), OM.stack(MT.LiClO4, U * 2), OM.stack(MT.HF, U * 2)), new FluidContainerData(MT.HF.gas(U * 2, T), ST.make(this, 1, tLastID), ST.make(this, 1, tLastID - 1), F)));
    ItemsGT.addNEIRedirects(IL.Battery_LiMn_Cell_Empty.get(1), IL.Battery_LiMn_Cell_Filled.get(1));
    CR.shaped(IL.Battery_LiMn_Cell_Empty.get(1), CR.DEF_NCC, "CLF", "XSG", "FLP", 'P', OP.plateCurved.dat(MT.BatteryAlloy), 'X', OP.stick.dat(MT.Mn), 'G', OP.stick.dat(MT.Graphite), 'L', OP.dust.dat(MT.LiClO4), 'S', OP.plateCurved.dat(MT.Cr), 'F', OP.foil.dat(MT.Plastic), 'C', OD_CIRCUITS[6]);
    IL.Electrode_FR_Copper.set(addItem(tLastID = 29987, "Electrode (Copper)", "Needs Glass Tube", new OreDictItemData(ANY.Cu, 5 * U4, MT.Redstone, U2), TC.stack(TC.ELECTRUM, 1), MD.FR.mLoaded ? null : TD.Creative.HIDDEN));
    IL.Electrode_FR_Tin.set(addItem(tLastID = 29988, "Electrode (Tin)", "Needs Glass Tube", new OreDictItemData(MT.Sn, 5 * U4, MT.Redstone, U2), TC.stack(TC.ELECTRUM, 1), MD.FR.mLoaded ? null : TD.Creative.HIDDEN));
    IL.Electrode_FR_Bronze.set(addItem(tLastID = 29989, "Electrode (Bronze)", "Needs Glass Tube", new OreDictItemData(MT.Bronze, 5 * U4, MT.Redstone, U2), TC.stack(TC.ELECTRUM, 1), MD.FR.mLoaded ? null : TD.Creative.HIDDEN));
    IL.Electrode_FR_Iron.set(addItem(tLastID = 29990, "Electrode (Iron)", "Needs Glass Tube", new OreDictItemData(ANY.Fe, 5 * U4, MT.Redstone, U2), TC.stack(TC.ELECTRUM, 1), MD.FR.mLoaded ? null : TD.Creative.HIDDEN));
    IL.Electrode_FR_Gold.set(addItem(tLastID = 29991, "Electrode (Gold)", "Needs Glass Tube", new OreDictItemData(MT.Au, 5 * U4, MT.Redstone, U2), TC.stack(TC.ELECTRUM, 1), MD.FR.mLoaded ? null : TD.Creative.HIDDEN));
    IL.Electrode_FR_Diamond.set(addItem(tLastID = 29992, "Electrode (Diamond)", "Needs Glass Tube", new OreDictItemData(ANY.Diamond, 5 * U4, MT.Redstone, U2), TC.stack(TC.ELECTRUM, 1), MD.FR.mLoaded ? null : TD.Creative.HIDDEN));
    IL.Electrode_FR_Obsidian.set(addItem(tLastID = 29993, "Electrode (Obsidian)", "Needs Glass Tube", new OreDictItemData(MT.Obsidian, 5 * U4, MT.Redstone, U2), TC.stack(TC.ELECTRUM, 1), MD.FR.mLoaded ? null : TD.Creative.HIDDEN));
    IL.Electrode_FR_Blaze.set(addItem(tLastID = 29994, "Electrode (Blaze)", "Needs Glass Tube", new OreDictItemData(MT.Blaze, 5 * U4, MT.Redstone, U2), TC.stack(TC.ELECTRUM, 1), MD.FR.mLoaded ? null : TD.Creative.HIDDEN));
    IL.Electrode_FR_Rubber.set(addItem(tLastID = 29995, "Electrode (Rubber)", "Needs Glass Tube", new OreDictItemData(MT.Rubber, 5 * U4, MT.Redstone, U2), TC.stack(TC.ELECTRUM, 1), MD.FR.mLoaded ? null : TD.Creative.HIDDEN));
    IL.Electrode_FR_Emerald.set(addItem(tLastID = 29996, "Electrode (Emerald)", "Needs Glass Tube", new OreDictItemData(ANY.Emerald, 5 * U4, MT.Redstone, U2), TC.stack(TC.ELECTRUM, 1), MD.FR.mLoaded ? null : TD.Creative.HIDDEN));
    IL.Electrode_FR_Apatite.set(addItem(tLastID = 29997, "Electrode (Apatite)", "Needs Glass Tube", new OreDictItemData(MT.Apatite, 5 * U4, MT.Redstone, U2), TC.stack(TC.ELECTRUM, 1), MD.FR.mLoaded ? null : TD.Creative.HIDDEN));
    IL.Electrode_FR_Lapis.set(addItem(tLastID = 29998, "Electrode (Lapis)", "Needs Glass Tube", new OreDictItemData(MT.Lapis, 5 * U4, MT.Redstone, U2), TC.stack(TC.ELECTRUM, 1), MD.FR.mLoaded ? null : TD.Creative.HIDDEN));
    IL.Electrode_FR_Ender.set(addItem(tLastID = 29999, "Electrode (Ender)", "Needs Glass Tube", new OreDictItemData(MT.Endstone, 5 * U4, MT.EnderEye, U2), TC.stack(TC.ELECTRUM, 1), MD.FR.mLoaded ? null : TD.Creative.HIDDEN));
    for (OreDictMaterial tMat : ANY.Cu.mToThis) RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(tMat, 2), OP.bolt.mat(tMat, 2), OP.dustSmall.mat(MT.Redstone, 2)), IL.Electrode_FR_Copper.get(1));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(MT.Sn, 2), OP.bolt.mat(MT.Sn, 2), OP.dustSmall.mat(MT.Redstone, 2)), IL.Electrode_FR_Tin.get(1));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(MT.Bronze, 2), OP.bolt.mat(MT.Bronze, 2), OP.dustSmall.mat(MT.Redstone, 2)), IL.Electrode_FR_Bronze.get(1));
    for (OreDictMaterial tMat : ANY.Iron.mToThis) RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(tMat, 2), OP.bolt.mat(tMat, 2), OP.dustSmall.mat(MT.Redstone, 2)), IL.Electrode_FR_Iron.get(1));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(MT.Au, 2), OP.bolt.mat(MT.Au, 2), OP.dustSmall.mat(MT.Redstone, 2)), IL.Electrode_FR_Gold.get(1));
    for (OreDictMaterial tMat : ANY.Diamond.mToThis) RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(tMat, 2), OP.bolt.mat(tMat, 2), OP.dustSmall.mat(MT.Redstone, 2)), IL.Electrode_FR_Diamond.get(1));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(MT.Obsidian, 2), OP.bolt.mat(MT.Obsidian, 2), OP.dustSmall.mat(MT.Redstone, 2)), IL.Electrode_FR_Obsidian.get(1));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(MT.Blaze, 2), OP.bolt.mat(MT.Blaze, 2), OP.dustSmall.mat(MT.Redstone, 2)), IL.Electrode_FR_Blaze.get(1));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(MT.Rubber, 2), OP.bolt.mat(MT.Rubber, 2), OP.dustSmall.mat(MT.Redstone, 2)), IL.Electrode_FR_Rubber.get(1));
    for (OreDictMaterial tMat : ANY.Emerald.mToThis) RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(tMat, 2), OP.bolt.mat(tMat, 2), OP.dustSmall.mat(MT.Redstone, 2)), IL.Electrode_FR_Emerald.get(1));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(MT.Apatite, 2), OP.bolt.mat(MT.Apatite, 2), OP.dustSmall.mat(MT.Redstone, 2)), IL.Electrode_FR_Apatite.get(1));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(MT.Lapis, 2), OP.bolt.mat(MT.Lapis, 2), OP.dustSmall.mat(MT.Redstone, 2)), IL.Electrode_FR_Lapis.get(1));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.dustSmall.mat(MT.Endstone, 5), OP.dustSmall.mat(MT.EnderEye, 2)), IL.Electrode_FR_Ender.get(1));
    for (OreDictMaterial tMat : ANY.Cu.mToThis) RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(tMat, 4), OP.bolt.mat(tMat, 4), OP.dust.mat(MT.Redstone, 1)), IL.Electrode_FR_Copper.get(2));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(MT.Sn, 4), OP.bolt.mat(MT.Sn, 4), OP.dust.mat(MT.Redstone, 1)), IL.Electrode_FR_Tin.get(2));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(MT.Bronze, 4), OP.bolt.mat(MT.Bronze, 4), OP.dust.mat(MT.Redstone, 1)), IL.Electrode_FR_Bronze.get(2));
    for (OreDictMaterial tMat : ANY.Iron.mToThis) RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(tMat, 4), OP.bolt.mat(tMat, 4), OP.dust.mat(MT.Redstone, 1)), IL.Electrode_FR_Iron.get(2));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(MT.Au, 4), OP.bolt.mat(MT.Au, 4), OP.dust.mat(MT.Redstone, 1)), IL.Electrode_FR_Gold.get(2));
    for (OreDictMaterial tMat : ANY.Diamond.mToThis) RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(tMat, 4), OP.bolt.mat(tMat, 4), OP.dust.mat(MT.Redstone, 1)), IL.Electrode_FR_Diamond.get(2));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(MT.Obsidian, 4), OP.bolt.mat(MT.Obsidian, 4), OP.dust.mat(MT.Redstone, 1)), IL.Electrode_FR_Obsidian.get(2));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(MT.Blaze, 4), OP.bolt.mat(MT.Blaze, 4), OP.dust.mat(MT.Redstone, 1)), IL.Electrode_FR_Blaze.get(2));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(MT.Rubber, 4), OP.bolt.mat(MT.Rubber, 4), OP.dust.mat(MT.Redstone, 1)), IL.Electrode_FR_Rubber.get(2));
    for (OreDictMaterial tMat : ANY.Emerald.mToThis) RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(tMat, 4), OP.bolt.mat(tMat, 4), OP.dust.mat(MT.Redstone, 1)), IL.Electrode_FR_Emerald.get(2));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(MT.Apatite, 4), OP.bolt.mat(MT.Apatite, 4), OP.dust.mat(MT.Redstone, 1)), IL.Electrode_FR_Apatite.get(2));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.stick.mat(MT.Lapis, 4), OP.bolt.mat(MT.Lapis, 4), OP.dust.mat(MT.Redstone, 1)), IL.Electrode_FR_Lapis.get(2));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.dustSmall.mat(MT.Endstone, 10), OP.dust.mat(MT.EnderEye, 1)), IL.Electrode_FR_Ender.get(2));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.dustSmall.mat(MT.Endstone, 10), OP.gem.mat(MT.EnderEye, 1)), IL.Electrode_FR_Ender.get(2));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.dust.mat(MT.Endstone, 5), OP.dust.mat(MT.EnderEye, 2)), IL.Electrode_FR_Ender.get(4));
    RM.Press.addRecipeX(T, 16, 64, ST.array(OP.dust.mat(MT.Endstone, 5), OP.gem.mat(MT.EnderEye, 2)), IL.Electrode_FR_Ender.get(4));
    RM.Press.addRecipeX(T, 16, 64, ST.array(ST.make(Blocks.end_stone, 5, W), OP.dust.mat(MT.EnderEye, 2)), IL.Electrode_FR_Ender.get(4));
    RM.Press.addRecipeX(T, 16, 64, ST.array(ST.make(Blocks.end_stone, 5, W), OP.gem.mat(MT.EnderEye, 2)), IL.Electrode_FR_Ender.get(4));
    IL.Circuit_Plate_Empty.set(addItem(tLastID = 30000, "Circuit Plate", "Needs Circuit Wiring", new OreDictItemData(ANY.SiO2, U, MT.Plastic, U), TC.stack(TC.FABRICO, 1)));
    for (OreDictMaterial tMat : ANY.SiO2.mToThis) {
        ItemStack tDust = OP.dust.mat(tMat, 1);
        if (ST.valid(tDust))
            RM.Press.addRecipe2(T, F, F, F, T, 16, 64, OP.plate.mat(MT.Plastic, 1), tDust, IL.Circuit_Plate_Empty.get(1));
    }
    IL.Circuit_Wire_Copper.set(addItem(tLastID = 30001, "Circuit Wiring (Copper)", "Needs to be placed on an empty Circuit Plate", new OreDictItemData(MT.Cu, U), TC.stack(TC.FABRICO, 1), TC.stack(TC.PERMUTATIO, 1)));
    IL.Circuit_Plate_Copper.set(addItem(tLastID = 30002, "Circuit Plate (Copper)", "Needs Circuit Parts", new OreDictItemData(MT.Cu, U, ANY.SiO2, U, MT.Plastic, U), TC.stack(TC.FABRICO, 1), TC.stack(TC.PERMUTATIO, 1)));
    IL.Circuit_Wire_Gold.set(addItem(tLastID = 30003, "Circuit Wiring (Gold)", "Needs to be placed on an empty Circuit Plate", new OreDictItemData(MT.Au, U), TC.stack(TC.FABRICO, 1), TC.stack(TC.LUCRUM, 1)));
    IL.Circuit_Plate_Gold.set(addItem(tLastID = 30004, "Circuit Plate (Gold)", "Needs Circuit Parts", new OreDictItemData(MT.Au, U, ANY.SiO2, U, MT.Plastic, U), TC.stack(TC.FABRICO, 1), TC.stack(TC.LUCRUM, 1), "oc:materialCircuitBoardPrinted"));
    IL.Circuit_Wire_Platinum.set(addItem(tLastID = 30005, "Circuit Wiring (Platinum)", "Needs to be placed on an empty Circuit Plate", new OreDictItemData(MT.Pt, U), TC.stack(TC.FABRICO, 1), TC.stack(TC.NEBRISUM, 1)));
    IL.Circuit_Plate_Platinum.set(addItem(tLastID = 30006, "Circuit Plate (Platinum)", "Needs Circuit Parts", new OreDictItemData(MT.Pt, U, ANY.SiO2, U, MT.Plastic, U), TC.stack(TC.FABRICO, 1), TC.stack(TC.NEBRISUM, 1)));
    IL.Circuit_Wire_Magic.set(addItem(tLastID = 30011, "Circuit Wiring (Magic)", "Needs to be placed on an empty Circuit Plate", TC.stack(TC.FABRICO, 1), TC.stack(TC.PRAECANTIO, 1)));
    IL.Circuit_Plate_Magic.set(addItem(tLastID = 30012, "Circuit Plate (Magic)", "Needs Circuit Parts", new OreDictItemData(ANY.SiO2, U, MT.Plastic, U), TC.stack(TC.FABRICO, 1), TC.stack(TC.PRAECANTIO, 1)));
    IL.Circuit_Wire_Enderium.set(addItem(tLastID = 30013, "Circuit Wiring (Enderium)", "Needs to be placed on an empty Circuit Plate", new OreDictItemData(MT.Enderium, U), TC.stack(TC.FABRICO, 1), TC.stack(TC.ALIENIS, 1)));
    IL.Circuit_Plate_Enderium.set(addItem(tLastID = 30014, "Circuit Plate (Enderium)", "Needs Circuit Parts", new OreDictItemData(MT.Enderium, U, ANY.SiO2, U, MT.Plastic, U), TC.stack(TC.FABRICO, 1), TC.stack(TC.ALIENIS, 1)));
    IL.Circuit_Wire_Signalum.set(addItem(tLastID = 30015, "Circuit Wiring (Signalum)", "Needs to be placed on an empty Circuit Plate", new OreDictItemData(MT.Signalum, U), TC.stack(TC.FABRICO, 1), TC.stack(TC.POTENTIA, 1)));
    IL.Circuit_Plate_Signalum.set(addItem(tLastID = 30016, "Circuit Plate (Signalum)", "Needs Circuit Parts", new OreDictItemData(MT.Signalum, U, ANY.SiO2, U, MT.Plastic, U), TC.stack(TC.FABRICO, 1), TC.stack(TC.POTENTIA, 1)));
    IL.Circuit_Plate_HSLA.set(addItem(tLastID = 30099, "Circuit Plate (HSLA)", "Needs Circuit Parts", new OreDictItemData(MT.HSLA, U, MT.Au, U), TC.stack(TC.FABRICO, 1), TC.stack(TC.MACHINA, 1), MD.RoC.mLoaded ? null : TD.Creative.HIDDEN));
    CR.shaped(IL.Circuit_Wire_Copper.get(1), CR.DEF, "WWW", "WxW", "WWW", 'W', OP.wireFine.dat(ANY.Cu));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Empty.get(1), IL.Circuit_Wire_Copper.get(1), IL.Circuit_Plate_Copper.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Empty.get(1), IL.Circuit_Wire_Gold.get(1), IL.Circuit_Plate_Gold.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Empty.get(1), IL.Circuit_Wire_Platinum.get(1), IL.Circuit_Plate_Platinum.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Empty.get(1), IL.Circuit_Wire_Magic.get(1), IL.Circuit_Plate_Magic.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Empty.get(1), IL.Circuit_Wire_Enderium.get(1), IL.Circuit_Plate_Enderium.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Empty.get(1), IL.Circuit_Wire_Signalum.get(1), IL.Circuit_Plate_Signalum.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, OP.plate.mat(MT.HSLA, 1), IL.Circuit_Wire_Gold.get(1), IL.Circuit_Plate_HSLA.get(1));
    IL.Circuit_Part_Basic.set(addItem(tLastID = 30101, "Circuit Part (Basic)", "Needs to be placed on a Copper Circuit Plate", TC.stack(TC.COGNITIO, 1)));
    IL.Circuit_Part_Good.set(addItem(tLastID = 30102, "Circuit Part (Good)", "Needs to be placed on a Copper Circuit Plate", TC.stack(TC.COGNITIO, 1)));
    IL.Circuit_Part_Advanced.set(addItem(tLastID = 30103, "Circuit Part (Advanced)", "Needs to be placed on a Gold Circuit Plate", TC.stack(TC.COGNITIO, 1)));
    IL.Circuit_Part_Elite.set(addItem(tLastID = 30104, "Circuit Part (Elite)", "Needs to be placed on a Gold Circuit Plate", TC.stack(TC.COGNITIO, 1)));
    IL.Circuit_Part_Master.set(addItem(tLastID = 30105, "Circuit Part (Master)", "Needs to be placed on a Platinum Circuit Plate", TC.stack(TC.COGNITIO, 1)));
    IL.Circuit_Part_Ultimate.set(addItem(tLastID = 30106, "Circuit Part (Ultimate)", "Needs to be placed on a Platinum Circuit Plate", TC.stack(TC.COGNITIO, 1)));
    IL.Circuit_Part_Magic.set(addItem(tLastID = 30111, "Circuit Part (Magic)", "Needs to be placed on a Magical Circuit Plate", TC.stack(TC.PRAECANTIO, 1)));
    IL.Circuit_Part_Enderium.set(addItem(tLastID = 30113, "Circuit Part (Enderium)", "Needs to be placed on an Enderium Circuit Plate", TC.stack(TC.ALIENIS, 1)));
    IL.Circuit_Part_Signalum.set(addItem(tLastID = 30115, "Circuit Part (Signalum)", "Needs to be placed on a Signalum Circuit Plate", TC.stack(TC.POTENTIA, 1)));
    IL.Circuit_Part_EnderPearl.set(addItem(tLastID = 30198, "Circuit Part (Enderpearl)", "Needs to be placed on a Circuit Plate", TC.stack(TC.ALIENIS, 1)));
    IL.Circuit_Part_EnderEye.set(addItem(tLastID = 30199, "Circuit Part (Ender Eye)", "Needs to be placed on a Circuit Plate", TC.stack(TC.ALIENIS, 1)));
    for (OreDictMaterial tMat : ANY.Cu.mToThis) {
        RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(tMat, 9), OP.dust.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.Si, 9)), IL.Circuit_Part_Basic.get(9));
        RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(tMat, 9), OP.dust.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.Ge, 9)), IL.Circuit_Part_Basic.get(9));
        RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(tMat, 9), OP.dust.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.RedstoneAlloy, 9)), IL.Circuit_Part_Basic.get(9));
        RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(tMat, 1), OP.dustTiny.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.Si, 1)), IL.Circuit_Part_Basic.get(1));
        RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(tMat, 1), OP.dustTiny.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.Ge, 1)), IL.Circuit_Part_Basic.get(1));
        RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(tMat, 1), OP.dustTiny.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.RedstoneAlloy, 1)), IL.Circuit_Part_Basic.get(1));
        RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(tMat, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.Si, 1)), IL.Circuit_Part_Good.get(1));
        RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(tMat, 1), OP.wireFine.mat(MT.RedAlloy, 1), OP.plateGemTiny.mat(MT.Si, 1)), IL.Circuit_Part_Good.get(1));
        RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(tMat, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.Ge, 1)), IL.Circuit_Part_Good.get(1));
        RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(tMat, 1), OP.wireFine.mat(MT.RedAlloy, 1), OP.plateGemTiny.mat(MT.Ge, 1)), IL.Circuit_Part_Good.get(1));
        RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(tMat, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.RedstoneAlloy, 1)), IL.Circuit_Part_Good.get(1));
        RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(tMat, 1), OP.wireFine.mat(MT.RedAlloy, 1), OP.plateGemTiny.mat(MT.RedstoneAlloy, 1)), IL.Circuit_Part_Good.get(1));
    }
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Au, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.Si, 1)), IL.Circuit_Part_Advanced.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Au, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.Ge, 1)), IL.Circuit_Part_Advanced.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Au, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.RedstoneAlloy, 1)), IL.Circuit_Part_Elite.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Pt, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.Si, 1)), IL.Circuit_Part_Master.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Pt, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.Ge, 1)), IL.Circuit_Part_Master.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Pt, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.RedstoneAlloy, 1)), IL.Circuit_Part_Ultimate.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Thaumium, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.Si, 1)), IL.Circuit_Part_Magic.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Thaumium, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.Ge, 1)), IL.Circuit_Part_Magic.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Thaumium, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.RedstoneAlloy, 1)), IL.Circuit_Part_Magic.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Manasteel, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.Si, 1)), IL.Circuit_Part_Magic.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Manasteel, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.Ge, 1)), IL.Circuit_Part_Magic.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Manasteel, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.RedstoneAlloy, 1)), IL.Circuit_Part_Magic.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Mithril, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.Si, 1)), IL.Circuit_Part_Magic.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Mithril, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.Ge, 1)), IL.Circuit_Part_Magic.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Mithril, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.RedstoneAlloy, 1)), IL.Circuit_Part_Magic.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Enderium, 1), OP.wireFine.mat(MT.Signalum, 1), OP.plateGemTiny.mat(MT.RedstoneAlloy, 1)), IL.Circuit_Part_Enderium.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Signalum, 9), OP.dust.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.Si, 9)), IL.Circuit_Part_Signalum.get(9));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Signalum, 9), OP.dust.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.Ge, 9)), IL.Circuit_Part_Signalum.get(9));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Signalum, 9), OP.dust.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.RedstoneAlloy, 9)), IL.Circuit_Part_Signalum.get(9));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Signalum, 1), OP.dustTiny.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.Si, 1)), IL.Circuit_Part_Signalum.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Signalum, 1), OP.dustTiny.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.Ge, 1)), IL.Circuit_Part_Signalum.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.wireFine.mat(MT.Signalum, 1), OP.dustTiny.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.RedstoneAlloy, 1)), IL.Circuit_Part_Signalum.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.plateGemTiny.mat(MT.EnderPearl, 9), OP.dust.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.Si, 9)), IL.Circuit_Part_EnderPearl.get(9));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.plateGemTiny.mat(MT.EnderPearl, 9), OP.dust.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.Ge, 9)), IL.Circuit_Part_EnderPearl.get(9));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.plateGemTiny.mat(MT.EnderPearl, 9), OP.dust.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.RedstoneAlloy, 9)), IL.Circuit_Part_EnderPearl.get(9));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.plateGemTiny.mat(MT.EnderEye, 9), OP.dust.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.Si, 9)), IL.Circuit_Part_EnderEye.get(9));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.plateGemTiny.mat(MT.EnderEye, 9), OP.dust.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.Ge, 9)), IL.Circuit_Part_EnderEye.get(9));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.plateGemTiny.mat(MT.EnderEye, 9), OP.dust.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.RedstoneAlloy, 9)), IL.Circuit_Part_EnderEye.get(9));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.plateGemTiny.mat(MT.EnderPearl, 1), OP.dustTiny.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.Si, 1)), IL.Circuit_Part_EnderPearl.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.plateGemTiny.mat(MT.EnderPearl, 1), OP.dustTiny.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.Ge, 1)), IL.Circuit_Part_EnderPearl.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.plateGemTiny.mat(MT.EnderPearl, 1), OP.dustTiny.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.RedstoneAlloy, 1)), IL.Circuit_Part_EnderPearl.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.plateGemTiny.mat(MT.EnderEye, 1), OP.dustTiny.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.Si, 1)), IL.Circuit_Part_EnderEye.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.plateGemTiny.mat(MT.EnderEye, 1), OP.dustTiny.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.Ge, 1)), IL.Circuit_Part_EnderEye.get(1));
    RM.Press.addRecipeX(T, F, F, F, T, 16, 16, ST.array(OP.plateGemTiny.mat(MT.EnderEye, 1), OP.dustTiny.mat(MT.Redstone, 1), OP.plateGemTiny.mat(MT.RedstoneAlloy, 1)), IL.Circuit_Part_EnderEye.get(1));
    IL.Circuit_Board_Basic.set(addItem(tLastID = 30201, "Circuit Board (Basic)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1)));
    IL.Circuit_Board_Good.set(addItem(tLastID = 30202, "Circuit Board (Good)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1)));
    IL.Circuit_Board_Advanced.set(addItem(tLastID = 30203, "Circuit Board (Advanced)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1)));
    IL.Circuit_Board_Elite.set(addItem(tLastID = 30204, "Circuit Board (Elite)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1)));
    IL.Circuit_Board_Master.set(addItem(tLastID = 30205, "Circuit Board (Master)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1)));
    IL.Circuit_Board_Ultimate.set(addItem(tLastID = 30206, "Circuit Board (Ultimate)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1)));
    IL.Circuit_Board_Magic.set(addItem(tLastID = 30211, "Circuit Board (Magic)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1)));
    IL.Circuit_Board_Enderium.set(addItem(tLastID = 30213, "Circuit Board (Enderium)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1)));
    IL.Circuit_Board_Signalum.set(addItem(tLastID = 30215, "Circuit Board (Signalum)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1)));
    IL.Circuit_Board_BC_Redstone.set(addItem(tLastID = 30280, "Circuit Board (BC Redstone)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1), MD.BC_SILICON.mLoaded ? null : TD.Creative.HIDDEN, new OreDictItemData(OM.stack(MT.Signalum, U), OM.stack(ANY.SiO2, U), OM.stack(MT.Plastic, U), OM.stack(MT.Redstone, 4 * U))));
    IL.Circuit_Board_BC_Iron.set(addItem(tLastID = 30281, "Circuit Board (BC Iron)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1), MD.BC_SILICON.mLoaded ? null : TD.Creative.HIDDEN, new OreDictItemData(OM.stack(MT.Signalum, U), OM.stack(ANY.SiO2, U), OM.stack(MT.Plastic, U), OM.stack(MT.Redstone, 4 * U), OM.stack(ANY.Fe, 4 * U))));
    IL.Circuit_Board_BC_Gold.set(addItem(tLastID = 30282, "Circuit Board (BC Gold)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1), MD.BC_SILICON.mLoaded ? null : TD.Creative.HIDDEN, new OreDictItemData(OM.stack(MT.Signalum, U), OM.stack(ANY.SiO2, U), OM.stack(MT.Plastic, U), OM.stack(MT.Redstone, 4 * U), OM.stack(MT.Au, 4 * U))));
    IL.Circuit_Board_BC_Diamond.set(addItem(tLastID = 30283, "Circuit Board (BC Diamond)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1), MD.BC_SILICON.mLoaded ? null : TD.Creative.HIDDEN, new OreDictItemData(OM.stack(MT.Signalum, U), OM.stack(ANY.SiO2, U), OM.stack(MT.Plastic, U), OM.stack(MT.Redstone, 4 * U), OM.stack(ANY.Diamond, 4 * U))));
    IL.Circuit_Board_BC_Ender.set(addItem(tLastID = 30284, "Circuit Board (BC Ender)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1), MD.BC_SILICON.mLoaded ? null : TD.Creative.HIDDEN, new OreDictItemData(OM.stack(MT.Signalum, U), OM.stack(ANY.SiO2, U), OM.stack(MT.Plastic, U), OM.stack(MT.Redstone, 4 * U), OM.stack(MT.EnderPearl, 4 * U))));
    IL.Circuit_Board_BC_Quartz.set(addItem(tLastID = 30285, "Circuit Board (BC Quartz)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1), MD.BC_SILICON.mLoaded ? null : TD.Creative.HIDDEN, new OreDictItemData(OM.stack(MT.Signalum, U), OM.stack(ANY.SiO2, 5 * U), OM.stack(MT.Plastic, U), OM.stack(MT.Redstone, 4 * U))));
    IL.Circuit_Board_BC_Comparator.set(addItem(tLastID = 30286, "Circuit Board (BC Comparator)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1), MD.BC_SILICON.mLoaded ? null : TD.Creative.HIDDEN, new OreDictItemData(OM.stack(MT.Signalum, U), OM.stack(ANY.SiO2, U), OM.stack(MT.Plastic, U), OM.stack(MT.Redstone, 16 * U))));
    IL.Circuit_Board_BC_Emerald.set(addItem(tLastID = 30287, "Circuit Board (BC Emerald)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1), MD.BC_SILICON.mLoaded ? null : TD.Creative.HIDDEN, new OreDictItemData(OM.stack(MT.Signalum, U), OM.stack(ANY.SiO2, U), OM.stack(MT.Plastic, U), OM.stack(MT.Redstone, 4 * U), OM.stack(ANY.Emerald, 4 * U))));
    IL.Circuit_Board_HSLA_Circuit.set(addItem(tLastID = 30298, "Circuit Board (HSLA Circuit)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1), MD.RoC.mLoaded ? null : TD.Creative.HIDDEN));
    IL.Circuit_Board_Power_Module.set(addItem(tLastID = 30299, "Circuit Board (Power Module)", "Needs to be soldered properly", TC.stack(TC.FABRICO, 1), MD.RoC.mLoaded ? null : TD.Creative.HIDDEN));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Copper.get(1), IL.Circuit_Part_Basic.get(4), IL.Circuit_Board_Basic.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Copper.get(1), IL.Circuit_Part_Good.get(4), IL.Circuit_Board_Good.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Copper.get(1), IL.Circuit_Part_Advanced.get(4), IL.Circuit_Board_Good.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Copper.get(1), IL.Circuit_Part_Elite.get(4), IL.Circuit_Board_Good.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Copper.get(1), IL.Circuit_Part_Master.get(4), IL.Circuit_Board_Good.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Copper.get(1), IL.Circuit_Part_Ultimate.get(4), IL.Circuit_Board_Good.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Gold.get(1), IL.Circuit_Part_Basic.get(4), IL.Circuit_Board_Basic.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Gold.get(1), IL.Circuit_Part_Good.get(4), IL.Circuit_Board_Good.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Gold.get(1), IL.Circuit_Part_Advanced.get(4), IL.Circuit_Board_Advanced.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Gold.get(1), IL.Circuit_Part_Elite.get(4), IL.Circuit_Board_Elite.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Gold.get(1), IL.Circuit_Part_Master.get(4), IL.Circuit_Board_Elite.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Gold.get(1), IL.Circuit_Part_Ultimate.get(4), IL.Circuit_Board_Elite.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Platinum.get(1), IL.Circuit_Part_Basic.get(4), IL.Circuit_Board_Basic.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Platinum.get(1), IL.Circuit_Part_Good.get(4), IL.Circuit_Board_Good.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Platinum.get(1), IL.Circuit_Part_Advanced.get(4), IL.Circuit_Board_Advanced.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Platinum.get(1), IL.Circuit_Part_Elite.get(4), IL.Circuit_Board_Elite.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Platinum.get(1), IL.Circuit_Part_Master.get(4), IL.Circuit_Board_Master.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Platinum.get(1), IL.Circuit_Part_Ultimate.get(4), IL.Circuit_Board_Ultimate.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Magic.get(1), IL.Circuit_Part_Magic.get(4), IL.Circuit_Board_Magic.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Enderium.get(1), IL.Circuit_Part_Enderium.get(4), IL.Circuit_Board_Enderium.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_Signalum.get(1), IL.Circuit_Part_Signalum.get(4), IL.Circuit_Board_Signalum.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_HSLA.get(1), IL.Circuit_Part_EnderPearl.get(4), IL.Circuit_Board_HSLA_Circuit.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 64, IL.Circuit_Plate_HSLA.get(1), IL.Circuit_Part_EnderEye.get(4), IL.Circuit_Board_Power_Module.get(1));
    IL.Circuit_Basic.set(addItem(tLastID = 30301, "Circuit T1 (Basic)", "Computes simple Data very slowly", MT.DATA.CIRCUITS[1], OD_CIRCUITS[1], TC.stack(TC.COGNITIO, 2)));
    IL.Circuit_Good.set(addItem(tLastID = 30302, "Circuit T2 (Good)", "Computes simple Data slowly", MT.DATA.CIRCUITS[2], OD_CIRCUITS[2], TC.stack(TC.COGNITIO, 3)));
    IL.Circuit_Advanced.set(addItem(tLastID = 30303, "Circuit T3 (Advanced)", "Computes simple Data with average speed", MT.DATA.CIRCUITS[3], OD_CIRCUITS[3], TC.stack(TC.COGNITIO, 4)));
    IL.Circuit_Elite.set(addItem(tLastID = 30304, "Circuit T4 (Elite)", "Computes simple Data with improved speed", MT.DATA.CIRCUITS[4], OD_CIRCUITS[4], TC.stack(TC.COGNITIO, 5)));
    IL.Circuit_Master.set(addItem(tLastID = 30305, "Circuit T5 (Master)", "Computes simple Data efficiently", MT.DATA.CIRCUITS[5], OD_CIRCUITS[5], TC.stack(TC.COGNITIO, 6)));
    IL.Circuit_Ultimate.set(addItem(tLastID = 30306, "Circuit T6 (Ultimate)", "Computes simple Data very efficiently", MT.DATA.CIRCUITS[6], OD_CIRCUITS[6], TC.stack(TC.COGNITIO, 7)));
    IL.Circuit_Magic.set(addItem(tLastID = 30311, "Circuit (Magic)", "Computes simple Data magically", OP.circuit.dat(MT.Magic)));
    IL.Circuit_Enderium.set(addItem(tLastID = 30313, "Circuit (Enderium)", "Computes simple Data somewhere else", OP.circuit.dat(MT.Enderium)));
    IL.Circuit_Signalum.set(addItem(tLastID = 30315, "Circuit (Signalum)", "Computes simple Logic", OP.circuit.dat(MT.Signalum)));
    IL.Circuit_BC_Redstone.set(addItem(tLastID = 30380, "Circuit (BC Redstone)", "Made for tweaking Recipes", MD.BC_SILICON.mLoaded ? null : TD.Creative.HIDDEN, TC.stack(TC.COGNITIO, 1), TC.stack(TC.POTENTIA, 3), TC.stack(TC.MACHINA, 1), new OreDictItemData(OM.stack(MT.Signalum, U), OM.stack(ANY.SiO2, U), OM.stack(MT.Plastic, U), OM.stack(MT.Redstone, 4 * U))));
    IL.Circuit_BC_Iron.set(addItem(tLastID = 30381, "Circuit (BC Iron)", "Made for tweaking Recipes", MD.BC_SILICON.mLoaded ? null : TD.Creative.HIDDEN, TC.stack(TC.COGNITIO, 2), TC.stack(TC.METALLUM, 4), new OreDictItemData(OM.stack(MT.Signalum, U), OM.stack(ANY.SiO2, U), OM.stack(MT.Plastic, U), OM.stack(MT.Redstone, 4 * U), OM.stack(ANY.Fe, 4 * U))));
    IL.Circuit_BC_Gold.set(addItem(tLastID = 30382, "Circuit (BC Gold)", "Made for tweaking Recipes", MD.BC_SILICON.mLoaded ? null : TD.Creative.HIDDEN, TC.stack(TC.COGNITIO, 3), TC.stack(TC.LUCRUM, 2), TC.stack(TC.METALLUM, 2), new OreDictItemData(OM.stack(MT.Signalum, U), OM.stack(ANY.SiO2, U), OM.stack(MT.Plastic, U), OM.stack(MT.Redstone, 4 * U), OM.stack(MT.Au, 4 * U))));
    IL.Circuit_BC_Diamond.set(addItem(tLastID = 30383, "Circuit (BC Diamond)", "Made for tweaking Recipes", MD.BC_SILICON.mLoaded ? null : TD.Creative.HIDDEN, TC.stack(TC.COGNITIO, 4), TC.stack(TC.LUCRUM, 2), TC.stack(TC.VITREUS, 2), new OreDictItemData(OM.stack(MT.Signalum, U), OM.stack(ANY.SiO2, U), OM.stack(MT.Plastic, U), OM.stack(MT.Redstone, 4 * U), OM.stack(ANY.Diamond, 4 * U))));
    IL.Circuit_BC_Ender.set(addItem(tLastID = 30384, "Circuit (BC Ender)", "Made for tweaking Recipes", MD.BC_SILICON.mLoaded ? null : TD.Creative.HIDDEN, TC.stack(TC.COGNITIO, 3), TC.stack(TC.ALIENIS, 4), new OreDictItemData(OM.stack(MT.Signalum, U), OM.stack(ANY.SiO2, U), OM.stack(MT.Plastic, U), OM.stack(MT.Redstone, 4 * U), OM.stack(MT.EnderPearl, 4 * U))));
    IL.Circuit_BC_Quartz.set(addItem(tLastID = 30385, "Circuit (BC Quartz)", "Made for tweaking Recipes", MD.BC_SILICON.mLoaded ? null : TD.Creative.HIDDEN, TC.stack(TC.COGNITIO, 2), TC.stack(TC.POTENTIA, 2), TC.stack(TC.VITREUS, 2), new OreDictItemData(OM.stack(MT.Signalum, U), OM.stack(ANY.SiO2, 5 * U), OM.stack(MT.Plastic, U), OM.stack(MT.Redstone, 4 * U))));
    IL.Circuit_BC_Comparator.set(addItem(tLastID = 30386, "Circuit (BC Comparator)", "Made for tweaking Recipes", MD.BC_SILICON.mLoaded ? null : TD.Creative.HIDDEN, TC.stack(TC.COGNITIO, 2), TC.stack(TC.MACHINA, 4), new OreDictItemData(OM.stack(MT.Signalum, U), OM.stack(ANY.SiO2, U), OM.stack(MT.Plastic, U), OM.stack(MT.Redstone, 16 * U))));
    IL.Circuit_BC_Emerald.set(addItem(tLastID = 30387, "Circuit (BC Emerald)", "Made for tweaking Recipes", MD.BC_SILICON.mLoaded ? null : TD.Creative.HIDDEN, TC.stack(TC.COGNITIO, 4), TC.stack(TC.LUCRUM, 2), TC.stack(TC.VITREUS, 2), new OreDictItemData(OM.stack(MT.Signalum, U), OM.stack(ANY.SiO2, U), OM.stack(MT.Plastic, U), OM.stack(MT.Redstone, 4 * U), OM.stack(ANY.Emerald, 4 * U))));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Basic.get(1), MT.Pb.liquid(U2, T), NF, IL.Circuit_Basic.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Basic.get(1), MT.Sn.liquid(U2, T), NF, IL.Circuit_Basic.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Basic.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_Basic.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Good.get(1), MT.Pb.liquid(U2, T), NF, IL.Circuit_Basic.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Good.get(1), MT.Sn.liquid(U2, T), NF, IL.Circuit_Good.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Good.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_Good.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Advanced.get(1), MT.Pb.liquid(U2, T), NF, IL.Circuit_Basic.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Advanced.get(1), MT.Sn.liquid(U2, T), NF, IL.Circuit_Good.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Advanced.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_Advanced.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Elite.get(1), MT.Pb.liquid(U2, T), NF, IL.Circuit_Good.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Elite.get(1), MT.Sn.liquid(U2, T), NF, IL.Circuit_Advanced.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Elite.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_Elite.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Master.get(1), MT.Pb.liquid(U2, T), NF, IL.Circuit_Advanced.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Master.get(1), MT.Sn.liquid(U2, T), NF, IL.Circuit_Elite.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Master.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_Master.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Ultimate.get(1), MT.Pb.liquid(U2, T), NF, IL.Circuit_Elite.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Ultimate.get(1), MT.Sn.liquid(U2, T), NF, IL.Circuit_Master.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Ultimate.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_Ultimate.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Magic.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_Magic.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Enderium.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_Enderium.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Signalum.get(1), MT.Pb.liquid(U2, T), NF, IL.Circuit_Signalum.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Signalum.get(1), MT.Sn.liquid(U2, T), NF, IL.Circuit_Signalum.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_Signalum.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_Signalum.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_BC_Redstone.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_BC_Redstone.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_BC_Iron.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_BC_Iron.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_BC_Gold.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_BC_Gold.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_BC_Diamond.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_BC_Diamond.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_BC_Ender.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_BC_Ender.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_BC_Quartz.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_BC_Quartz.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_BC_Comparator.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_BC_Comparator.get(1));
    RM.Bath.addRecipe1(T, F, F, F, T, 0, 64, IL.Circuit_Board_BC_Emerald.get(1), MT.SolderingAlloy.liquid(U2, T), NF, IL.Circuit_BC_Emerald.get(1));
    IL.Circuit_Crystal_Diamond.set(addItem(tLastID = 30401, "Crystal Circuit (Diamond)", "Logic Diamond", TC.stack(TC.COGNITIO, 3), TC.stack(TC.LUCRUM, 2), TC.stack(TC.VITREUS, 2), new OreDictItemData(OM.stack(ANY.Diamond, U))));
    IL.Circuit_Crystal_Ruby.set(addItem(tLastID = 30402, "Crystal Circuit (Ruby)", "Control Ruby", TC.stack(TC.COGNITIO, 3), TC.stack(TC.LUCRUM, 2), TC.stack(TC.VITREUS, 2), new OreDictItemData(OM.stack(MT.Ruby, U))));
    IL.Circuit_Crystal_Emerald.set(addItem(tLastID = 30403, "Crystal Circuit (Emerald)", "Storage Emerald", TC.stack(TC.COGNITIO, 3), TC.stack(TC.LUCRUM, 2), TC.stack(TC.VITREUS, 2), new OreDictItemData(OM.stack(ANY.Emerald, U))));
    IL.Circuit_Crystal_Sapphire.set(addItem(tLastID = 30404, "Crystal Circuit (Sapphire)", "Conversion Sapphire", TC.stack(TC.COGNITIO, 3), TC.stack(TC.LUCRUM, 2), TC.stack(TC.VITREUS, 2), new OreDictItemData(OM.stack(ANY.Sapphire, U))));
    IL.Processor_Crystal_Empty.set(addItem(tLastID = 30500, "Crystal Processor Socket", "Base for Crystal Circuits", TC.stack(TC.COGNITIO, 5), TC.stack(TC.VACUOS, 2)));
    IL.Processor_Crystal_Diamond.set(addItem(tLastID = 30501, "Crystal Processor (Diamond)", "Logic Processor Circuit", TC.stack(TC.COGNITIO, 5), TC.stack(TC.LUCRUM, 2), TC.stack(TC.VITREUS, 2), new OreDictItemData(MT.Pt, U, ANY.Diamond, U)));
    IL.Processor_Crystal_Ruby.set(addItem(tLastID = 30502, "Crystal Processor (Ruby)", "Control Processor Circuit", TC.stack(TC.COGNITIO, 5), TC.stack(TC.LUCRUM, 2), TC.stack(TC.VITREUS, 2), new OreDictItemData(MT.Pt, U, MT.Ruby, U)));
    IL.Processor_Crystal_Emerald.set(addItem(tLastID = 30503, "Crystal Processor (Emerald)", "Storage Processor Circuit", TC.stack(TC.COGNITIO, 5), TC.stack(TC.LUCRUM, 2), TC.stack(TC.VITREUS, 2), new OreDictItemData(MT.Pt, U, ANY.Emerald, U)));
    IL.Processor_Crystal_Sapphire.set(addItem(tLastID = 30504, "Crystal Processor (Sapphire)", "Conversion Processor Circuit", TC.stack(TC.COGNITIO, 5), TC.stack(TC.LUCRUM, 2), TC.stack(TC.VITREUS, 2), new OreDictItemData(MT.Pt, U, ANY.Sapphire, U)));
    CR.shaped(IL.Processor_Crystal_Empty.get(1), CR.DEF_REV, "CLC", "LBL", "CLC", 'C', OD_CIRCUITS[6], 'B', IL.Circuit_Plate_Platinum, 'L', IL.Comp_Laser_Gas_HeNe);
    RM.Press.addRecipe2(T, F, F, F, T, 16, 16, IL.Processor_Crystal_Empty.get(1), IL.Circuit_Crystal_Diamond.get(1), IL.Processor_Crystal_Diamond.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 16, IL.Processor_Crystal_Empty.get(1), IL.Circuit_Crystal_Ruby.get(1), IL.Processor_Crystal_Ruby.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 16, IL.Processor_Crystal_Empty.get(1), IL.Circuit_Crystal_Emerald.get(1), IL.Processor_Crystal_Emerald.get(1));
    RM.Press.addRecipe2(T, F, F, F, T, 16, 16, IL.Processor_Crystal_Empty.get(1), IL.Circuit_Crystal_Sapphire.get(1), IL.Processor_Crystal_Sapphire.get(1));
    CR.shaped(IL.Cover_Logistics_Display_CPU_Logic.get(1), CR.DEF_REV, "dL ", " Q ", " C ", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[2], 'L', OP.wireGt01.dat(MT.Lumium));
    CR.shaped(IL.Cover_Logistics_Display_CPU_Control.get(1), CR.DEF_REV, " Ld", " Q ", " C ", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[2], 'L', OP.wireGt01.dat(MT.Lumium));
    CR.shaped(IL.Cover_Logistics_Display_CPU_Storage.get(1), CR.DEF_REV, " L ", " Q ", "dC ", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[2], 'L', OP.wireGt01.dat(MT.Lumium));
    CR.shaped(IL.Cover_Logistics_Display_CPU_Conversion.get(1), CR.DEF_REV, " L ", " Q ", " Cd", 'Q', IL.Cover_Blank, 'C', OD_CIRCUITS[2], 'L', OP.wireGt01.dat(MT.Lumium));
    CR.shaped(IL.Cover_Logistics_Fluid_Export.get(1), CR.DEF_REV, "  w", "WQW", "CPC", 'Q', IL.Cover_Blank, 'P', IL.Processor_Crystal_Emerald, 'C', OD_CIRCUITS[4], 'W', OP.wireFine.dat(MT.Os));
    CR.shaped(IL.Cover_Logistics_Fluid_Import.get(1), CR.DEF_REV, " w ", "WQW", "CPC", 'Q', IL.Cover_Blank, 'P', IL.Processor_Crystal_Emerald, 'C', OD_CIRCUITS[4], 'W', OP.wireFine.dat(MT.Os));
    CR.shaped(IL.Cover_Logistics_Fluid_Storage.get(1), CR.DEF_REV, "w  ", "WQW", "CPC", 'Q', IL.Cover_Blank, 'P', IL.Processor_Crystal_Emerald, 'C', OD_CIRCUITS[4], 'W', OP.wireFine.dat(MT.Os));
    CR.shaped(IL.Cover_Logistics_Item_Export.get(1), CR.DEF_REV, "  r", "WQW", "CPC", 'Q', IL.Cover_Blank, 'P', IL.Processor_Crystal_Emerald, 'C', OD_CIRCUITS[4], 'W', OP.wireFine.dat(MT.Os));
    CR.shaped(IL.Cover_Logistics_Item_Import.get(1), CR.DEF_REV, " r ", "WQW", "CPC", 'Q', IL.Cover_Blank, 'P', IL.Processor_Crystal_Emerald, 'C', OD_CIRCUITS[4], 'W', OP.wireFine.dat(MT.Os));
    CR.shaped(IL.Cover_Logistics_Item_Storage.get(1), CR.DEF_REV, "r  ", "WQW", "CPC", 'Q', IL.Cover_Blank, 'P', IL.Processor_Crystal_Emerald, 'C', OD_CIRCUITS[4], 'W', OP.wireFine.dat(MT.Os));
    CR.shaped(IL.Cover_Logistics_Generic_Export.get(1), CR.DEF_REV, "  d", "WQW", "CPC", 'Q', IL.Cover_Blank, 'P', IL.Processor_Crystal_Emerald, 'C', OD_CIRCUITS[4], 'W', OP.wireFine.dat(MT.Os));
    CR.shaped(IL.Cover_Logistics_Generic_Import.get(1), CR.DEF_REV, " d ", "WQW", "CPC", 'Q', IL.Cover_Blank, 'P', IL.Processor_Crystal_Emerald, 'C', OD_CIRCUITS[4], 'W', OP.wireFine.dat(MT.Os));
    CR.shaped(IL.Cover_Logistics_Generic_Storage.get(1), CR.DEF_REV, "d  ", "WQW", "CPC", 'Q', IL.Cover_Blank, 'P', IL.Processor_Crystal_Emerald, 'C', OD_CIRCUITS[4], 'W', OP.wireFine.dat(MT.Os));
    CR.shaped(IL.Cover_Logistics_Dump.get(1), CR.DEF_REV, "   ", "WQW", "CPC", 'Q', IL.Cover_Blank, 'P', IL.Processor_Crystal_Emerald, 'C', OD_CIRCUITS[4], 'W', OP.wireFine.dat(MT.Os));
    IL.USB_Stick_1.set(addItem(tLastID = 32001, "USB 1.0 Stick", "Stores Data", OD_USB_STICKS[1], Behavior_DataStorage.INSTANCE, TC.stack(TC.COGNITIO, 3), TC.stack(TC.ELECTRUM, 1)));
    IL.USB_Stick_2.set(addItem(tLastID = 32002, "USB 2.0 Stick", "Stores Data", OD_USB_STICKS[2], Behavior_DataStorage.INSTANCE, TC.stack(TC.COGNITIO, 4), TC.stack(TC.ELECTRUM, 2), TC.stack(TC.MOTUS, 1)));
    IL.USB_Stick_3.set(addItem(tLastID = 32003, "USB 3.0 Stick", "Stores Data", OD_USB_STICKS[3], Behavior_DataStorage.INSTANCE, TC.stack(TC.COGNITIO, 5), TC.stack(TC.ELECTRUM, 3), TC.stack(TC.MOTUS, 2)));
    IL.USB_Stick_4.set(addItem(tLastID = 32004, "USB 4.0 Stick", "Stores Data", OD_USB_STICKS[4], Behavior_DataStorage.INSTANCE, TC.stack(TC.COGNITIO, 6), TC.stack(TC.ELECTRUM, 4), TC.stack(TC.MOTUS, 3)));
    CR.shaped(IL.USB_Stick_1.get(1), CR.DEF_REV, "xWd", "PCP", "TCT", 'C', OD_CIRCUITS[3], 'W', MT.DATA.WIRES_01[3], 'P', OP.plate.dat(MT.Al), 'T', OP.screw.dat(MT.Al));
    CR.shaped(IL.USB_Stick_2.get(1), CR.DEF_REV, "xWd", "PCP", "TCT", 'C', OD_CIRCUITS[4], 'W', MT.DATA.WIRES_01[4], 'P', OP.plate.dat(MT.StainlessSteel), 'T', OP.screw.dat(MT.StainlessSteel));
    CR.shaped(IL.USB_Stick_3.get(1), CR.DEF_REV, "xWd", "PCP", "TCT", 'C', OD_CIRCUITS[5], 'W', MT.DATA.WIRES_01[5], 'P', OP.plate.dat(MT.Cr), 'T', OP.screw.dat(MT.Cr));
    CR.shaped(IL.USB_Stick_4.get(1), CR.DEF_REV, "xWd", "PCP", "TCT", 'C', OD_CIRCUITS[6], 'W', MT.DATA.WIRES_01[6], 'P', OP.plate.dat(MT.Ti), 'T', OP.screw.dat(MT.Ti));
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.USB_Stick_1.get(1)), (byte) 54);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.USB_Stick_2.get(1)), (byte) 54);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.USB_Stick_3.get(1)), (byte) 54);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.USB_Stick_4.get(1)), (byte) 54);
    IL.USB_Cable_1.set(addItem(tLastID = 32011, "USB 1.0 Cable", "Replaces USB Sticks when connected to USB Ports", OD_USB_CABLES[1], TC.stack(TC.COGNITIO, 2), TC.stack(TC.ELECTRUM, 1)));
    IL.USB_Cable_2.set(addItem(tLastID = 32012, "USB 2.0 Cable", "Replaces USB Sticks when connected to USB Ports", OD_USB_CABLES[2], TC.stack(TC.COGNITIO, 3), TC.stack(TC.ELECTRUM, 2), TC.stack(TC.ITER, 1)));
    IL.USB_Cable_3.set(addItem(tLastID = 32013, "USB 3.0 Cable", "Replaces USB Sticks when connected to USB Ports", OD_USB_CABLES[3], TC.stack(TC.COGNITIO, 4), TC.stack(TC.ELECTRUM, 3), TC.stack(TC.ITER, 2)));
    IL.USB_Cable_4.set(addItem(tLastID = 32014, "USB 4.0 Cable", "Replaces USB Sticks when connected to USB Ports", OD_USB_CABLES[4], TC.stack(TC.COGNITIO, 5), TC.stack(TC.ELECTRUM, 4), TC.stack(TC.ITER, 3)));
    CR.shaped(IL.USB_Cable_1.get(1), CR.DEF_REV, "xWd", "PCP", "TCT", 'C', MT.DATA.CABLES_01[3], 'W', MT.DATA.WIRES_01[3], 'P', OP.plate.dat(MT.Al), 'T', OP.screw.dat(MT.Al));
    CR.shaped(IL.USB_Cable_2.get(1), CR.DEF_REV, "xWd", "PCP", "TCT", 'C', MT.DATA.CABLES_01[4], 'W', MT.DATA.WIRES_01[4], 'P', OP.plate.dat(MT.StainlessSteel), 'T', OP.screw.dat(MT.StainlessSteel));
    CR.shaped(IL.USB_Cable_3.get(1), CR.DEF_REV, "xWd", "PCP", "TCT", 'C', MT.DATA.CABLES_01[5], 'W', MT.DATA.WIRES_01[5], 'P', OP.plate.dat(MT.Cr), 'T', OP.screw.dat(MT.Cr));
    CR.shaped(IL.USB_Cable_4.get(1), CR.DEF_REV, "xWd", "PCP", "TCT", 'C', MT.DATA.CABLES_01[6], 'W', MT.DATA.WIRES_01[6], 'P', OP.plate.dat(MT.Ti), 'T', OP.screw.dat(MT.Ti));
    IL.USB_HDD_1.set(addItem(tLastID = 32021, "USB 1.0 HDD", "Stores up to 16 Files at once", OD_USB_DRIVES[1], Behavior_DataStorage16.INSTANCE, TC.stack(TC.COGNITIO, 3), TC.stack(TC.ELECTRUM, 2), TC.stack(TC.MOTUS, 1)));
    IL.USB_HDD_2.set(addItem(tLastID = 32022, "USB 2.0 HDD", "Stores up to 16 Files at once", OD_USB_DRIVES[2], Behavior_DataStorage16.INSTANCE, TC.stack(TC.COGNITIO, 4), TC.stack(TC.ELECTRUM, 3), TC.stack(TC.MOTUS, 2)));
    IL.USB_HDD_3.set(addItem(tLastID = 32023, "USB 3.0 HDD", "Stores up to 16 Files at once", OD_USB_DRIVES[3], Behavior_DataStorage16.INSTANCE, TC.stack(TC.COGNITIO, 5), TC.stack(TC.ELECTRUM, 4), TC.stack(TC.MOTUS, 3)));
    IL.USB_HDD_4.set(addItem(tLastID = 32024, "USB 4.0 HDD", "Stores up to 16 Files at once", OD_USB_DRIVES[4], Behavior_DataStorage16.INSTANCE, TC.stack(TC.COGNITIO, 6), TC.stack(TC.ELECTRUM, 5), TC.stack(TC.MOTUS, 4)));
    // TODO: Replace record with a CD (made of aluminium foils and plastic plates in a Press)
    CR.shaped(IL.USB_HDD_1.get(1), CR.DEF_REV, "PLT", "dRW", "TCP", 'C', OD_CIRCUITS[3], 'W', IL.USB_Cable_1, 'L', IL.Comp_Laser_Gas_He, 'R', OD.record, 'P', OP.plate.dat(MT.Al), 'T', OP.screw.dat(MT.Al));
    CR.shaped(IL.USB_HDD_2.get(1), CR.DEF_REV, "PLT", "dRW", "TCP", 'C', OD_CIRCUITS[4], 'W', IL.USB_Cable_2, 'L', IL.Comp_Laser_Gas_He, 'R', OD.record, 'P', OP.plate.dat(MT.StainlessSteel), 'T', OP.screw.dat(MT.StainlessSteel));
    CR.shaped(IL.USB_HDD_3.get(1), CR.DEF_REV, "PLT", "dRW", "TCP", 'C', OD_CIRCUITS[5], 'W', IL.USB_Cable_3, 'L', IL.Comp_Laser_Gas_He, 'R', OD.record, 'P', OP.plate.dat(MT.Cr), 'T', OP.screw.dat(MT.Cr));
    CR.shaped(IL.USB_HDD_4.get(1), CR.DEF_REV, "PLT", "dRW", "TCP", 'C', OD_CIRCUITS[6], 'W', IL.USB_Cable_4, 'L', IL.Comp_Laser_Gas_He, 'R', OD.record, 'P', OP.plate.dat(MT.Ti), 'T', OP.screw.dat(MT.Ti));
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.USB_HDD_1.get(1)), (byte) 54);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.USB_HDD_2.get(1)), (byte) 54);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.USB_HDD_3.get(1)), (byte) 54);
    BooksGT.BOOK_REGISTER.put(new ItemStackContainer(IL.USB_HDD_4.get(1)), (byte) 54);
}
Also used : OreDictItemData(gregapi.oredict.OreDictItemData) ItemStackContainer(gregapi.code.ItemStackContainer) OreDictMaterial(gregapi.oredict.OreDictMaterial) FluidContainerData(net.minecraftforge.fluids.FluidContainerRegistry.FluidContainerData) ItemStack(net.minecraft.item.ItemStack)

Aggregations

OreDictItemData (gregapi.oredict.OreDictItemData)64 ItemStack (net.minecraft.item.ItemStack)41 OreDictMaterial (gregapi.oredict.OreDictMaterial)20 FluidStack (net.minecraftforge.fluids.FluidStack)16 ArrayListNoNulls (gregapi.code.ArrayListNoNulls)12 OreDictMaterialStack (gregapi.oredict.OreDictMaterialStack)11 EntityPlayer (net.minecraft.entity.player.EntityPlayer)10 Recipe (gregapi.recipes.Recipe)9 Block (net.minecraft.block.Block)9 SubscribeEvent (cpw.mods.fml.common.eventhandler.SubscribeEvent)5 List (java.util.List)5 OreDictPrefix (gregapi.oredict.OreDictPrefix)4 IOreDictListenerEvent (gregapi.oredict.event.IOreDictListenerEvent)4 OreDictListenerEvent_Names (gregapi.oredict.event.OreDictListenerEvent_Names)4 HashSetNoNulls (gregapi.code.HashSetNoNulls)3 IItemContainer (gregapi.code.IItemContainer)3 ItemStackContainer (gregapi.code.ItemStackContainer)3 PacketDeathPoint (gregapi.network.packets.PacketDeathPoint)3 EntityLivingBase (net.minecraft.entity.EntityLivingBase)3 Item (net.minecraft.item.Item)3