2012-11-05 14:29:04 -05:00
package mekanism.common ;
2012-08-18 23:29:38 -03:00
2014-01-05 02:24:06 -05:00
import java.io.File ;
import java.util.ArrayList ;
import java.util.HashMap ;
import java.util.HashSet ;
import java.util.Iterator ;
import java.util.List ;
import java.util.Map ;
import java.util.Set ;
2014-01-18 12:08:11 -05:00
import mekanism.api.AdvancedInput ;
2014-01-13 18:37:54 -05:00
import mekanism.api.ChanceOutput ;
2014-01-10 12:58:05 -05:00
import mekanism.api.ChemicalPair ;
2013-12-20 16:09:09 -05:00
import mekanism.api.Coord4D ;
2013-12-22 00:42:46 -05:00
import mekanism.api.EnumColor ;
2014-01-12 21:23:34 -05:00
import mekanism.api.MekanismAPI ;
2014-02-01 19:02:51 -05:00
import mekanism.api.MekanismAPI.BoxBlacklistEvent ;
2014-04-06 01:16:09 +01:00
import mekanism.api.PressurizedProducts ;
import mekanism.api.PressurizedReactants ;
2013-11-28 21:43:53 -05:00
import mekanism.api.gas.Gas ;
2013-08-26 18:49:32 -04:00
import mekanism.api.gas.GasNetwork.GasTransferEvent ;
2013-11-28 21:43:53 -05:00
import mekanism.api.gas.GasRegistry ;
2013-12-12 20:35:37 -05:00
import mekanism.api.gas.GasStack ;
2014-01-21 17:58:00 -05:00
import mekanism.api.gas.OreGas ;
2013-08-26 18:49:32 -04:00
import mekanism.api.infuse.InfuseObject ;
import mekanism.api.infuse.InfuseRegistry ;
import mekanism.api.infuse.InfuseType ;
import mekanism.api.infuse.InfusionInput ;
2013-11-30 23:19:24 -05:00
import mekanism.api.transmitters.DynamicNetwork.ClientTickUpdate ;
2013-11-30 00:28:02 -05:00
import mekanism.api.transmitters.DynamicNetwork.NetworkClientRequest ;
2013-08-26 18:49:32 -04:00
import mekanism.api.transmitters.TransmitterNetworkRegistry ;
2013-11-30 23:19:24 -05:00
import mekanism.client.ClientTickHandler ;
2014-01-11 11:49:27 -05:00
import mekanism.common.EnergyDisplay.EnergyType ;
2013-08-04 01:48:13 +01:00
import mekanism.common.EnergyNetwork.EnergyTransferEvent ;
2013-07-20 12:10:14 -04:00
import mekanism.common.FluidNetwork.FluidTransferEvent ;
2013-03-25 12:00:45 -04:00
import mekanism.common.IFactory.RecipeType ;
2013-03-31 19:12:10 -04:00
import mekanism.common.Tier.EnergyCubeTier ;
import mekanism.common.Tier.FactoryTier ;
2014-01-05 02:24:06 -05:00
import mekanism.common.block.BlockBasic ;
import mekanism.common.block.BlockBounding ;
2014-01-12 21:23:34 -05:00
import mekanism.common.block.BlockCardboardBox ;
2014-01-05 02:24:06 -05:00
import mekanism.common.block.BlockEnergyCube ;
import mekanism.common.block.BlockGasTank ;
import mekanism.common.block.BlockMachine ;
import mekanism.common.block.BlockObsidianTNT ;
import mekanism.common.block.BlockOre ;
2014-04-10 03:05:28 +01:00
import mekanism.common.block.BlockPlastic ;
import mekanism.common.block.BlockPlasticFence ;
2014-07-09 22:06:36 -04:00
import mekanism.common.block.BlockSalt ;
2014-01-07 20:55:50 -05:00
import mekanism.common.entity.EntityBalloon ;
import mekanism.common.entity.EntityObsidianTNT ;
import mekanism.common.entity.EntityRobit ;
import mekanism.common.integration.MekanismHooks ;
import mekanism.common.integration.OreDictManager ;
2014-01-05 02:24:06 -05:00
import mekanism.common.item.ItemAtomicDisassembler ;
import mekanism.common.item.ItemBalloon ;
import mekanism.common.item.ItemBlockBasic ;
2014-01-12 21:23:34 -05:00
import mekanism.common.item.ItemBlockCardboardBox ;
2014-01-05 02:24:06 -05:00
import mekanism.common.item.ItemBlockEnergyCube ;
import mekanism.common.item.ItemBlockGasTank ;
import mekanism.common.item.ItemBlockMachine ;
import mekanism.common.item.ItemBlockOre ;
2014-04-10 03:05:28 +01:00
import mekanism.common.item.ItemBlockPlastic ;
2014-01-05 02:24:06 -05:00
import mekanism.common.item.ItemClump ;
import mekanism.common.item.ItemConfigurator ;
2014-07-09 22:06:36 -04:00
import mekanism.common.item.ItemControlCircuit ;
2014-01-21 11:28:43 -05:00
import mekanism.common.item.ItemCrystal ;
2014-01-05 02:24:06 -05:00
import mekanism.common.item.ItemDictionary ;
import mekanism.common.item.ItemDirtyDust ;
import mekanism.common.item.ItemDust ;
import mekanism.common.item.ItemElectricBow ;
import mekanism.common.item.ItemEnergized ;
2014-03-08 17:47:39 -05:00
import mekanism.common.item.ItemFilterCard ;
2014-02-05 20:22:43 -05:00
import mekanism.common.item.ItemFreeRunners ;
2014-01-05 02:24:06 -05:00
import mekanism.common.item.ItemGasMask ;
2014-04-10 03:05:28 +01:00
import mekanism.common.item.ItemHDPE ;
2014-01-05 02:24:06 -05:00
import mekanism.common.item.ItemIngot ;
import mekanism.common.item.ItemJetpack ;
import mekanism.common.item.ItemMachineUpgrade ;
import mekanism.common.item.ItemMekanism ;
import mekanism.common.item.ItemNetworkReader ;
import mekanism.common.item.ItemPortableTeleporter ;
import mekanism.common.item.ItemProxy ;
import mekanism.common.item.ItemRobit ;
import mekanism.common.item.ItemScubaTank ;
2014-03-15 20:05:26 -04:00
import mekanism.common.item.ItemSeismicReader ;
2014-01-05 02:24:06 -05:00
import mekanism.common.item.ItemShard ;
import mekanism.common.item.ItemWalkieTalkie ;
2014-04-13 03:05:50 +01:00
import mekanism.common.multipart.ItemGlowPanel ;
2013-12-02 22:14:21 -05:00
import mekanism.common.multipart.ItemPartTransmitter ;
2013-12-12 20:23:03 +00:00
import mekanism.common.multipart.MultipartMekanism ;
2014-06-11 11:57:49 +02:00
import mekanism.common.network.PacketDataRequest.DataRequestMessage ;
2014-06-14 01:35:25 +02:00
import mekanism.common.network.PacketTransmitterUpdate.PacketType ;
2014-06-11 11:57:49 +02:00
import mekanism.common.network.PacketTransmitterUpdate.TransmitterUpdateMessage ;
2014-02-01 19:02:51 -05:00
import mekanism.common.recipe.BinRecipe ;
2014-01-07 20:55:50 -05:00
import mekanism.common.recipe.MekanismRecipe ;
import mekanism.common.recipe.RecipeHandler ;
import mekanism.common.tank.DynamicTankCache ;
import mekanism.common.tile.TileEntityAdvancedBoundingBlock ;
import mekanism.common.tile.TileEntityBoundingBlock ;
2014-01-12 21:23:34 -05:00
import mekanism.common.tile.TileEntityCardboardBox ;
2014-01-07 20:55:50 -05:00
import mekanism.common.tile.TileEntityElectricBlock ;
import mekanism.common.tile.TileEntityEnergizedSmelter ;
2014-04-10 03:05:28 +01:00
import mekanism.common.tile.TileEntitySalinationTank ;
import mekanism.common.tile.TileEntitySalinationValve ;
2013-11-25 13:33:42 -05:00
import mekanism.common.transporter.TransporterManager ;
2013-08-26 18:57:08 -04:00
import mekanism.common.util.MekanismUtils ;
import mekanism.common.util.MekanismUtils.ResourceType ;
2013-10-14 14:08:15 -04:00
import mekanism.common.voice.VoiceServerManager ;
2014-07-09 22:06:36 -04:00
import mekanism.common.world.GenHandler ;
2012-12-20 16:53:39 -05:00
import net.minecraft.block.Block ;
2014-04-20 04:34:19 +01:00
import net.minecraft.init.Blocks ;
import net.minecraft.init.Items ;
2012-12-20 16:53:39 -05:00
import net.minecraft.item.Item ;
import net.minecraft.item.ItemStack ;
import net.minecraft.item.crafting.CraftingManager ;
import net.minecraft.item.crafting.FurnaceRecipes ;
2014-07-09 22:06:36 -04:00
import net.minecraft.nbt.NBTTagCompound ;
2013-11-03 16:54:33 -05:00
import net.minecraft.tileentity.TileEntity ;
2014-07-09 22:06:36 -04:00
import net.minecraft.world.ChunkCoordIntPair ;
2012-12-20 16:53:39 -05:00
import net.minecraftforge.common.MinecraftForge ;
2014-06-02 23:57:40 +02:00
import net.minecraftforge.common.config.Configuration ;
2014-07-09 22:06:36 -04:00
import net.minecraftforge.event.world.ChunkDataEvent ;
2013-11-03 16:54:33 -05:00
import net.minecraftforge.event.world.ChunkEvent ;
2014-01-16 16:47:35 -05:00
import net.minecraftforge.fluids.FluidContainerRegistry ;
2014-01-02 04:02:00 +00:00
import net.minecraftforge.fluids.FluidRegistry ;
2014-04-06 01:16:09 +01:00
import net.minecraftforge.fluids.FluidStack ;
2012-11-02 22:27:30 -04:00
import net.minecraftforge.oredict.OreDictionary ;
2014-06-03 11:25:12 +02:00
import net.minecraftforge.oredict.RecipeSorter ;
import net.minecraftforge.oredict.RecipeSorter.Category ;
2013-12-22 00:42:46 -05:00
import net.minecraftforge.oredict.ShapelessOreRecipe ;
2014-04-20 21:15:44 +01:00
import org.apache.logging.log4j.LogManager ;
import org.apache.logging.log4j.Logger ;
2014-06-02 23:57:40 +02:00
2013-06-13 17:37:30 -04:00
import rebelkeithy.mods.metallurgy.api.IOreInfo ;
import rebelkeithy.mods.metallurgy.api.MetallurgyAPI ;
2014-01-18 12:08:11 -05:00
import codechicken.multipart.handler.MultipartProxy ;
2014-06-27 03:22:46 +01:00
import cpw.mods.fml.client.event.ConfigChangedEvent ;
2014-06-03 19:54:45 +02:00
import cpw.mods.fml.common.FMLCommonHandler ;
2014-02-10 21:10:30 -05:00
import cpw.mods.fml.common.IFuelHandler ;
2014-01-05 02:24:06 -05:00
import cpw.mods.fml.common.Mod ;
import cpw.mods.fml.common.Mod.EventHandler ;
import cpw.mods.fml.common.Mod.Instance ;
import cpw.mods.fml.common.SidedProxy ;
import cpw.mods.fml.common.event.FMLInitializationEvent ;
import cpw.mods.fml.common.event.FMLPostInitializationEvent ;
import cpw.mods.fml.common.event.FMLPreInitializationEvent ;
import cpw.mods.fml.common.event.FMLServerStartingEvent ;
import cpw.mods.fml.common.event.FMLServerStoppingEvent ;
2014-06-02 23:57:40 +02:00
import cpw.mods.fml.common.eventhandler.SubscribeEvent ;
2014-01-05 02:24:06 -05:00
import cpw.mods.fml.common.network.NetworkRegistry ;
import cpw.mods.fml.common.registry.EntityRegistry ;
import cpw.mods.fml.common.registry.GameRegistry ;
2012-08-15 16:41:41 -04:00
/**
2014-06-19 15:44:08 +02:00
* Mekanism - a Minecraft mod
2012-08-15 16:41:41 -04:00
* @author AidanBrady
2013-12-01 00:04:20 -05:00
*
2012-08-15 16:41:41 -04:00
*/
2014-08-06 12:51:48 -04:00
@Mod ( modid = "Mekanism" , name = "Mekanism" , version = "7.1.0" , guiFactory = "mekanism.client.gui.ConfigGuiFactory" ,
2014-07-12 18:46:43 +01:00
dependencies = "after:ForgeMultipart;after:BuildCraftAPI|power;after:BuildCraftAPI|tools;after:BuildCraftAPI|transport;after:IC2API;after:CoFHAPI|energy;after:ComputerCraft;after:Galacticraft API;" +
2014-08-07 03:58:01 +01:00
"after:MineFactoryReloaded;after:MetallurgyCore;after:EnderIO;after:ExtraUtilities;after:Railcraft;after:Forestry" )
2012-11-05 14:29:04 -05:00
public class Mekanism
2012-08-15 16:41:41 -04:00
{
2014-04-20 04:34:19 +01:00
/** Mekanism Packet Pipeline */
2014-06-11 11:57:49 +02:00
public static PacketHandler packetHandler = new PacketHandler ();
2014-04-20 04:34:19 +01:00
2012-11-05 14:29:04 -05:00
/** Mekanism logger instance */
2014-06-03 08:46:03 +02:00
public static Logger logger = LogManager . getLogger ( "Mekanism" );
2013-12-01 00:04:20 -05:00
2012-11-05 14:29:04 -05:00
/** Mekanism proxy instance */
@SidedProxy ( clientSide = "mekanism.client.ClientProxy" , serverSide = "mekanism.common.CommonProxy" )
2012-08-15 16:41:41 -04:00
public static CommonProxy proxy ;
2013-12-01 00:04:20 -05:00
2013-05-28 00:29:29 -04:00
/** Mekanism debug mode */
public static boolean debug = false ;
2013-12-01 00:04:20 -05:00
/** Mekanism mod instance */
2012-11-05 14:29:04 -05:00
@Instance ( "Mekanism" )
2013-12-01 00:04:20 -05:00
public static Mekanism instance ;
/** Mekanism hooks instance */
2014-06-26 01:10:53 +01:00
public static MekanismHooks hooks ;
2013-12-01 00:04:20 -05:00
/** Mekanism configuration instance */
public static Configuration configuration ;
2012-11-05 14:29:04 -05:00
/** Mekanism version number */
2014-08-06 12:51:48 -04:00
public static Version versionNumber = new Version ( 7 , 1 , 0 );
2013-12-01 00:04:20 -05:00
2013-02-25 15:02:05 -05:00
/** Map of Teleporters */
2013-12-20 16:09:09 -05:00
public static Map < Teleporter . Code , ArrayList < Coord4D >> teleporters = new HashMap < Teleporter . Code , ArrayList < Coord4D >> ();
2013-12-01 00:04:20 -05:00
2013-05-07 15:57:55 -04:00
/** A map containing references to all dynamic tank inventory caches. */
2013-04-28 15:23:08 -04:00
public static Map < Integer , DynamicTankCache > dynamicInventories = new HashMap < Integer , DynamicTankCache > ();
2013-12-01 00:04:20 -05:00
2012-11-05 14:29:04 -05:00
/** Mekanism creative tab */
public static CreativeTabMekanism tabMekanism = new CreativeTabMekanism ();
2013-12-01 00:04:20 -05:00
2013-04-05 16:26:48 -04:00
/** List of Mekanism modules loaded */
2013-04-06 13:28:59 -04:00
public static List < IModule > modulesLoaded = new ArrayList < IModule > ();
2013-12-01 00:04:20 -05:00
2012-11-05 14:29:04 -05:00
/** The latest version number which is received from the Mekanism server */
2012-08-15 16:41:41 -04:00
public static String latestVersionNumber ;
2013-12-01 00:04:20 -05:00
2012-11-05 14:29:04 -05:00
/** The recent news which is received from the Mekanism server */
2012-08-15 16:41:41 -04:00
public static String recentNews ;
2013-12-01 00:04:20 -05:00
2013-10-13 22:50:21 -04:00
/** The VoiceServer manager for walkie talkies */
public static VoiceServerManager voiceManager ;
2013-12-01 00:04:20 -05:00
2013-06-21 11:47:01 -04:00
/** A list of the usernames of players who have donated to Mekanism. */
public static List < String > donators = new ArrayList < String > ();
2013-12-01 00:04:20 -05:00
2014-07-21 16:45:08 -04:00
/** The server's world tick handler. */
2014-07-09 22:06:36 -04:00
public static CommonWorldTickHandler worldTickHandler = new CommonWorldTickHandler ();
/** The Mekanism world generation handler. */
public static GenHandler genHandler = new GenHandler ();
/** The version of ore generation in this version of Mekanism. Increment this every time the default ore generation changes. */
public static int baseWorldGenVersion = 0 ;
2013-12-05 22:39:54 -05:00
public static KeySync keyMap = new KeySync ();
2013-12-05 16:42:00 -05:00
2013-12-09 17:34:53 -05:00
public static Set < String > jetpackOn = new HashSet < String > ();
public static Set < String > gasmaskOn = new HashSet < String > ();
2013-12-01 00:04:20 -05:00
2013-12-20 16:09:09 -05:00
public static Set < Coord4D > ic2Registered = new HashSet < Coord4D > ();
2014-03-15 20:05:26 -04:00
public static Set < Coord4D > activeVibrators = new HashSet < Coord4D > ();
2014-04-10 03:05:28 +01:00
2013-12-01 00:04:20 -05:00
//Items
2012-11-25 10:45:00 -05:00
public static ItemElectricBow ElectricBow ;
2012-08-16 21:46:21 -04:00
public static Item EnrichedAlloy ;
2014-07-09 23:52:01 -04:00
public static Item ReinforcedAlloy ;
public static Item AtomicAlloy ;
2012-10-02 14:39:40 -04:00
public static ItemEnergized EnergyTablet ;
2012-10-21 21:29:26 -04:00
public static Item SpeedUpgrade ;
public static Item EnergyUpgrade ;
2013-05-19 18:43:01 -04:00
public static ItemRobit Robit ;
2012-11-26 19:18:50 -05:00
public static ItemAtomicDisassembler AtomicDisassembler ;
2012-12-09 13:03:49 -05:00
public static Item EnrichedIron ;
2012-12-20 16:53:39 -05:00
public static Item CompressedCarbon ;
2014-07-09 23:52:01 -04:00
public static Item CompressedRedstone ;
public static Item CompressedDiamond ;
public static Item CompressedObsidian ;
2013-01-20 20:15:59 -05:00
public static Item PortableTeleporter ;
public static Item TeleportationCore ;
2013-01-24 18:01:59 -05:00
public static Item Configurator ;
2013-08-24 21:22:45 -04:00
public static Item NetworkReader ;
2013-10-13 12:31:26 -04:00
public static Item WalkieTalkie ;
2013-11-11 22:52:12 -05:00
public static Item ItemProxy ;
2013-12-02 22:14:21 -05:00
public static Item PartTransmitter ;
2014-04-13 03:05:50 +01:00
public static Item GlowPanel ;
2013-12-05 21:10:15 -05:00
public static ItemJetpack Jetpack ;
2013-12-06 15:26:44 -05:00
public static ItemScubaTank ScubaTank ;
public static ItemGasMask GasMask ;
2013-12-09 20:52:49 -05:00
public static Item Dictionary ;
2013-12-20 13:27:54 -05:00
public static Item Balloon ;
2014-01-03 02:09:21 +00:00
public static Item ElectrolyticCore ;
2014-01-12 23:55:42 -05:00
public static Item Sawdust ;
2014-01-13 15:41:23 -05:00
public static Item Salt ;
2014-01-16 16:47:35 -05:00
public static Item BrineBucket ;
2014-02-05 20:22:43 -05:00
public static Item FreeRunners ;
2014-02-22 14:28:02 -05:00
public static ItemJetpack ArmoredJetpack ;
2014-03-08 17:47:39 -05:00
public static Item FilterCard ;
2014-03-15 20:05:26 -04:00
public static ItemSeismicReader SeismicReader ;
2014-04-06 01:16:09 +01:00
public static Item Substrate ;
public static Item Polyethene ;
public static Item BioFuel ;
2014-01-03 02:09:21 +00:00
2013-12-01 00:04:20 -05:00
//Blocks
2012-11-21 10:14:35 -05:00
public static Block BasicBlock ;
2014-01-16 22:49:48 -05:00
public static Block BasicBlock2 ;
2012-09-25 15:15:47 -04:00
public static Block MachineBlock ;
2013-11-27 16:17:10 -05:00
public static Block MachineBlock2 ;
2012-09-25 15:15:47 -04:00
public static Block OreBlock ;
2012-08-15 16:41:41 -04:00
public static Block ObsidianTNT ;
2012-11-28 10:33:34 -05:00
public static Block EnergyCube ;
2013-03-11 13:49:01 -04:00
public static Block BoundingBlock ;
2012-11-21 10:14:35 -05:00
public static Block GasTank ;
2014-01-12 21:23:34 -05:00
public static Block CardboardBox ;
2014-04-10 03:05:28 +01:00
public static Block BlockHDPE ;
2014-04-15 01:31:13 +01:00
public static Block BlockSlickHDPE ;
public static Block BlockGlowHDPE ;
public static Block BlockReinforcedHDPE ;
2014-04-16 00:08:09 +01:00
public static Block BlockRoadHDPE ;
2014-04-10 03:05:28 +01:00
public static Block BlockHDPEFence ;
2014-07-09 22:06:36 -04:00
public static Block SaltBlock ;
2014-01-03 02:09:21 +00:00
2013-12-01 00:04:20 -05:00
//Multi-ID Items
2012-11-01 21:30:40 -04:00
public static Item Dust ;
public static Item Ingot ;
2013-01-23 15:42:45 -05:00
public static Item Clump ;
public static Item DirtyDust ;
2014-01-21 11:28:43 -05:00
public static Item Shard ;
public static Item Crystal ;
2014-07-09 22:06:36 -04:00
public static Item ControlCircuit ;
2014-01-03 02:09:21 +00:00
2013-12-01 00:04:20 -05:00
//General Configuration
2013-01-30 07:53:36 -05:00
public static boolean updateNotifications = true ;
2013-02-14 13:26:13 -05:00
public static boolean controlCircuitOreDict = true ;
2013-03-30 19:13:59 -04:00
public static boolean logPackets = false ;
2013-05-14 11:34:26 -04:00
public static boolean dynamicTankEasterEgg = false ;
2013-10-26 23:55:11 -04:00
public static boolean voiceServerEnabled = true ;
2014-01-13 16:37:15 -05:00
public static boolean cardboardSpawners = true ;
2014-02-14 17:55:34 -05:00
public static boolean machineEffects = true ;
2014-07-09 22:06:36 -04:00
public static boolean enableWorldRegeneration = true ;
2014-07-16 23:53:00 -04:00
public static boolean creativeOverrideElectricChest = true ;
2013-03-18 12:23:57 -04:00
public static int obsidianTNTBlastRadius = 12 ;
2014-07-09 22:06:36 -04:00
public static int osmiumPerChunk = 12 ;
public static int copperPerChunk = 16 ;
public static int tinPerChunk = 14 ;
public static int saltPerChunk = 2 ;
2013-03-18 12:23:57 -04:00
public static int obsidianTNTDelay = 100 ;
2014-01-03 02:09:21 +00:00
public static int UPDATE_DELAY = 10 ;
2013-12-01 12:38:34 -05:00
public static int VOICE_PORT = 36123 ;
2013-12-27 01:12:46 +00:00
public static int maxUpgradeMultiplier = 10 ;
2014-07-09 22:06:36 -04:00
public static int userWorldGenVersion = 0 ;
2013-11-14 21:58:32 -05:00
public static double ENERGY_PER_REDSTONE = 10000 ;
2014-01-11 11:49:27 -05:00
public static EnergyType activeType = EnergyType . J ;
2014-01-03 02:09:21 +00:00
2013-03-29 12:10:23 -04:00
public static double TO_IC2 ;
public static double TO_BC ;
2013-11-16 18:56:01 -05:00
public static double TO_TE ;
2013-11-14 21:58:32 -05:00
public static double TO_UE = . 001 ;
2014-04-04 01:01:54 +01:00
public static double FROM_H2 ;
2013-03-29 12:10:23 -04:00
public static double FROM_IC2 ;
public static double FROM_BC ;
2013-11-16 18:56:01 -05:00
public static double FROM_TE ;
2013-12-02 20:16:53 +08:00
public static double FROM_UE = 1 / TO_UE ;
2014-01-03 02:09:21 +00:00
2013-12-01 00:04:20 -05:00
//Usage Configuration
2013-06-27 11:03:50 -04:00
public static double enrichmentChamberUsage ;
public static double osmiumCompressorUsage ;
public static double combinerUsage ;
public static double crusherUsage ;
public static double factoryUsage ;
public static double metallurgicInfuserUsage ;
public static double purificationChamberUsage ;
public static double energizedSmelterUsage ;
2013-11-23 21:25:37 -06:00
public static double digitalMinerUsage ;
2014-06-10 12:24:44 +02:00
public static double electricPumpUsage ;
2013-11-28 21:43:53 -05:00
public static double rotaryCondensentratorUsage ;
2013-12-30 02:59:45 +00:00
public static double oxidationChamberUsage ;
2013-12-11 19:53:12 -05:00
public static double chemicalInfuserUsage ;
2013-12-24 00:23:30 -05:00
public static double chemicalInjectionChamberUsage ;
2014-01-12 23:55:42 -05:00
public static double precisionSawmillUsage ;
2014-01-26 17:12:03 -05:00
public static double chemicalDissolutionChamberUsage ;
public static double chemicalWasherUsage ;
2014-04-12 02:51:02 +01:00
public static double chemicalCrystallizerUsage ;
2014-03-15 20:05:26 -04:00
public static double seismicVibratorUsage ;
2014-04-06 01:16:09 +01:00
public static double pressurizedReactionBaseUsage ;
2014-06-19 12:42:59 +02:00
public static double fluidicPlenisherUsage ;
2014-01-03 02:09:21 +00:00
2012-08-15 16:41:41 -04:00
/**
2014-06-19 15:44:08 +02:00
* Adds all in-game crafting, smelting and machine recipes.
2012-08-15 16:41:41 -04:00
*/
public void addRecipes ()
{
2013-12-01 00:04:20 -05:00
//Storage Recipes
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock , 1 , 3 ), new Object [] {
2014-04-20 04:34:19 +01:00
"***" , "***" , "***" , Character . valueOf ( '*' ), new ItemStack ( Items . coal , 1 , 1 )
2013-12-01 00:04:20 -05:00
}));
2014-04-20 04:34:19 +01:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( Items . coal , 9 , 1 ), new Object [] {
2013-12-01 00:04:20 -05:00
"*" , Character . valueOf ( '*' ), new ItemStack ( BasicBlock , 1 , 3 )
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock , 1 , 2 ), new Object [] {
"***" , "***" , "***" , Character . valueOf ( '*' ), "ingotRefinedObsidian"
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( Ingot , 9 , 0 ), new Object [] {
"*" , Character . valueOf ( '*' ), new ItemStack ( BasicBlock , 1 , 2 )
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock , 1 , 4 ), new Object [] {
"***" , "***" , "***" , Character . valueOf ( '*' ), "ingotRefinedGlowstone"
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( Ingot , 9 , 3 ), new Object [] {
"*" , Character . valueOf ( '*' ), new ItemStack ( BasicBlock , 1 , 4 )
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock , 1 , 0 ), new Object [] {
"XXX" , "XXX" , "XXX" , Character . valueOf ( 'X' ), "ingotOsmium"
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( Ingot , 9 , 1 ), new Object [] {
"*" , Character . valueOf ( '*' ), new ItemStack ( BasicBlock , 1 , 0 )
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock , 1 , 1 ), new Object [] {
"***" , "***" , "***" , Character . valueOf ( '*' ), "ingotBronze"
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( Ingot , 9 , 2 ), new Object [] {
"*" , Character . valueOf ( '*' ), new ItemStack ( BasicBlock , 1 , 1 )
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock , 1 , 5 ), new Object [] {
"***" , "***" , "***" , Character . valueOf ( '*' ), "ingotSteel"
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( Ingot , 9 , 4 ), new Object [] {
"*" , Character . valueOf ( '*' ), new ItemStack ( BasicBlock , 1 , 5 )
}));
2013-12-02 20:52:44 -05:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock , 1 , 12 ), new Object [] {
"***" , "***" , "***" , Character . valueOf ( '*' ), "ingotCopper"
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( Ingot , 9 , 5 ), new Object [] {
"*" , Character . valueOf ( '*' ), new ItemStack ( BasicBlock , 1 , 12 )
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock , 1 , 13 ), new Object [] {
"***" , "***" , "***" , Character . valueOf ( '*' ), "ingotTin"
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( Ingot , 9 , 6 ), new Object [] {
"*" , Character . valueOf ( '*' ), new ItemStack ( BasicBlock , 1 , 13 )
}));
2014-07-09 22:06:36 -04:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( SaltBlock ), new Object [] {
"**" , "**" , Character . valueOf ( '*' ), Salt
}));
2013-12-01 00:04:20 -05:00
//Base Recipes
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( ObsidianTNT , 1 ), new Object [] {
2014-04-20 04:34:19 +01:00
"***" , "XXX" , "***" , Character . valueOf ( '*' ), Blocks . obsidian , Character . valueOf ( 'X' ), Blocks . tnt
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( ElectricBow . getUnchargedItem (), new Object [] {
2014-04-20 21:15:44 +01:00
" AB" , "E B" , " AB" , Character . valueOf ( 'A' ), EnrichedAlloy , Character . valueOf ( 'B' ), Items . string , Character . valueOf ( 'E' ), EnergyTablet . getUnchargedItem ()
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( EnergyTablet . getUnchargedItem (), new Object [] {
2014-07-11 14:52:55 -04:00
"RCR" , "ECE" , "RCR" , Character . valueOf ( 'C' ), "ingotGold" , Character . valueOf ( 'R' ), Items . redstone , Character . valueOf ( 'E' ), EnrichedAlloy
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock , 1 , 0 ), new Object [] {
2014-07-11 01:45:44 -04:00
"RCR" , "iIi" , "RCR" , Character . valueOf ( 'i' ), "ingotIron" , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'R' ), "alloyBasic" , Character . valueOf ( 'I' ), new ItemStack ( BasicBlock , 1 , 8 )
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock , 1 , 1 ), new Object [] {
2014-07-11 01:45:44 -04:00
"ECE" , "BIB" , "ECE" , Character . valueOf ( 'E' ), "alloyAdvanced" , Character . valueOf ( 'C' ), "circuitAdvanced" , Character . valueOf ( 'B' ), Items . bucket , Character . valueOf ( 'I' ), new ItemStack ( BasicBlock , 1 , 8 )
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock , 1 , 2 ), new Object [] {
2014-07-11 01:45:44 -04:00
"RCR" , "SIS" , "RCR" , Character . valueOf ( 'S' ), Blocks . cobblestone , Character . valueOf ( 'C' ), "circuitElite" , Character . valueOf ( 'R' ), "alloyElite" , Character . valueOf ( 'I' ), new ItemStack ( BasicBlock , 1 , 8 )
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock , 1 , 3 ), new Object [] {
2014-07-11 01:45:44 -04:00
"RCR" , "LIL" , "RCR" , Character . valueOf ( 'R' ), Items . redstone , Character . valueOf ( 'L' ), Items . lava_bucket , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'I' ), new ItemStack ( BasicBlock , 1 , 8 )
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( SpeedUpgrade ), new Object [] {
2014-07-11 01:45:44 -04:00
" G " , "APA" , " G " , Character . valueOf ( 'P' ), "dustOsmium" , Character . valueOf ( 'A' ), EnrichedAlloy , Character . valueOf ( 'G' ), "blockGlass"
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( EnergyUpgrade ), new Object [] {
2014-07-11 01:45:44 -04:00
" G " , "ADA" , " G " , Character . valueOf ( 'G' ), "blockGlass" , Character . valueOf ( 'A' ), EnrichedAlloy , Character . valueOf ( 'D' ), "dustGold"
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( AtomicDisassembler . getUnchargedItem (), new Object [] {
2014-07-09 23:52:01 -04:00
"AEA" , "ACA" , " O " , Character . valueOf ( 'A' ), EnrichedAlloy , Character . valueOf ( 'E' ), EnergyTablet . getUnchargedItem (), Character . valueOf ( 'C' ), AtomicAlloy , Character . valueOf ( 'O' ), "ingotRefinedObsidian"
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( MekanismUtils . getEmptyGasTank (), new Object [] {
"PPP" , "PDP" , "PPP" , Character . valueOf ( 'P' ), "ingotOsmium" , Character . valueOf ( 'D' ), "dustIron"
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock , 1 , 8 ), new Object [] {
2014-04-20 21:15:44 +01:00
"IFI" , "ROR" , "IFI" , Character . valueOf ( 'I' ), Items . iron_ingot , Character . valueOf ( 'F' ), Blocks . furnace , Character . valueOf ( 'R' ), Items . redstone , Character . valueOf ( 'O' ), "ingotOsmium"
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( TeleportationCore ), new Object [] {
2014-07-09 23:52:01 -04:00
"LAL" , "GDG" , "LAL" , Character . valueOf ( 'L' ), new ItemStack ( Items . dye , 1 , 4 ), Character . valueOf ( 'A' ), AtomicAlloy , Character . valueOf ( 'G' ), Items . gold_ingot , Character . valueOf ( 'D' ), Items . diamond
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( PortableTeleporter ), new Object [] {
" E " , "CTC" , " E " , Character . valueOf ( 'E' ), EnergyTablet . getUnchargedItem (), Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'T' ), TeleportationCore
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock , 1 , 11 ), new Object [] {
"COC" , "OTO" , "COC" , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'O' ), new ItemStack ( BasicBlock , 1 , 8 ), Character . valueOf ( 'T' ), TeleportationCore
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock , 1 , 9 ), new Object [] {
2014-07-11 01:45:44 -04:00
"ECE" , "ORO" , "ECE" , Character . valueOf ( 'C' ), "circuitAdvanced" , Character . valueOf ( 'E' ), "alloyAdvanced" , Character . valueOf ( 'O' ), "ingotOsmium" , Character . valueOf ( 'R' ), new ItemStack ( MachineBlock , 1 , 0 )
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( Configurator ), new Object [] {
2014-04-20 04:34:19 +01:00
" L " , "AEA" , " S " , Character . valueOf ( 'L' ), new ItemStack ( Items . dye , 1 , 4 ), Character . valueOf ( 'A' ), EnrichedAlloy , Character . valueOf ( 'E' ), EnergyTablet . getUnchargedItem (), Character . valueOf ( 'S' ), Items . stick
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock , 9 , 7 ), new Object [] {
"OOO" , "OGO" , "OOO" , Character . valueOf ( 'O' ), "ingotRefinedObsidian" , Character . valueOf ( 'G' ), "ingotRefinedGlowstone"
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock , 1 , 8 ), new Object [] {
" S " , "SPS" , " S " , Character . valueOf ( 'S' ), "ingotSteel" , Character . valueOf ( 'P' ), "ingotOsmium"
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock , 1 , 10 ), new Object [] {
2014-07-11 01:45:44 -04:00
"RCR" , "GIG" , "RCR" , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'R' ), "alloyBasic" , Character . valueOf ( 'G' ), "blockGlass" , Character . valueOf ( 'I' ), new ItemStack ( BasicBlock , 1 , 8 )
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock , 1 , 12 ), new Object [] {
2014-04-20 21:15:44 +01:00
" B " , "ECE" , "OOO" , Character . valueOf ( 'B' ), Items . bucket , Character . valueOf ( 'E' ), EnrichedAlloy , Character . valueOf ( 'C' ), new ItemStack ( BasicBlock , 1 , 8 ), Character . valueOf ( 'O' ), "ingotOsmium"
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock , 1 , 13 ), new Object [] {
2014-07-11 01:45:44 -04:00
"SGS" , "CcC" , "SSS" , Character . valueOf ( 'S' ), "ingotSteel" , Character . valueOf ( 'G' ), "blockGlass" , Character . valueOf ( 'C' ), Blocks . chest , Character . valueOf ( 'c' ), "circuitBasic"
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock , 8 , 9 ), new Object [] {
2014-04-20 04:34:19 +01:00
" I " , "ISI" , " I " , Character . valueOf ( 'I' ), "ingotSteel" , Character . valueOf ( 'S' ), Blocks . cobblestone
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock , 8 , 10 ), new Object [] {
2014-07-11 01:45:44 -04:00
" I " , "IGI" , " I " , Character . valueOf ( 'I' ), "ingotSteel" , Character . valueOf ( 'G' ), "blockGlass"
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock , 2 , 11 ), new Object [] {
2014-02-21 17:30:40 -05:00
" I " , "ICI" , " I " , Character . valueOf ( 'I' ), "ingotSteel" , Character . valueOf ( 'C' ), "circuitBasic"
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock , 1 , 14 ), new Object [] {
2014-04-20 21:15:44 +01:00
"PPP" , "SES" , Character . valueOf ( 'P' ), Blocks . stone_pressure_plate , Character . valueOf ( 'S' ), "ingotSteel" , Character . valueOf ( 'E' ), EnergyTablet . getUnchargedItem ()
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( Robit . getUnchargedItem (), new Object [] {
2014-07-09 23:52:01 -04:00
" S " , "ECE" , "OIO" , Character . valueOf ( 'S' ), "ingotSteel" , Character . valueOf ( 'E' ), EnergyTablet . getUnchargedItem (), Character . valueOf ( 'C' ), AtomicAlloy , Character . valueOf ( 'O' ), "ingotRefinedObsidian" , Character . valueOf ( 'I' ), new ItemStack ( MachineBlock , 1 , 13 )
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( NetworkReader ), new Object [] {
2014-07-11 01:45:44 -04:00
" G " , "AEA" , " I " , Character . valueOf ( 'G' ), "blockGlass" , Character . valueOf ( 'A' ), EnrichedAlloy , Character . valueOf ( 'E' ), EnergyTablet . getUnchargedItem (), Character . valueOf ( 'I' ), "ingotSteel"
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( WalkieTalkie ), new Object [] {
" O" , "SCS" , " S " , Character . valueOf ( 'O' ), "ingotOsmium" , Character . valueOf ( 'S' ), "ingotSteel" , Character . valueOf ( 'C' ), "circuitBasic"
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock , 1 , 15 ), new Object [] {
2014-07-11 01:45:44 -04:00
"IPI" , "ICI" , "III" , Character . valueOf ( 'I' ), "ingotIron" , Character . valueOf ( 'P' ), Blocks . piston , Character . valueOf ( 'C' ), "circuitBasic"
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock , 1 , 6 ), new Object [] {
2014-04-20 04:34:19 +01:00
"SSS" , "SCS" , "SSS" , Character . valueOf ( 'S' ), Blocks . cobblestone , Character . valueOf ( 'C' ), "circuitBasic"
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock , 1 , 4 ), new Object [] {
2014-07-09 23:52:01 -04:00
"ACA" , "SES" , "TIT" , Character . valueOf ( 'A' ), AtomicAlloy , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'S' ), new ItemStack ( MachineBlock , 1 , 15 ), Character . valueOf ( 'E' ), Robit . getUnchargedItem (),
2013-12-01 00:04:20 -05:00
Character . valueOf ( 'I' ), new ItemStack ( BasicBlock , 1 , 8 ), Character . valueOf ( 'T' ), TeleportationCore
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock2 , 1 , 0 ), new Object [] {
2014-07-11 01:45:44 -04:00
"GCG" , "tET" , "GIG" , Character . valueOf ( 'G' ), "blockGlass" , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 't' ), MekanismUtils . getEmptyGasTank (), Character . valueOf ( 'E' ), EnergyTablet . getUnchargedItem (),
2013-12-01 00:04:20 -05:00
Character . valueOf ( 'T' ), new ItemStack ( BasicBlock , 1 , 9 ), Character . valueOf ( 'I' ), new ItemStack ( BasicBlock , 1 , 8 )
}));
2013-12-05 21:10:15 -05:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( Jetpack . getEmptyItem (), new Object [] {
"SCS" , "TGT" , " T " , Character . valueOf ( 'S' ), "ingotSteel" , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'T' ), "ingotTin" , Character . valueOf ( 'G' ), MekanismUtils . getEmptyGasTank ()
}));
2013-12-09 20:52:49 -05:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( Dictionary ), new Object [] {
2014-04-20 04:34:19 +01:00
"C" , "B" , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'B' ), Items . book
2013-12-09 20:52:49 -05:00
}));
2013-12-15 18:54:43 -05:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( GasMask ), new Object [] {
2014-07-11 01:45:44 -04:00
" S " , "GCG" , "S S" , Character . valueOf ( 'S' ), "ingotSteel" , Character . valueOf ( 'G' ), "blockGlass" , Character . valueOf ( 'C' ), "circuitBasic"
2013-12-15 18:54:43 -05:00
}));
2013-12-21 00:32:15 -05:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( ScubaTank . getEmptyItem (), new Object [] {
2013-12-15 18:54:43 -05:00
" C " , "ATA" , "SSS" , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'A' ), EnrichedAlloy , Character . valueOf ( 'S' ), "ingotSteel"
}));
2014-01-01 00:58:58 -05:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock2 , 1 , 1 ), new Object [] {
"ACA" , "ERG" , "ACA" , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'R' ), new ItemStack ( BasicBlock , 1 , 9 ), Character . valueOf ( 'G' ), MekanismUtils . getEmptyGasTank (), Character . valueOf ( 'E' ), new ItemStack ( MachineBlock , 1 , 13 ), Character . valueOf ( 'A' ), EnrichedAlloy
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock2 , 1 , 2 ), new Object [] {
"ACA" , "GRG" , "ACA" , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'R' ), new ItemStack ( BasicBlock , 1 , 9 ), Character . valueOf ( 'G' ), MekanismUtils . getEmptyGasTank (), Character . valueOf ( 'A' ), EnrichedAlloy
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock2 , 1 , 3 ), new Object [] {
2014-07-11 01:45:44 -04:00
"RCR" , "GPG" , "RCR" , Character . valueOf ( 'C' ), "circuitElite" , Character . valueOf ( 'R' ), "alloyElite" , Character . valueOf ( 'G' ), "ingotGold" , Character . valueOf ( 'P' ), new ItemStack ( MachineBlock , 1 , 9 )
2014-01-01 00:58:58 -05:00
}));
2014-01-08 02:06:58 +00:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock2 , 1 , 4 ), new Object [] {
2014-07-11 01:45:44 -04:00
"IRI" , "ECE" , "IRI" , Character . valueOf ( 'I' ), "ingotIron" , Character . valueOf ( 'R' ), Items . redstone , Character . valueOf ( 'E' ), Mekanism . EnrichedAlloy , Character . valueOf ( 'C' ), ElectrolyticCore
2014-01-03 02:09:21 +00:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( ElectrolyticCore ), new Object [] {
2014-01-08 22:26:01 -05:00
"EPE" , "IEG" , "EPE" , Character . valueOf ( 'E' ), Mekanism . EnrichedAlloy , Character . valueOf ( 'P' ), "dustOsmium" , Character . valueOf ( 'I' ), "dustIron" , Character . valueOf ( 'G' ), "dustGold"
2014-01-03 02:09:21 +00:00
}));
2014-01-13 21:43:36 -05:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( CardboardBox ), new Object [] {
2014-01-22 07:43:28 -05:00
"SS" , "SS" , Character . valueOf ( 'S' ), "pulpWood"
2014-01-13 21:43:36 -05:00
}));
2014-04-20 04:34:19 +01:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( Items . paper , 6 ), new Object [] {
2014-01-13 21:43:36 -05:00
"SSS" , Character . valueOf ( 'S' ), Sawdust
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock2 , 1 , 5 ), new Object [] {
"ICI" , "ASA" , "ICI" , Character . valueOf ( 'I' ), "ingotIron" , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'A' ), EnrichedAlloy , Character . valueOf ( 'S' ), new ItemStack ( BasicBlock , 1 , 8 )
}));
2014-01-15 23:52:10 -05:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock , 1 , 14 ), new Object [] {
2014-07-11 01:45:44 -04:00
"CGC" , "IBI" , "CGC" , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'G' ), "paneGlass" , Character . valueOf ( 'I' ), new ItemStack ( BasicBlock , 1 , 8 ), Character . valueOf ( 'B' ), "blockCopper"
2014-01-15 23:52:10 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock , 1 , 15 ), new Object [] {
"ITI" , "CBC" , "ITI" , Character . valueOf ( 'I' ), "ingotCopper" , Character . valueOf ( 'T' ), new ItemStack ( BasicBlock , 1 , 11 ), Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'B' ), new ItemStack ( BasicBlock , 1 , 8 )
}));
2014-01-17 20:38:05 -05:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BasicBlock2 , 1 , 0 ), new Object [] {
"CCC" , "CTC" , "CCC" , Character . valueOf ( 'C' ), "ingotCopper" , Character . valueOf ( 'T' ), new ItemStack ( BasicBlock , 1 , 9 )
}));
2014-01-30 17:02:56 -05:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock2 , 1 , 6 ), new Object [] {
2014-07-09 23:52:01 -04:00
"CGC" , "EAE" , "CGC" , Character . valueOf ( 'G' ), MekanismUtils . getEmptyGasTank (), Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'A' ), AtomicAlloy , Character . valueOf ( 'E' ), EnrichedAlloy
2014-01-30 17:02:56 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock2 , 1 , 7 ), new Object [] {
2014-04-20 21:15:44 +01:00
"CWC" , "EIE" , "CGC" , Character . valueOf ( 'W' ), Items . bucket , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'E' ), EnrichedAlloy , Character . valueOf ( 'G' ), MekanismUtils . getEmptyGasTank (), Character . valueOf ( 'I' ), new ItemStack ( BasicBlock , 1 , 8 )
2014-01-30 17:02:56 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock2 , 1 , 8 ), new Object [] {
2014-07-09 23:52:01 -04:00
"CGC" , "ASA" , "CGC" , Character . valueOf ( 'G' ), MekanismUtils . getEmptyGasTank (), Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'A' ), AtomicAlloy , Character . valueOf ( 'S' ), new ItemStack ( BasicBlock , 1 , 8 )
2014-01-30 17:02:56 -05:00
}));
2014-02-05 20:22:43 -05:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( FreeRunners ), new Object [] {
2014-02-01 16:33:27 -05:00
"C C" , "A A" , "T T" , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'A' ), EnrichedAlloy , Character . valueOf ( 'T' ), EnergyTablet . getUnchargedItem ()
}));
2014-02-22 14:28:02 -05:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( ArmoredJetpack . getEmptyItem (), new Object [] {
2014-02-05 21:37:17 -05:00
"D D" , "BSB" , " J " , Character . valueOf ( 'D' ), "dustDiamond" , Character . valueOf ( 'B' ), "ingotBronze" , Character . valueOf ( 'S' ), "blockSteel" , Character . valueOf ( 'J' ), Jetpack . getEmptyItem ()
}));
2014-03-08 17:47:39 -05:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( FilterCard ), new Object [] {
" A " , "ACA" , " A " , Character . valueOf ( 'A' ), EnrichedAlloy , Character . valueOf ( 'C' ), "circuitBasic"
}));
2014-06-09 17:15:34 +02:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( SeismicReader . getUnchargedItem (), new Object [] {
"SLS" , "STS" , "SSS" , Character . valueOf ( 'S' ), "ingotSteel" , Character . valueOf ( 'L' ), new ItemStack ( Items . dye , 1 , 4 )
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock2 , 1 , 9 ), new Object [] {
2014-06-16 02:09:31 +02:00
"TLT" , "CIC" , "TTT" , Character . valueOf ( 'T' ), "ingotTin" , Character . valueOf ( 'L' ), new ItemStack ( Items . dye , 1 , 4 ), Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'I' ), new ItemStack ( BasicBlock , 1 , 8 )
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock2 , 1 , 10 ), new Object [] {
"TET" , "CIC" , "GFG" , Character . valueOf ( 'S' ), "ingotSteel" , Character . valueOf ( 'E' ), EnrichedAlloy , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'G' ), MekanismUtils . getEmptyGasTank (),
Character . valueOf ( 'I' ), new ItemStack ( MachineBlock , 1 , 0 ), Character . valueOf ( 'F' ), new ItemStack ( BasicBlock , 1 , 9 )
2014-06-09 17:15:34 +02:00
}));
2014-06-19 01:13:23 +02:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock2 , 1 , 11 ), new Object [] {
2014-07-11 01:45:44 -04:00
"III" , "GCG" , "III" , Character . valueOf ( 'I' ), "ingotIron" , Character . valueOf ( 'G' ), "blockGlass" , Character . valueOf ( 'C' ), "circuitBasic"
2014-06-19 01:13:23 +02:00
}));
2014-06-19 14:42:11 +02:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( MachineBlock2 , 1 , 12 ), new Object [] {
"TTT" , "CPC" , "TTT" , Character . valueOf ( 'P' ), new ItemStack ( MachineBlock , 1 , 12 ), Character . valueOf ( 'T' ), "ingotTin" , Character . valueOf ( 'C' ), "circuitBasic"
}));
2014-06-27 10:56:56 -04:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( Blocks . rail , 24 ), new Object [] {
"O O" , "OSO" , "O O" , Character . valueOf ( 'O' ), "ingotOsmium" , Character . valueOf ( 'S' ), "stickWood"
}));
2014-07-09 23:52:01 -04:00
2014-07-11 01:45:44 -04:00
//Energy Cube recipes
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( MekanismUtils . getEnergyCube ( EnergyCubeTier . BASIC ), new Object [] {
"RTR" , "iIi" , "RTR" , Character . valueOf ( 'R' ), "alloyBasic" , Character . valueOf ( 'i' ), "ingotIron" , Character . valueOf ( 'T' ), EnergyTablet . getUnchargedItem (), Character . valueOf ( 'I' ), new ItemStack ( BasicBlock , 1 , 8 )
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( MekanismUtils . getEnergyCube ( EnergyCubeTier . ADVANCED ), new Object [] {
"ETE" , "oBo" , "ETE" , Character . valueOf ( 'E' ), "alloyAdvanced" , Character . valueOf ( 'o' ), "ingotOsmium" , Character . valueOf ( 'T' ), EnergyTablet . getUnchargedItem (), Character . valueOf ( 'B' ), MekanismUtils . getEnergyCube ( EnergyCubeTier . BASIC )
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( MekanismUtils . getEnergyCube ( EnergyCubeTier . ELITE ), new Object [] {
"RTR" , "gAg" , "RTR" , Character . valueOf ( 'R' ), "alloyElite" , Character . valueOf ( 'g' ), "ingotGold" , Character . valueOf ( 'T' ), EnergyTablet . getUnchargedItem (), Character . valueOf ( 'A' ), MekanismUtils . getEnergyCube ( EnergyCubeTier . ADVANCED )
2014-07-09 23:52:01 -04:00
}));
2014-07-11 01:45:44 -04:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( MekanismUtils . getEnergyCube ( EnergyCubeTier . ULTIMATE ), new Object [] {
"ATA" , "dEd" , "ATA" , Character . valueOf ( 'A' ), "alloyUltimate" , Character . valueOf ( 'd' ), "gemDiamond" , Character . valueOf ( 'T' ), EnergyTablet . getUnchargedItem (), Character . valueOf ( 'E' ), MekanismUtils . getEnergyCube ( EnergyCubeTier . ELITE )
}));
//Circuit recipes
2014-07-09 23:52:01 -04:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( ControlCircuit , 1 , 1 ), new Object [] {
2014-07-11 01:45:44 -04:00
"ECE" , Character . valueOf ( 'C' ), new ItemStack ( ControlCircuit , 1 , 0 ), Character . valueOf ( 'E' ), "alloyAdvanced"
2014-07-09 23:52:01 -04:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( ControlCircuit , 1 , 2 ), new Object [] {
2014-07-11 01:45:44 -04:00
"RCR" , Character . valueOf ( 'C' ), new ItemStack ( ControlCircuit , 1 , 1 ), Character . valueOf ( 'R' ), "alloyElite"
2014-07-09 23:52:01 -04:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( ControlCircuit , 1 , 3 ), new Object [] {
2014-07-11 01:45:44 -04:00
"ACA" , Character . valueOf ( 'C' ), new ItemStack ( ControlCircuit , 1 , 2 ), Character . valueOf ( 'A' ), "alloyUltimate"
2014-07-09 23:52:01 -04:00
}));
2014-01-03 02:09:21 +00:00
2014-07-09 23:52:01 -04:00
//Factory recipes
2013-12-01 00:04:20 -05:00
for ( RecipeType type : RecipeType . values ())
{
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( MekanismUtils . getFactory ( FactoryTier . BASIC , type ), new Object [] {
2014-07-11 01:45:44 -04:00
"RCR" , "iOi" , "RCR" , Character . valueOf ( 'R' ), "alloyBasic" , Character . valueOf ( 'C' ), "circuitBasic" , Character . valueOf ( 'i' ), "ingotIron" , Character . valueOf ( 'O' ), type . getStack ()
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( MekanismUtils . getFactory ( FactoryTier . ADVANCED , type ), new Object [] {
2014-07-11 01:45:44 -04:00
"ECE" , "oOo" , "ECE" , Character . valueOf ( 'E' ), "alloyAdvanced" , Character . valueOf ( 'C' ), "circuitAdvanced" , Character . valueOf ( 'o' ), "ingotOsmium" , Character . valueOf ( 'O' ), MekanismUtils . getFactory ( FactoryTier . BASIC , type )
2013-12-01 00:04:20 -05:00
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( MekanismUtils . getFactory ( FactoryTier . ELITE , type ), new Object [] {
2014-07-11 01:45:44 -04:00
"RCR" , "gOg" , "RCR" , Character . valueOf ( 'R' ), "alloyElite" , Character . valueOf ( 'C' ), "circuitElite" , Character . valueOf ( 'g' ), "ingotGold" , Character . valueOf ( 'O' ), MekanismUtils . getFactory ( FactoryTier . ADVANCED , type )
2013-12-01 00:04:20 -05:00
}));
}
2014-07-09 23:52:01 -04:00
//Add the bin recipe system to the CraftingManager
2013-11-11 22:52:12 -05:00
CraftingManager . getInstance (). getRecipeList (). add ( new BinRecipe ());
2013-12-12 01:56:05 +00:00
2013-12-12 08:43:21 -05:00
//Transmitters
2014-07-09 02:15:28 -04:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( PartTransmitter , 8 , 0 ), new Object [] {
2014-06-04 11:05:29 +02:00
"SRS" , Character . valueOf ( 'S' ), "ingotSteel" , Character . valueOf ( 'R' ), Items . redstone
}));
2014-07-09 02:15:28 -04:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( PartTransmitter , 8 , 1 ), new Object [] {
2014-07-11 01:45:44 -04:00
"TTT" , "TET" , "TTT" , Character . valueOf ( 'E' ), "alloyAdvanced" , Character . valueOf ( 'T' ), new ItemStack ( PartTransmitter , 1 , 0 )
2014-01-08 22:26:01 -05:00
}));
2014-07-09 02:15:28 -04:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( PartTransmitter , 8 , 2 ), new Object [] {
2014-07-11 01:45:44 -04:00
"TTT" , "TRT" , "TTT" , Character . valueOf ( 'R' ), "alloyElite" , Character . valueOf ( 'T' ), new ItemStack ( PartTransmitter , 1 , 1 )
2014-01-08 22:26:01 -05:00
}));
2014-07-09 02:15:28 -04:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( PartTransmitter , 8 , 3 ), new Object [] {
2014-07-11 01:45:44 -04:00
"TTT" , "TAT" , "TTT" , Character . valueOf ( 'A' ), "alloyUltimate" , Character . valueOf ( 'T' ), new ItemStack ( PartTransmitter , 1 , 2 )
2014-01-08 22:26:01 -05:00
}));
2014-07-09 02:15:28 -04:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( PartTransmitter , 8 , 4 ), new Object [] {
2014-04-20 21:15:44 +01:00
"SBS" , Character . valueOf ( 'S' ), "ingotSteel" , Character . valueOf ( 'B' ), Items . bucket
2013-12-12 08:43:21 -05:00
}));
2014-07-09 02:15:28 -04:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( PartTransmitter , 8 , 5 ), new Object [] {
2014-07-11 01:45:44 -04:00
"TTT" , "TET" , "TTT" , Character . valueOf ( 'E' ), "alloyAdvanced" , Character . valueOf ( 'T' ), new ItemStack ( PartTransmitter , 1 , 4 )
2014-04-19 20:30:36 +01:00
}));
2014-07-09 02:15:28 -04:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( PartTransmitter , 8 , 6 ), new Object [] {
2014-07-23 13:43:12 -04:00
"TTT" , "TRT" , "TTT" , Character . valueOf ( 'R' ), "alloyElite" , Character . valueOf ( 'T' ), new ItemStack ( PartTransmitter , 1 , 5 )
2014-04-19 20:30:36 +01:00
}));
2014-07-09 02:15:28 -04:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( PartTransmitter , 8 , 7 ), new Object [] {
2014-07-23 13:43:12 -04:00
"TTT" , "TAT" , "TTT" , Character . valueOf ( 'A' ), "alloyUltimate" , Character . valueOf ( 'T' ), new ItemStack ( PartTransmitter , 1 , 6 )
2014-04-19 20:30:36 +01:00
}));
2014-07-09 02:15:28 -04:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( PartTransmitter , 8 , 8 ), new Object [] {
2014-07-11 01:45:44 -04:00
"SGS" , Character . valueOf ( 'S' ), "ingotSteel" , Character . valueOf ( 'G' ), "blockGlass"
2013-12-12 08:43:21 -05:00
}));
2014-07-09 02:15:28 -04:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( PartTransmitter , 8 , 9 ), new Object [] {
2013-12-27 00:54:33 -05:00
"SCS" , Character . valueOf ( 'S' ), "ingotSteel" , Character . valueOf ( 'C' ), "circuitBasic"
}));
2014-07-09 02:15:28 -04:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( PartTransmitter , 2 , 10 ), new Object [] {
2014-04-20 21:15:44 +01:00
"SBS" , Character . valueOf ( 'S' ), "ingotSteel" , Character . valueOf ( 'B' ), Blocks . iron_bars
2013-12-27 00:54:33 -05:00
}));
2014-07-09 02:15:28 -04:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( PartTransmitter , 2 , 11 ), new Object [] {
2014-04-20 21:15:44 +01:00
"RRR" , "SBS" , "RRR" , Character . valueOf ( 'R' ), Items . redstone , Character . valueOf ( 'S' ), "ingotSteel" , Character . valueOf ( 'B' ), Blocks . iron_bars
2013-12-27 00:54:33 -05:00
}));
2014-06-04 11:05:29 +02:00
2014-07-09 23:52:01 -04:00
//Plastic stuff
2014-04-10 03:05:28 +01:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( Polyethene , 1 , 1 ), new Object [] {
"PP" , "PP" , "PP" , Character . valueOf ( 'P' ), new ItemStack ( Polyethene , 1 , 0 )
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( Polyethene , 1 , 2 ), new Object [] {
"PPP" , "P P" , "PPP" , Character . valueOf ( 'P' ), new ItemStack ( Polyethene , 1 , 0 )
}));
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( Polyethene , 1 , 3 ), new Object [] {
"R" , "R" , Character . valueOf ( 'R' ), new ItemStack ( Polyethene , 1 , 1 )
}));
2014-04-11 18:22:25 +01:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BlockHDPE , 4 , 15 ), new Object [] {
"SSS" , "S S" , "SSS" , Character . valueOf ( 'S' ), new ItemStack ( Polyethene , 1 , 2 )
}));
2014-04-16 00:08:09 +01:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( GlowPanel , 2 , 15 ), new Object [] {
2014-07-11 01:45:44 -04:00
"PSP" , "S S" , "GSG" , Character . valueOf ( 'P' ), "paneGlass" , Character . valueOf ( 'S' ), new ItemStack ( Polyethene , 1 , 2 ), Character . valueOf ( 'G' ), Items . glowstone_dust
2014-04-16 00:08:09 +01:00
}));
2014-04-11 21:10:14 +01:00
2014-04-11 18:22:25 +01:00
for ( int i = 0 ; i < EnumColor . DYES . length - 1 ; i ++ )
{
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BlockHDPE , 4 , i ), new Object [] {
2014-06-14 14:16:33 +02:00
"SSS" , "SDS" , "SSS" , Character . valueOf ( 'S' ), new ItemStack ( Polyethene , 1 , 2 ), Character . valueOf ( 'D' ), "dye" + EnumColor . DYES [ i ] . dyeName
2014-04-11 18:22:25 +01:00
}));
2014-04-16 00:08:09 +01:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( GlowPanel , 2 , i ), new Object [] {
2014-07-11 01:45:44 -04:00
"PSP" , "SDS" , "GSG" , Character . valueOf ( 'P' ), "paneGlass" , Character . valueOf ( 'S' ), new ItemStack ( Polyethene , 1 , 2 ), Character . valueOf ( 'D' ), "dye" + EnumColor . DYES [ i ] . dyeName , Character . valueOf ( 'G' ), Items . glowstone_dust
2014-04-16 00:08:09 +01:00
}));
2014-04-11 18:22:25 +01:00
}
for ( int i = 0 ; i < EnumColor . DYES . length ; i ++ )
2013-12-22 00:42:46 -05:00
{
2014-04-11 18:22:25 +01:00
CraftingManager . getInstance (). getRecipeList (). add ( new ShapelessOreRecipe ( new ItemStack ( Balloon , 2 , i ), new Object [] {
2014-06-14 14:16:33 +02:00
Items . leather , Items . string , "dye" + EnumColor . DYES [ i ] . dyeName
2014-04-11 18:22:25 +01:00
}));
for ( int j = 0 ; j < EnumColor . DYES . length ; j ++ )
{
CraftingManager . getInstance (). getRecipeList (). add ( new ShapelessOreRecipe ( new ItemStack ( Balloon , 1 , i ), new Object [] {
2014-06-14 14:16:33 +02:00
new ItemStack ( Balloon , 1 , j ), "dye" + EnumColor . DYES [ i ] . dyeName
2014-04-11 18:22:25 +01:00
}));
2014-06-09 17:15:34 +02:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BlockHDPE , 4 , i ), new Object [] {
2014-06-14 14:16:33 +02:00
" P " , "PDP" , " P " , Character . valueOf ( 'P' ), new ItemStack ( BlockHDPE , 1 , j ), Character . valueOf ( 'D' ), "dye" + EnumColor . DYES [ i ] . dyeName
2014-04-15 01:31:13 +01:00
}));
2014-06-09 17:15:34 +02:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BlockSlickHDPE , 4 , i ), new Object [] {
2014-06-14 14:16:33 +02:00
" P " , "PDP" , " P " , Character . valueOf ( 'P' ), new ItemStack ( BlockSlickHDPE , 1 , j ), Character . valueOf ( 'D' ), "dye" + EnumColor . DYES [ i ] . dyeName
2014-04-15 01:31:13 +01:00
}));
2014-06-09 17:15:34 +02:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BlockGlowHDPE , 4 , i ), new Object [] {
2014-06-14 14:16:33 +02:00
" P " , "PDP" , " P " , Character . valueOf ( 'P' ), new ItemStack ( BlockGlowHDPE , 1 , j ), Character . valueOf ( 'D' ), "dye" + EnumColor . DYES [ i ] . dyeName
2014-04-15 01:31:13 +01:00
}));
2014-06-09 17:15:34 +02:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BlockReinforcedHDPE , 4 , i ), new Object [] {
2014-06-14 14:16:33 +02:00
" P " , "PDP" , " P " , Character . valueOf ( 'P' ), new ItemStack ( BlockReinforcedHDPE , 1 , j ), Character . valueOf ( 'D' ), "dye" + EnumColor . DYES [ i ] . dyeName
2014-04-15 01:31:13 +01:00
}));
2014-04-16 00:08:09 +01:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( GlowPanel , 4 , i ), new Object [] {
2014-06-14 14:16:33 +02:00
" P " , "PDP" , " P " , Character . valueOf ( 'P' ), new ItemStack ( GlowPanel , 1 , j ), Character . valueOf ( 'D' ), "dye" + EnumColor . DYES [ i ] . dyeName
2014-04-16 00:08:09 +01:00
}));
2014-04-11 18:22:25 +01:00
}
2014-04-15 01:31:13 +01:00
CraftingManager . getInstance (). getRecipeList (). add ( new ShapelessOreRecipe ( new ItemStack ( BlockGlowHDPE , 3 , i ), new Object [] {
2014-04-20 21:15:44 +01:00
new ItemStack ( BlockHDPE , 1 , i ), new ItemStack ( BlockHDPE , 1 , i ), new ItemStack ( BlockHDPE , 1 , i ), new ItemStack ( Items . glowstone_dust )
2014-04-11 18:22:25 +01:00
}));
2014-06-09 17:15:34 +02:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BlockReinforcedHDPE , 4 , i ), new Object [] {
2014-04-16 00:08:09 +01:00
" P " , "POP" , " P " , Character . valueOf ( 'P' ), new ItemStack ( BlockHDPE , 1 , i ), Character . valueOf ( 'O' ), new ItemStack ( Dust , 1 , 2 )
}));
2014-06-09 17:15:34 +02:00
CraftingManager . getInstance (). getRecipeList (). add ( new MekanismRecipe ( new ItemStack ( BlockRoadHDPE , 3 , i ), new Object [] {
2014-04-20 04:34:19 +01:00
"SSS" , "PPP" , "SSS" , Character . valueOf ( 'S' ), Blocks . sand , Character . valueOf ( 'P' ), new ItemStack ( BlockSlickHDPE , 1 , i )
2014-04-11 18:22:25 +01:00
}));
2013-12-22 00:42:46 -05:00
}
2013-12-01 00:04:20 -05:00
//Furnace Recipes
2014-04-20 21:15:44 +01:00
FurnaceRecipes . smelting (). func_151394_a ( new ItemStack ( OreBlock , 1 , 0 ), new ItemStack ( Ingot , 1 , 1 ), 1 . 0F );
FurnaceRecipes . smelting (). func_151394_a ( new ItemStack ( OreBlock , 1 , 1 ), new ItemStack ( Ingot , 1 , 5 ), 1 . 0F );
FurnaceRecipes . smelting (). func_151394_a ( new ItemStack ( OreBlock , 1 , 2 ), new ItemStack ( Ingot , 1 , 6 ), 1 . 0F );
FurnaceRecipes . smelting (). func_151394_a ( new ItemStack ( Dust , 1 , 2 ), new ItemStack ( Ingot , 1 , 1 ), 0 . 0F );
FurnaceRecipes . smelting (). func_151394_a ( new ItemStack ( Dust , 1 , 0 ), new ItemStack ( Items . iron_ingot ), 0 . 0F );
FurnaceRecipes . smelting (). func_151394_a ( new ItemStack ( Dust , 1 , 1 ), new ItemStack ( Items . gold_ingot ), 0 . 0F );
FurnaceRecipes . smelting (). func_151394_a ( new ItemStack ( Dust , 1 , 5 ), new ItemStack ( Ingot , 1 , 4 ), 0 . 0F );
FurnaceRecipes . smelting (). func_151394_a ( new ItemStack ( Dust , 1 , 6 ), new ItemStack ( Ingot , 1 , 5 ), 0 . 0F );
FurnaceRecipes . smelting (). func_151394_a ( new ItemStack ( Dust , 1 , 7 ), new ItemStack ( Ingot , 1 , 6 ), 0 . 0F );
2013-12-01 00:04:20 -05:00
//Enrichment Chamber Recipes
2014-04-20 21:15:44 +01:00
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Blocks . redstone_ore ), new ItemStack ( Items . redstone , 12 ));
2014-04-20 04:34:19 +01:00
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Blocks . obsidian ), new ItemStack ( DirtyDust , 2 , 6 ));
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Items . coal , 1 , 0 ), new ItemStack ( CompressedCarbon ));
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Items . coal , 1 , 1 ), new ItemStack ( CompressedCarbon ));
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Items . redstone ), new ItemStack ( CompressedRedstone ));
2014-04-20 21:15:44 +01:00
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Blocks . lapis_ore ), new ItemStack ( Items . dye , 12 , 4 ));
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Blocks . coal_ore ), new ItemStack ( Items . coal , 2 ));
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Blocks . diamond_ore ), new ItemStack ( Items . diamond , 2 ));
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Blocks . mossy_cobblestone ), new ItemStack ( Blocks . cobblestone ));
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Blocks . stone ), new ItemStack ( Blocks . stonebrick , 1 , 2 ));
2014-04-20 04:34:19 +01:00
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Blocks . sand ), new ItemStack ( Blocks . gravel ));
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Blocks . gravel ), new ItemStack ( Blocks . cobblestone ));
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Items . gunpowder ), new ItemStack ( Items . flint ));
2014-04-20 21:15:44 +01:00
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Blocks . stonebrick , 1 , 2 ), new ItemStack ( Blocks . stonebrick , 1 , 0 ));
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Blocks . stonebrick , 1 , 0 ), new ItemStack ( Blocks . stonebrick , 1 , 3 ));
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Blocks . stonebrick , 1 , 1 ), new ItemStack ( Blocks . stonebrick , 1 , 0 ));
2014-07-09 22:06:36 -04:00
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Blocks . glowstone ), new ItemStack ( Items . glowstone_dust , 4 ));
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Blocks . clay ), new ItemStack ( Items . clay_ball , 4 ));
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( SaltBlock ), new ItemStack ( Salt , 4 ));
2014-07-09 23:52:01 -04:00
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( Items . diamond ), new ItemStack ( CompressedDiamond ));
2014-06-03 11:25:12 +02:00
2014-04-11 18:22:25 +01:00
for ( int i = 0 ; i < EnumColor . DYES . length ; i ++ )
{
2014-04-15 01:31:13 +01:00
RecipeHandler . addEnrichmentChamberRecipe ( new ItemStack ( BlockHDPE , 1 , i ), new ItemStack ( BlockSlickHDPE , 1 , i ));
2014-04-11 18:22:25 +01:00
}
2013-12-01 00:04:20 -05:00
//Combiner recipes
2014-04-20 21:15:44 +01:00
RecipeHandler . addCombinerRecipe ( new ItemStack ( Items . redstone , 16 ), new ItemStack ( Blocks . redstone_ore ));
2014-04-20 04:34:19 +01:00
RecipeHandler . addCombinerRecipe ( new ItemStack ( Items . dye , 16 , 4 ), new ItemStack ( Blocks . lapis_ore ));
RecipeHandler . addCombinerRecipe ( new ItemStack ( Items . flint ), new ItemStack ( Blocks . gravel ));
2013-12-01 00:04:20 -05:00
//Osmium Compressor Recipes
2014-04-20 21:15:44 +01:00
RecipeHandler . addOsmiumCompressorRecipe ( new ItemStack ( Items . glowstone_dust ), new ItemStack ( Ingot , 1 , 3 ));
2013-12-01 00:04:20 -05:00
//Crusher Recipes
2014-04-20 04:34:19 +01:00
RecipeHandler . addCrusherRecipe ( new ItemStack ( Items . diamond ), new ItemStack ( Dust , 1 , 4 ));
2014-04-20 21:15:44 +01:00
RecipeHandler . addCrusherRecipe ( new ItemStack ( Items . iron_ingot ), new ItemStack ( Dust , 1 , 0 ));
RecipeHandler . addCrusherRecipe ( new ItemStack ( Items . gold_ingot ), new ItemStack ( Dust , 1 , 1 ));
2014-04-20 04:34:19 +01:00
RecipeHandler . addCrusherRecipe ( new ItemStack ( Blocks . gravel ), new ItemStack ( Blocks . sand ));
RecipeHandler . addCrusherRecipe ( new ItemStack ( Blocks . stone ), new ItemStack ( Blocks . cobblestone ));
RecipeHandler . addCrusherRecipe ( new ItemStack ( Blocks . cobblestone ), new ItemStack ( Blocks . gravel ));
2014-04-20 21:15:44 +01:00
RecipeHandler . addCrusherRecipe ( new ItemStack ( Blocks . stonebrick , 1 , 2 ), new ItemStack ( Blocks . stone ));
RecipeHandler . addCrusherRecipe ( new ItemStack ( Blocks . stonebrick , 1 , 0 ), new ItemStack ( Blocks . stonebrick , 1 , 2 ));
RecipeHandler . addCrusherRecipe ( new ItemStack ( Blocks . stonebrick , 1 , 3 ), new ItemStack ( Blocks . stonebrick , 1 , 0 ));
2014-07-09 22:06:36 -04:00
RecipeHandler . addCrusherRecipe ( new ItemStack ( Items . flint ), new ItemStack ( Items . gunpowder ));
2014-04-20 21:15:44 +01:00
RecipeHandler . addCrusherRecipe ( new ItemStack ( Blocks . sandstone ), new ItemStack ( Blocks . sand , 2 ));
2014-06-06 00:16:36 +02:00
2014-07-07 15:54:26 -04:00
for ( int i = 0 ; i < 16 ; i ++ )
{
RecipeHandler . addCrusherRecipe ( new ItemStack ( Blocks . wool , 1 , i ), new ItemStack ( Items . string , 4 ));
}
2014-04-06 01:16:09 +01:00
//BioFuel Crusher Recipes
2014-04-20 21:15:44 +01:00
RecipeHandler . addCrusherRecipe ( new ItemStack ( Blocks . tallgrass ), new ItemStack ( BioFuel , 4 ));
RecipeHandler . addCrusherRecipe ( new ItemStack ( Items . reeds ), new ItemStack ( BioFuel , 2 ));
RecipeHandler . addCrusherRecipe ( new ItemStack ( Items . wheat_seeds ), new ItemStack ( BioFuel , 2 ));
2014-04-20 04:34:19 +01:00
RecipeHandler . addCrusherRecipe ( new ItemStack ( Items . wheat ), new ItemStack ( BioFuel , 4 ));
2014-04-20 21:15:44 +01:00
RecipeHandler . addCrusherRecipe ( new ItemStack ( Items . pumpkin_seeds ), new ItemStack ( BioFuel , 2 ));
RecipeHandler . addCrusherRecipe ( new ItemStack ( Items . melon_seeds ), new ItemStack ( BioFuel , 2 ));
RecipeHandler . addCrusherRecipe ( new ItemStack ( Items . apple ), new ItemStack ( BioFuel , 4 ));
2014-04-20 04:34:19 +01:00
RecipeHandler . addCrusherRecipe ( new ItemStack ( Items . bread ), new ItemStack ( BioFuel , 4 ));
RecipeHandler . addCrusherRecipe ( new ItemStack ( Items . potato ), new ItemStack ( BioFuel , 4 ));
RecipeHandler . addCrusherRecipe ( new ItemStack ( Items . carrot ), new ItemStack ( BioFuel , 4 ));
2014-06-06 00:16:36 +02:00
RecipeHandler . addCrusherRecipe ( new ItemStack ( Items . rotten_flesh ), new ItemStack ( BioFuel , 2 ));
2013-12-30 02:59:45 +00:00
2014-04-06 01:16:09 +01:00
//Purification Chamber Recipes
2014-04-20 04:34:19 +01:00
RecipeHandler . addPurificationChamberRecipe ( new ItemStack ( Blocks . obsidian ), new ItemStack ( Clump , 3 , 6 ));
2014-07-21 16:41:27 -04:00
RecipeHandler . addPurificationChamberRecipe ( new ItemStack ( Blocks . gravel ), new ItemStack ( Items . flint ));
2013-12-01 00:04:20 -05:00
2013-12-24 00:23:30 -05:00
//Chemical Injection Chamber Recipes
2014-04-20 04:34:19 +01:00
RecipeHandler . addChemicalInjectionChamberRecipe ( new AdvancedInput ( new ItemStack ( Blocks . obsidian ), GasRegistry . getGas ( "hydrogenChloride" )), new ItemStack ( Shard , 4 , 6 ));
2014-04-20 21:15:44 +01:00
RecipeHandler . addChemicalInjectionChamberRecipe ( new AdvancedInput ( new ItemStack ( Blocks . dirt ), GasRegistry . getGas ( "water" )), new ItemStack ( Blocks . clay ));
2014-04-20 04:34:19 +01:00
RecipeHandler . addChemicalInjectionChamberRecipe ( new AdvancedInput ( new ItemStack ( Items . gunpowder ), GasRegistry . getGas ( "hydrogenChloride" )), new ItemStack ( Mekanism . Dust , 1 , 10 ));
2014-01-13 18:37:54 -05:00
//Precision Sawmill Recipes
2014-04-20 04:34:19 +01:00
RecipeHandler . addPrecisionSawmillRecipe ( new ItemStack ( Blocks . ladder , 3 ), new ChanceOutput ( new ItemStack ( Items . stick , 7 )));
RecipeHandler . addPrecisionSawmillRecipe ( new ItemStack ( Blocks . chest ), new ChanceOutput ( new ItemStack ( Blocks . planks , 8 )));
RecipeHandler . addPrecisionSawmillRecipe ( new ItemStack ( Blocks . trapdoor ), new ChanceOutput ( new ItemStack ( Blocks . planks , 3 )));
RecipeHandler . addPrecisionSawmillRecipe ( new ItemStack ( Items . boat ), new ChanceOutput ( new ItemStack ( Blocks . planks , 5 )));
2014-04-20 21:15:44 +01:00
RecipeHandler . addPrecisionSawmillRecipe ( new ItemStack ( Items . bed ), new ChanceOutput ( new ItemStack ( Blocks . planks , 3 ), new ItemStack ( Blocks . wool , 3 ), 1 ));
2014-04-20 04:34:19 +01:00
RecipeHandler . addPrecisionSawmillRecipe ( new ItemStack ( Blocks . jukebox ), new ChanceOutput ( new ItemStack ( Blocks . planks , 8 ), new ItemStack ( Items . diamond ), 1 ));
2014-04-20 21:15:44 +01:00
RecipeHandler . addPrecisionSawmillRecipe ( new ItemStack ( Blocks . bookshelf ), new ChanceOutput ( new ItemStack ( Blocks . planks , 6 ), new ItemStack ( Items . book , 3 ), 1 ));
RecipeHandler . addPrecisionSawmillRecipe ( new ItemStack ( Blocks . wooden_pressure_plate ), new ChanceOutput ( new ItemStack ( Blocks . planks , 2 )));
2014-04-20 04:34:19 +01:00
RecipeHandler . addPrecisionSawmillRecipe ( new ItemStack ( Blocks . fence ), new ChanceOutput ( new ItemStack ( Items . stick , 3 )));
2014-04-20 21:15:44 +01:00
RecipeHandler . addPrecisionSawmillRecipe ( new ItemStack ( Blocks . fence_gate ), new ChanceOutput ( new ItemStack ( Blocks . planks , 2 ), new ItemStack ( Items . stick , 4 ), 1 ));
RecipeHandler . addPrecisionSawmillRecipe ( new ItemStack ( Blocks . noteblock ), new ChanceOutput ( new ItemStack ( Blocks . planks , 8 ), new ItemStack ( Items . redstone , 1 ), 1 ));
2014-06-09 16:19:36 +02:00
RecipeHandler . addPrecisionSawmillRecipe ( new ItemStack ( Blocks . redstone_torch ), new ChanceOutput ( new ItemStack ( Items . stick , 1 ), new ItemStack ( Items . redstone ), 1 ));
2014-04-20 21:15:44 +01:00
RecipeHandler . addPrecisionSawmillRecipe ( new ItemStack ( Blocks . crafting_table ), new ChanceOutput ( new ItemStack ( Blocks . planks , 4 )));
2014-01-13 18:37:54 -05:00
2013-12-01 00:04:20 -05:00
//Metallurgic Infuser Recipes
2014-04-20 21:15:44 +01:00
RecipeHandler . addMetallurgicInfuserRecipe ( InfusionInput . getInfusion ( InfuseRegistry . get ( "CARBON" ), 10 , new ItemStack ( Items . iron_ingot )), new ItemStack ( EnrichedIron ));
2013-12-01 00:04:20 -05:00
RecipeHandler . addMetallurgicInfuserRecipe ( InfusionInput . getInfusion ( InfuseRegistry . get ( "CARBON" ), 10 , new ItemStack ( EnrichedIron )), new ItemStack ( Dust , 1 , 5 ));
2014-04-20 21:15:44 +01:00
RecipeHandler . addMetallurgicInfuserRecipe ( InfusionInput . getInfusion ( InfuseRegistry . get ( "REDSTONE" ), 10 , new ItemStack ( Items . iron_ingot )), new ItemStack ( EnrichedAlloy ));
2014-04-20 04:34:19 +01:00
RecipeHandler . addMetallurgicInfuserRecipe ( InfusionInput . getInfusion ( InfuseRegistry . get ( "FUNGI" ), 10 , new ItemStack ( Blocks . dirt )), new ItemStack ( Blocks . mycelium ));
2014-06-06 00:16:36 +02:00
RecipeHandler . addMetallurgicInfuserRecipe ( InfusionInput . getInfusion ( InfuseRegistry . get ( "BIO" ), 10 , new ItemStack ( Blocks . cobblestone )), new ItemStack ( Blocks . mossy_cobblestone ));
RecipeHandler . addMetallurgicInfuserRecipe ( InfusionInput . getInfusion ( InfuseRegistry . get ( "BIO" ), 10 , new ItemStack ( Blocks . stonebrick , 1 , 0 )), new ItemStack ( Blocks . stonebrick , 1 , 1 ));
RecipeHandler . addMetallurgicInfuserRecipe ( InfusionInput . getInfusion ( InfuseRegistry . get ( "BIO" ), 10 , new ItemStack ( Blocks . sand )), new ItemStack ( Blocks . dirt ));
2014-07-09 23:52:01 -04:00
RecipeHandler . addMetallurgicInfuserRecipe ( InfusionInput . getInfusion ( InfuseRegistry . get ( "DIAMOND" ), 10 , new ItemStack ( EnrichedAlloy )), new ItemStack ( ReinforcedAlloy ));
RecipeHandler . addMetallurgicInfuserRecipe ( InfusionInput . getInfusion ( InfuseRegistry . get ( "OBSIDIAN" ), 10 , new ItemStack ( ReinforcedAlloy )), new ItemStack ( AtomicAlloy ));
2013-12-01 00:04:20 -05:00
2013-12-12 20:35:37 -05:00
//Chemical Infuser Recipes
2014-01-10 12:58:05 -05:00
RecipeHandler . addChemicalInfuserRecipe ( new ChemicalPair ( new GasStack ( GasRegistry . getGas ( "oxygen" ), 1 ), new GasStack ( GasRegistry . getGas ( "sulfurDioxideGas" ), 2 )), new GasStack ( GasRegistry . getGas ( "sulfurTrioxideGas" ), 2 ));
RecipeHandler . addChemicalInfuserRecipe ( new ChemicalPair ( new GasStack ( GasRegistry . getGas ( "sulfurTrioxideGas" ), 1 ), new GasStack ( GasRegistry . getGas ( "water" ), 1 )), new GasStack ( GasRegistry . getGas ( "sulfuricAcid" ), 1 ));
RecipeHandler . addChemicalInfuserRecipe ( new ChemicalPair ( new GasStack ( GasRegistry . getGas ( "hydrogen" ), 1 ), new GasStack ( GasRegistry . getGas ( "chlorine" ), 1 )), new GasStack ( GasRegistry . getGas ( "hydrogenChloride" ), 1 ));
2014-01-01 03:03:23 +00:00
2014-01-02 04:02:00 +00:00
//Electrolytic Separator Recipes
2014-01-10 12:58:05 -05:00
RecipeHandler . addElectrolyticSeparatorRecipe ( FluidRegistry . getFluidStack ( "water" , 2 ), new ChemicalPair ( new GasStack ( GasRegistry . getGas ( "hydrogen" ), 2 ), new GasStack ( GasRegistry . getGas ( "oxygen" ), 1 )));
2014-07-09 23:52:01 -04:00
RecipeHandler . addElectrolyticSeparatorRecipe ( FluidRegistry . getFluidStack ( "brine" , 10 ), new ChemicalPair ( new GasStack ( GasRegistry . getGas ( "sodium" ), 1 ), new GasStack ( GasRegistry . getGas ( "chlorine" ), 1 )));
2014-01-28 15:51:30 -05:00
2014-03-15 20:41:42 -04:00
//T4 Processing Recipes
2014-01-28 15:51:30 -05:00
for ( Gas gas : GasRegistry . getRegisteredGasses ())
{
if ( gas instanceof OreGas && ! (( OreGas ) gas ). isClean ())
{
OreGas oreGas = ( OreGas ) gas ;
RecipeHandler . addChemicalWasherRecipe ( new GasStack ( oreGas , 1 ), new GasStack ( oreGas . getCleanGas (), 1 ));
2014-04-12 02:51:02 +01:00
RecipeHandler . addChemicalCrystallizerRecipe ( new GasStack ( oreGas . getCleanGas (), 200 ), new ItemStack ( Crystal , 1 , Resource . getFromName ( oreGas . getName ()). ordinal ()));
2014-01-28 15:51:30 -05:00
}
}
2014-03-15 20:41:42 -04:00
//Chemical Dissolution Chamber Recipes
2014-04-20 04:34:19 +01:00
RecipeHandler . addChemicalDissolutionChamberRecipe ( new ItemStack ( Blocks . obsidian ), new GasStack ( GasRegistry . getGas ( "obsidian" ), 1000 ));
2014-01-02 04:02:00 +00:00
2014-04-06 01:16:09 +01:00
//Pressurized Reaction Chamber Recipes
RecipeHandler . addPRCRecipe (
new PressurizedReactants ( new ItemStack ( BioFuel , 2 ), new FluidStack ( FluidRegistry . WATER , 10 ), new GasStack ( GasRegistry . getGas ( "hydrogen" ), 100 )),
new PressurizedProducts ( new ItemStack ( Substrate ), new GasStack ( GasRegistry . getGas ( "ethene" ), 100 )),
0 ,
100
);
RecipeHandler . addPRCRecipe (
new PressurizedReactants ( new ItemStack ( Substrate ), new FluidStack ( FluidRegistry . getFluid ( "ethene" ), 50 ), new GasStack ( GasRegistry . getGas ( "oxygen" ), 10 )),
new PressurizedProducts ( new ItemStack ( Polyethene ), new GasStack ( GasRegistry . getGas ( "oxygen" ), 5 )),
1000 ,
60
);
2013-12-01 00:04:20 -05:00
//Infuse objects
2014-04-06 01:16:09 +01:00
InfuseRegistry . registerInfuseObject ( new ItemStack ( BioFuel ), new InfuseObject ( InfuseRegistry . get ( "BIO" ), 5 ));
2014-04-20 04:34:19 +01:00
InfuseRegistry . registerInfuseObject ( new ItemStack ( Items . coal , 1 , 0 ), new InfuseObject ( InfuseRegistry . get ( "CARBON" ), 10 ));
InfuseRegistry . registerInfuseObject ( new ItemStack ( Items . coal , 1 , 1 ), new InfuseObject ( InfuseRegistry . get ( "CARBON" ), 20 ));
2013-12-01 00:04:20 -05:00
InfuseRegistry . registerInfuseObject ( new ItemStack ( CompressedCarbon ), new InfuseObject ( InfuseRegistry . get ( "CARBON" ), 100 ));
2014-04-20 04:34:19 +01:00
InfuseRegistry . registerInfuseObject ( new ItemStack ( Items . redstone ), new InfuseObject ( InfuseRegistry . get ( "REDSTONE" ), 10 ));
2014-04-20 21:15:44 +01:00
InfuseRegistry . registerInfuseObject ( new ItemStack ( Blocks . redstone_block ), new InfuseObject ( InfuseRegistry . get ( "REDSTONE" ), 90 ));
2014-01-02 23:46:23 -05:00
InfuseRegistry . registerInfuseObject ( new ItemStack ( CompressedRedstone ), new InfuseObject ( InfuseRegistry . get ( "REDSTONE" ), 100 ));
2014-04-20 21:15:44 +01:00
InfuseRegistry . registerInfuseObject ( new ItemStack ( Blocks . red_mushroom ), new InfuseObject ( InfuseRegistry . get ( "FUNGI" ), 10 ));
InfuseRegistry . registerInfuseObject ( new ItemStack ( Blocks . brown_mushroom ), new InfuseObject ( InfuseRegistry . get ( "FUNGI" ), 10 ));
2014-07-09 23:52:01 -04:00
InfuseRegistry . registerInfuseObject ( new ItemStack ( CompressedDiamond ), new InfuseObject ( InfuseRegistry . get ( "DIAMOND" ), 100 ));
InfuseRegistry . registerInfuseObject ( new ItemStack ( CompressedObsidian ), new InfuseObject ( InfuseRegistry . get ( "OBSIDIAN" ), 100 ));
2014-02-10 21:10:30 -05:00
//Fuels
GameRegistry . registerFuelHandler ( new IFuelHandler () {
@Override
public int getBurnTime ( ItemStack fuel )
{
if ( fuel . isItemEqual ( new ItemStack ( BasicBlock , 1 , 3 )))
{
2014-06-09 17:15:34 +02:00
return 200 * 8 * 9 ;
2014-02-10 21:10:30 -05:00
}
return 0 ;
}
});
2014-04-07 00:07:59 +01:00
//Fuel Gases
FuelHandler . addGas ( GasRegistry . getGas ( "hydrogen" ), 1 , FROM_H2 );
2014-06-03 11:25:12 +02:00
//RecipeSorter registrations
RecipeSorter . register ( "mekanism" , MekanismRecipe . class , Category . SHAPED , "" );
RecipeSorter . register ( "bin" , BinRecipe . class , Category . SHAPELESS , "" );
2012-08-15 16:41:41 -04:00
}
2013-12-01 00:04:20 -05:00
2012-08-15 16:41:41 -04:00
/**
* Adds and registers all items.
*/
public void addItems ()
2013-12-01 00:04:20 -05:00
{
//Declarations
2014-04-20 21:15:44 +01:00
PartTransmitter = new ItemPartTransmitter (). setUnlocalizedName ( "MultipartTransmitter" );
EnrichedAlloy = new ItemMekanism (). setUnlocalizedName ( "EnrichedAlloy" );
2014-07-09 23:52:01 -04:00
ReinforcedAlloy = new ItemMekanism (). setUnlocalizedName ( "ReinforcedAlloy" );
AtomicAlloy = new ItemMekanism (). setUnlocalizedName ( "AtomicAlloy" );
2014-07-09 22:06:36 -04:00
ControlCircuit = new ItemControlCircuit ();
2014-07-09 23:52:01 -04:00
EnrichedIron = new ItemMekanism (). setUnlocalizedName ( "EnrichedIron" );
2014-04-20 21:15:44 +01:00
CompressedCarbon = new ItemMekanism (). setUnlocalizedName ( "CompressedCarbon" );
CompressedRedstone = new ItemMekanism (). setUnlocalizedName ( "CompressedRedstone" );
2014-07-09 23:52:01 -04:00
CompressedDiamond = new ItemMekanism (). setUnlocalizedName ( "CompressedDiamond" );
CompressedObsidian = new ItemMekanism (). setUnlocalizedName ( "CompressedObsidian" );
TeleportationCore = new ItemMekanism (). setUnlocalizedName ( "TeleportationCore" );
ElectrolyticCore = new ItemMekanism (). setUnlocalizedName ( "ElectrolyticCore" );
2014-04-20 21:15:44 +01:00
SpeedUpgrade = new ItemMachineUpgrade (). setUnlocalizedName ( "SpeedUpgrade" );
EnergyUpgrade = new ItemMachineUpgrade (). setUnlocalizedName ( "EnergyUpgrade" );
EnergyTablet = ( ItemEnergized ) new ItemEnergized ( 1000000 ). setUnlocalizedName ( "EnergyTablet" );
Dictionary = new ItemDictionary (). setUnlocalizedName ( "Dictionary" );
FilterCard = new ItemFilterCard (). setUnlocalizedName ( "FilterCard" );
ElectricBow = ( ItemElectricBow ) new ItemElectricBow (). setUnlocalizedName ( "ElectricBow" );
PortableTeleporter = new ItemPortableTeleporter (). setUnlocalizedName ( "PortableTeleporter" );
Configurator = new ItemConfigurator (). setUnlocalizedName ( "Configurator" );
NetworkReader = new ItemNetworkReader (). setUnlocalizedName ( "NetworkReader" );
WalkieTalkie = new ItemWalkieTalkie (). setUnlocalizedName ( "WalkieTalkie" );
SeismicReader = ( ItemSeismicReader ) new ItemSeismicReader (). setUnlocalizedName ( "SeismicReader" );
AtomicDisassembler = ( ItemAtomicDisassembler ) new ItemAtomicDisassembler (). setUnlocalizedName ( "AtomicDisassembler" );
GasMask = ( ItemGasMask ) new ItemGasMask (). setUnlocalizedName ( "GasMask" );
ScubaTank = ( ItemScubaTank ) new ItemScubaTank (). setUnlocalizedName ( "ScubaTank" );
Jetpack = ( ItemJetpack ) new ItemJetpack (). setUnlocalizedName ( "Jetpack" );
ArmoredJetpack = ( ItemJetpack ) new ItemJetpack (). setUnlocalizedName ( "ArmoredJetpack" );
FreeRunners = new ItemFreeRunners (). setUnlocalizedName ( "FreeRunners" );
BrineBucket = new ItemMekanism (). setMaxStackSize ( 1 ). setContainerItem ( Items . bucket ). setUnlocalizedName ( "BrineBucket" );
Sawdust = new ItemMekanism (). setUnlocalizedName ( "Sawdust" );
Salt = new ItemMekanism (). setUnlocalizedName ( "Salt" );
Ingot = new ItemIngot ();
DirtyDust = new ItemDirtyDust ();
Clump = new ItemClump ();
Shard = new ItemShard ();
Crystal = new ItemCrystal ();
Dust = new ItemDust ();
Robit = ( ItemRobit ) new ItemRobit (). setUnlocalizedName ( "Robit" );
Balloon = new ItemBalloon (). setUnlocalizedName ( "Balloon" );
ItemProxy = new ItemProxy (). setUnlocalizedName ( "ItemProxy" );
Substrate = new ItemMekanism (). setUnlocalizedName ( "Substrate" );
Polyethene = new ItemHDPE (). setUnlocalizedName ( "HDPE" );
BioFuel = new ItemMekanism (). setUnlocalizedName ( "BioFuel" );
GlowPanel = new ItemGlowPanel (). setUnlocalizedName ( "GlowPanel" );
2014-01-03 02:09:21 +00:00
2014-01-16 16:47:35 -05:00
//Fluid Container stuff
FluidContainerRegistry . registerFluidContainer ( FluidRegistry . getFluid ( "brine" ), new ItemStack ( BrineBucket ), FluidContainerRegistry . EMPTY_BUCKET );
2013-12-01 00:04:20 -05:00
//Registrations
2014-06-08 01:17:47 +02:00
GameRegistry . registerItem ( PartTransmitter , "PartTransmitter" );
2013-04-19 15:43:00 -04:00
GameRegistry . registerItem ( ElectricBow , "ElectricBow" );
GameRegistry . registerItem ( Dust , "Dust" );
GameRegistry . registerItem ( Ingot , "Ingot" );
GameRegistry . registerItem ( EnergyTablet , "EnergyTablet" );
GameRegistry . registerItem ( SpeedUpgrade , "SpeedUpgrade" );
GameRegistry . registerItem ( EnergyUpgrade , "EnergyUpgrade" );
2013-05-19 18:43:01 -04:00
GameRegistry . registerItem ( Robit , "Robit" );
2013-04-19 15:43:00 -04:00
GameRegistry . registerItem ( AtomicDisassembler , "AtomicDisassembler" );
GameRegistry . registerItem ( EnrichedAlloy , "EnrichedAlloy" );
2014-07-09 23:52:01 -04:00
GameRegistry . registerItem ( ReinforcedAlloy , "ReinforcedAlloy" );
GameRegistry . registerItem ( AtomicAlloy , "AtomicAlloy" );
2013-11-11 22:52:12 -05:00
GameRegistry . registerItem ( ItemProxy , "ItemProxy" );
2013-04-19 15:43:00 -04:00
GameRegistry . registerItem ( ControlCircuit , "ControlCircuit" );
GameRegistry . registerItem ( EnrichedIron , "EnrichedIron" );
GameRegistry . registerItem ( CompressedCarbon , "CompressedCarbon" );
2014-07-09 23:52:01 -04:00
GameRegistry . registerItem ( CompressedRedstone , "CompressedRedstone" );
GameRegistry . registerItem ( CompressedDiamond , "CompressedDiamond" );
GameRegistry . registerItem ( CompressedObsidian , "CompressedObsidian" );
2013-04-19 15:43:00 -04:00
GameRegistry . registerItem ( PortableTeleporter , "PortableTeleporter" );
GameRegistry . registerItem ( TeleportationCore , "TeleportationCore" );
GameRegistry . registerItem ( Clump , "Clump" );
GameRegistry . registerItem ( DirtyDust , "DirtyDust" );
GameRegistry . registerItem ( Configurator , "Configurator" );
2013-08-24 21:22:45 -04:00
GameRegistry . registerItem ( NetworkReader , "NetworkReader" );
2013-10-13 12:31:26 -04:00
GameRegistry . registerItem ( WalkieTalkie , "WalkieTalkie" );
2013-12-03 21:49:12 -05:00
GameRegistry . registerItem ( Jetpack , "Jetpack" );
2013-12-09 20:52:49 -05:00
GameRegistry . registerItem ( Dictionary , "Dictionary" );
2013-12-15 16:07:30 -05:00
GameRegistry . registerItem ( GasMask , "GasMask" );
GameRegistry . registerItem ( ScubaTank , "ScubaTank" );
2013-12-20 13:27:54 -05:00
GameRegistry . registerItem ( Balloon , "Balloon" );
2013-12-24 00:23:30 -05:00
GameRegistry . registerItem ( Shard , "Shard" );
2014-01-03 02:09:21 +00:00
GameRegistry . registerItem ( ElectrolyticCore , "ElectrolyticCore" );
2014-01-12 23:55:42 -05:00
GameRegistry . registerItem ( Sawdust , "Sawdust" );
2014-01-13 15:41:23 -05:00
GameRegistry . registerItem ( Salt , "Salt" );
2014-01-16 16:47:35 -05:00
GameRegistry . registerItem ( BrineBucket , "BrineBucket" );
2014-01-21 11:28:43 -05:00
GameRegistry . registerItem ( Crystal , "Crystal" );
2014-02-05 20:22:43 -05:00
GameRegistry . registerItem ( FreeRunners , "FrictionBoots" );
2014-02-05 21:37:17 -05:00
GameRegistry . registerItem ( ArmoredJetpack , "ArmoredJetpack" );
2014-03-08 17:47:39 -05:00
GameRegistry . registerItem ( FilterCard , "FilterCard" );
2014-03-15 20:05:26 -04:00
GameRegistry . registerItem ( SeismicReader , "SeismicReader" );
2014-04-06 01:16:09 +01:00
GameRegistry . registerItem ( Substrate , "Substrate" );
GameRegistry . registerItem ( Polyethene , "Polyethene" );
GameRegistry . registerItem ( BioFuel , "BioFuel" );
2014-06-10 14:09:47 +02:00
GameRegistry . registerItem ( GlowPanel , "GlowPanel" );
2012-08-15 16:41:41 -04:00
}
2013-12-01 00:04:20 -05:00
2012-08-15 16:41:41 -04:00
/**
* Adds and registers all blocks.
*/
public void addBlocks ()
{
2013-12-01 00:04:20 -05:00
//Declarations
2014-06-03 11:25:12 +02:00
BasicBlock = new BlockBasic (). setBlockName ( "BasicBlock" );
BasicBlock2 = new BlockBasic (). setBlockName ( "BasicBlock2" );
MachineBlock = new BlockMachine (). setBlockName ( "MachineBlock" );
MachineBlock2 = new BlockMachine (). setBlockName ( "MachineBlock2" );
OreBlock = new BlockOre (). setBlockName ( "OreBlock" );
EnergyCube = new BlockEnergyCube (). setBlockName ( "EnergyCube" );
ObsidianTNT = new BlockObsidianTNT (). setBlockName ( "ObsidianTNT" ). setCreativeTab ( tabMekanism );
BoundingBlock = ( BlockBounding ) new BlockBounding (). setBlockName ( "BoundingBlock" );
GasTank = new BlockGasTank (). setBlockName ( "GasTank" );
CardboardBox = new BlockCardboardBox (). setBlockName ( "CardboardBox" );
BlockHDPE = new BlockPlastic (). setBlockName ( "PlasticBlock" );
BlockSlickHDPE = new BlockPlastic (). setBlockName ( "SlickPlasticBlock" );
BlockGlowHDPE = new BlockPlastic (). setBlockName ( "GlowPlasticBlock" );
BlockReinforcedHDPE = new BlockPlastic (). setBlockName ( "ReinforcedPlasticBlock" );
BlockRoadHDPE = new BlockPlastic (). setBlockName ( "RoadPlasticBlock" );
BlockHDPEFence = new BlockPlasticFence (). setBlockName ( "PlasticFence" );
2014-07-09 22:06:36 -04:00
SaltBlock = new BlockSalt (). setBlockName ( "SaltBlock" );
2014-04-10 03:05:28 +01:00
2013-12-01 00:04:20 -05:00
//Registrations
2014-01-05 02:24:06 -05:00
GameRegistry . registerBlock ( BasicBlock , ItemBlockBasic . class , "BasicBlock" );
2014-01-16 22:49:48 -05:00
GameRegistry . registerBlock ( BasicBlock2 , ItemBlockBasic . class , "BasicBlock2" );
2014-01-05 02:24:06 -05:00
GameRegistry . registerBlock ( MachineBlock , ItemBlockMachine . class , "MachineBlock" );
GameRegistry . registerBlock ( MachineBlock2 , ItemBlockMachine . class , "MachineBlock2" );
GameRegistry . registerBlock ( OreBlock , ItemBlockOre . class , "OreBlock" );
GameRegistry . registerBlock ( EnergyCube , ItemBlockEnergyCube . class , "EnergyCube" );
2012-12-30 16:34:45 -05:00
GameRegistry . registerBlock ( ObsidianTNT , "ObsidianTNT" );
2013-03-11 13:49:01 -04:00
GameRegistry . registerBlock ( BoundingBlock , "BoundingBlock" );
2014-01-05 17:52:00 +00:00
GameRegistry . registerBlock ( GasTank , ItemBlockGasTank . class , "GasTank" );
2014-01-12 21:23:34 -05:00
GameRegistry . registerBlock ( CardboardBox , ItemBlockCardboardBox . class , "CardboardBox" );
2014-04-10 03:05:28 +01:00
GameRegistry . registerBlock ( BlockHDPE , ItemBlockPlastic . class , "PlasticBlock" );
2014-04-15 01:31:13 +01:00
GameRegistry . registerBlock ( BlockSlickHDPE , ItemBlockPlastic . class , "SlickPlasticBlock" );
GameRegistry . registerBlock ( BlockGlowHDPE , ItemBlockPlastic . class , "GlowPlasticBlock" );
GameRegistry . registerBlock ( BlockReinforcedHDPE , ItemBlockPlastic . class , "ReinforcedPlasticBlock" );
2014-04-16 00:08:09 +01:00
GameRegistry . registerBlock ( BlockRoadHDPE , ItemBlockPlastic . class , "RoadPlasticBlock" );
2014-04-10 03:05:28 +01:00
GameRegistry . registerBlock ( BlockHDPEFence , "PlasticFence" );
2014-07-09 22:06:36 -04:00
GameRegistry . registerBlock ( SaltBlock , "SaltBlock" );
2012-08-15 16:41:41 -04:00
}
2013-12-01 00:04:20 -05:00
2012-08-26 09:48:42 -04:00
/**
2013-12-01 00:29:08 -05:00
* Registers specified items with the Ore Dictionary.
2012-08-26 09:48:42 -04:00
*/
2013-12-01 00:29:08 -05:00
public void registerOreDict ()
2012-08-26 09:48:42 -04:00
{
2014-07-09 22:06:36 -04:00
//Add specific items to ore dictionary for recipe usage in other mods.
2014-01-05 02:24:06 -05:00
OreDictionary . registerOre ( "universalCable" , new ItemStack ( PartTransmitter , 8 , 0 ));
2013-12-01 13:09:12 +08:00
OreDictionary . registerOre ( "battery" , EnergyTablet . getUnchargedItem ());
2014-01-17 18:07:29 -05:00
OreDictionary . registerOre ( "pulpWood" , Sawdust );
2014-08-09 13:43:59 -04:00
OreDictionary . registerOre ( "dustWood" , Sawdust );
2014-07-09 22:06:36 -04:00
OreDictionary . registerOre ( "blockSalt" , SaltBlock );
2013-12-01 00:04:20 -05:00
2014-07-09 23:52:01 -04:00
//Alloys!
OreDictionary . registerOre ( "alloyBasic" , new ItemStack ( Items . redstone ));
OreDictionary . registerOre ( "alloyAdvanced" , new ItemStack ( EnrichedAlloy ));
OreDictionary . registerOre ( "alloyElite" , new ItemStack ( ReinforcedAlloy ));
OreDictionary . registerOre ( "alloyUltimate" , new ItemStack ( AtomicAlloy ));
2014-01-21 17:58:00 -05:00
//for RailCraft/IC2.
OreDictionary . registerOre ( "dustObsidian" , new ItemStack ( DirtyDust , 1 , 6 ));
2014-01-17 18:07:29 -05:00
//GregoriousT?
2014-01-13 15:41:23 -05:00
OreDictionary . registerOre ( "itemSalt" , Salt );
OreDictionary . registerOre ( "dustSalt" , Salt );
2012-11-06 20:44:59 -05:00
OreDictionary . registerOre ( "dustIron" , new ItemStack ( Dust , 1 , 0 ));
OreDictionary . registerOre ( "dustGold" , new ItemStack ( Dust , 1 , 1 ));
2013-02-26 20:21:30 -05:00
OreDictionary . registerOre ( "dustOsmium" , new ItemStack ( Dust , 1 , 2 ));
2013-02-21 22:03:54 -05:00
OreDictionary . registerOre ( "dustRefinedObsidian" , new ItemStack ( Dust , 1 , 3 ));
2012-12-19 15:23:55 -05:00
OreDictionary . registerOre ( "dustDiamond" , new ItemStack ( Dust , 1 , 4 ));
2012-12-30 16:34:45 -05:00
OreDictionary . registerOre ( "dustSteel" , new ItemStack ( Dust , 1 , 5 ));
2013-01-12 09:52:41 -05:00
OreDictionary . registerOre ( "dustCopper" , new ItemStack ( Dust , 1 , 6 ));
OreDictionary . registerOre ( "dustTin" , new ItemStack ( Dust , 1 , 7 ));
2013-01-31 19:43:39 -05:00
OreDictionary . registerOre ( "dustSilver" , new ItemStack ( Dust , 1 , 8 ));
2013-12-09 18:30:50 -05:00
OreDictionary . registerOre ( "dustLead" , new ItemStack ( Dust , 1 , 9 ));
2014-01-02 13:00:09 -05:00
OreDictionary . registerOre ( "dustSulfur" , new ItemStack ( Dust , 1 , 10 ));
2013-12-01 00:04:20 -05:00
2013-01-23 15:42:45 -05:00
OreDictionary . registerOre ( "ingotRefinedObsidian" , new ItemStack ( Ingot , 1 , 0 ));
2013-02-26 20:21:30 -05:00
OreDictionary . registerOre ( "ingotOsmium" , new ItemStack ( Ingot , 1 , 1 ));
2012-12-30 16:34:45 -05:00
OreDictionary . registerOre ( "ingotBronze" , new ItemStack ( Ingot , 1 , 2 ));
2013-01-23 15:42:45 -05:00
OreDictionary . registerOre ( "ingotRefinedGlowstone" , new ItemStack ( Ingot , 1 , 3 ));
2012-12-30 16:34:45 -05:00
OreDictionary . registerOre ( "ingotSteel" , new ItemStack ( Ingot , 1 , 4 ));
2013-12-02 07:16:09 -05:00
OreDictionary . registerOre ( "ingotCopper" , new ItemStack ( Ingot , 1 , 5 ));
OreDictionary . registerOre ( "ingotTin" , new ItemStack ( Ingot , 1 , 6 ));
2013-12-01 00:04:20 -05:00
2013-02-26 20:21:30 -05:00
OreDictionary . registerOre ( "blockOsmium" , new ItemStack ( BasicBlock , 1 , 0 ));
2013-01-12 09:52:41 -05:00
OreDictionary . registerOre ( "blockBronze" , new ItemStack ( BasicBlock , 1 , 1 ));
OreDictionary . registerOre ( "blockRefinedObsidian" , new ItemStack ( BasicBlock , 1 , 2 ));
2013-12-02 20:52:44 -05:00
OreDictionary . registerOre ( "blockCharcoal" , new ItemStack ( BasicBlock , 1 , 3 ));
2013-01-12 09:52:41 -05:00
OreDictionary . registerOre ( "blockRefinedGlowstone" , new ItemStack ( BasicBlock , 1 , 4 ));
OreDictionary . registerOre ( "blockSteel" , new ItemStack ( BasicBlock , 1 , 5 ));
2013-12-02 20:52:44 -05:00
OreDictionary . registerOre ( "blockCopper" , new ItemStack ( BasicBlock , 1 , 12 ));
OreDictionary . registerOre ( "blockTin" , new ItemStack ( BasicBlock , 1 , 13 ));
2013-12-01 00:04:20 -05:00
2014-01-21 17:58:00 -05:00
for ( Resource resource : Resource . values ())
{
OreDictionary . registerOre ( "dustDirty" + resource . getName (), new ItemStack ( DirtyDust , 1 , resource . ordinal ()));
OreDictionary . registerOre ( "clump" + resource . getName (), new ItemStack ( Clump , 1 , resource . ordinal ()));
OreDictionary . registerOre ( "shard" + resource . getName (), new ItemStack ( Shard , 1 , resource . ordinal ()));
OreDictionary . registerOre ( "crystal" + resource . getName (), new ItemStack ( Crystal , 1 , resource . ordinal ()));
}
2014-01-21 11:28:43 -05:00
2013-02-26 20:21:30 -05:00
OreDictionary . registerOre ( "oreOsmium" , new ItemStack ( OreBlock , 1 , 0 ));
2013-12-02 07:16:09 -05:00
OreDictionary . registerOre ( "oreCopper" , new ItemStack ( OreBlock , 1 , 1 ));
OreDictionary . registerOre ( "oreTin" , new ItemStack ( OreBlock , 1 , 2 ));
2013-12-03 16:56:03 -05:00
//MC stuff
2014-04-20 21:15:44 +01:00
OreDictionary . registerOre ( "oreCoal" , new ItemStack ( Blocks . coal_ore ));
OreDictionary . registerOre ( "ingotIron" , new ItemStack ( Items . iron_ingot ));
2014-06-22 08:48:16 -04:00
OreDictionary . registerOre ( "ingotGold" , new ItemStack ( Items . gold_ingot ));
2014-04-20 21:15:44 +01:00
OreDictionary . registerOre ( "oreRedstone" , new ItemStack ( Blocks . redstone_ore ));
2014-06-26 01:10:53 +01:00
//OreDictionary.registerOre("oreRedstone", new ItemStack(Blocks.lit_redstone_ore));
2013-12-24 11:55:40 -05:00
2014-07-09 22:06:36 -04:00
if ( controlCircuitOreDict )
2013-02-14 13:26:13 -05:00
{
2014-07-09 22:06:36 -04:00
OreDictionary . registerOre ( "circuitBasic" , new ItemStack ( ControlCircuit , 1 , 0 ));
OreDictionary . registerOre ( "circuitAdvanced" , new ItemStack ( ControlCircuit , 1 , 1 ));
OreDictionary . registerOre ( "circuitElite" , new ItemStack ( ControlCircuit , 1 , 2 ));
OreDictionary . registerOre ( "circuitUltimate" , new ItemStack ( ControlCircuit , 1 , 3 ));
2013-02-14 13:26:13 -05:00
}
2013-12-01 00:04:20 -05:00
2013-02-25 15:02:05 -05:00
OreDictionary . registerOre ( "itemCompressedCarbon" , new ItemStack ( CompressedCarbon ));
OreDictionary . registerOre ( "itemEnrichedAlloy" , new ItemStack ( EnrichedAlloy ));
2014-04-06 01:16:09 +01:00
OreDictionary . registerOre ( "itemBioFuel" , new ItemStack ( BioFuel ));
2013-12-24 11:55:40 -05:00
}
/**
* Integrates the mod with other mods -- registering items and blocks with the Forge Ore Dictionary
* and adding machine recipes with other items' corresponding resources.
*/
public void addIntegratedItems ()
{
2013-12-01 00:04:20 -05:00
if ( hooks . MetallurgyCoreLoaded )
{
try {
String [] setNames = { "base" , "precious" , "nether" , "fantasy" , "ender" , "utility" };
for ( String setName : setNames )
2013-06-01 23:20:15 -04:00
{
2013-12-01 00:04:20 -05:00
for ( IOreInfo oreInfo : MetallurgyAPI . getMetalSet ( setName ). getOreList (). values ())
2013-06-01 23:20:15 -04:00
{
2013-12-01 00:04:20 -05:00
switch ( oreInfo . getType ())
2013-06-07 11:16:47 -04:00
{
2013-12-01 00:04:20 -05:00
case ALLOY :
2013-06-01 23:20:15 -04:00
{
2013-12-01 00:04:20 -05:00
if ( oreInfo . getIngot () != null && oreInfo . getDust () != null )
2013-06-01 23:20:15 -04:00
{
2013-06-07 11:33:12 -04:00
RecipeHandler . addCrusherRecipe ( MekanismUtils . size ( oreInfo . getIngot (), 1 ), MekanismUtils . size ( oreInfo . getDust (), 1 ));
2013-04-28 23:38:46 +03:00
}
2013-12-01 00:04:20 -05:00
2013-04-28 23:38:46 +03:00
break ;
}
2013-12-01 00:04:20 -05:00
case DROP :
2013-06-01 23:20:15 -04:00
{
2013-04-28 23:38:46 +03:00
ItemStack ore = oreInfo . getOre ();
ItemStack drop = oreInfo . getDrop ();
2013-12-01 00:04:20 -05:00
if ( drop != null && ore != null )
{
2013-06-07 11:33:12 -04:00
RecipeHandler . addEnrichmentChamberRecipe ( MekanismUtils . size ( ore , 1 ), MekanismUtils . size ( drop , 12 ));
2013-04-28 23:38:46 +03:00
}
2013-12-01 00:04:20 -05:00
2013-04-28 23:38:46 +03:00
break ;
}
2013-12-01 00:04:20 -05:00
default :
2013-06-01 23:20:15 -04:00
{
2013-04-28 23:38:46 +03:00
ItemStack ore = oreInfo . getOre ();
ItemStack dust = oreInfo . getDust ();
ItemStack ingot = oreInfo . getIngot ();
2013-12-01 00:04:20 -05:00
if ( ore != null && dust != null )
2013-06-01 23:20:15 -04:00
{
2013-06-07 11:33:12 -04:00
RecipeHandler . addEnrichmentChamberRecipe ( MekanismUtils . size ( ore , 1 ), MekanismUtils . size ( dust , 2 ));
RecipeHandler . addCombinerRecipe ( MekanismUtils . size ( dust , 8 ), MekanismUtils . size ( ore , 1 ));
2013-04-28 23:38:46 +03:00
}
2013-12-01 00:04:20 -05:00
if ( ingot != null && dust != null )
2013-06-01 23:20:15 -04:00
{
2013-06-07 11:33:12 -04:00
RecipeHandler . addCrusherRecipe ( MekanismUtils . size ( ingot , 1 ), MekanismUtils . size ( dust , 1 ));
2013-04-28 23:38:46 +03:00
}
2013-12-01 00:04:20 -05:00
2013-04-28 23:38:46 +03:00
break ;
}
}
}
}
2013-12-01 00:04:20 -05:00
} catch ( Exception e ) {}
2013-04-28 23:38:46 +03:00
}
2012-08-26 09:48:42 -04:00
}
2013-12-01 00:04:20 -05:00
2012-08-15 16:41:41 -04:00
/**
* Adds and registers all entities and tile entities.
*/
public void addEntities ()
{
2013-12-01 00:04:20 -05:00
//Registrations
2013-05-19 18:43:01 -04:00
EntityRegistry . registerModEntity ( EntityObsidianTNT . class , "ObsidianTNT" , 0 , this , 40 , 5 , true );
2013-06-19 14:11:29 -04:00
EntityRegistry . registerModEntity ( EntityRobit . class , "Robit" , 1 , this , 40 , 2 , true );
2013-12-20 01:05:41 -05:00
EntityRegistry . registerModEntity ( EntityBalloon . class , "Balloon" , 2 , this , 40 , 1 , true );
2013-12-01 00:04:20 -05:00
//Tile entities
2013-03-11 13:49:01 -04:00
GameRegistry . registerTileEntity ( TileEntityBoundingBlock . class , "BoundingBlock" );
2013-11-21 14:35:33 -05:00
GameRegistry . registerTileEntity ( TileEntityAdvancedBoundingBlock . class , "AdvancedBoundingBlock" );
2014-01-12 21:23:34 -05:00
GameRegistry . registerTileEntity ( TileEntityCardboardBox . class , "CardboardBox" );
2014-04-10 03:05:28 +01:00
GameRegistry . registerTileEntity ( TileEntitySalinationValve . class , "SalinationValve" );
GameRegistry . registerTileEntity ( TileEntitySalinationTank . class , "SalinationTank" );
2013-12-01 00:04:20 -05:00
//Load tile entities that have special renderers.
2012-11-21 10:14:35 -05:00
proxy . registerSpecialTileEntities ();
2012-08-15 16:41:41 -04:00
}
2013-12-01 00:04:20 -05:00
2013-07-20 12:10:14 -04:00
@EventHandler
2013-02-14 13:26:13 -05:00
public void serverStarting ( FMLServerStartingEvent event )
2012-10-03 15:12:17 -04:00
{
2013-12-01 00:04:20 -05:00
if ( voiceServerEnabled )
2013-10-26 23:55:11 -04:00
{
voiceManager . start ();
}
2013-12-01 00:04:20 -05:00
2014-01-01 16:21:55 -05:00
//Load cached furnace recipes
TileEntityEnergizedSmelter . furnaceRecipes . clear ();
for ( Object obj : FurnaceRecipes . smelting (). getSmeltingList (). entrySet ())
{
2014-05-31 22:42:02 +02:00
Map . Entry < ItemStack , ItemStack > entry = ( Map . Entry < ItemStack , ItemStack > ) obj ;
TileEntityEnergizedSmelter . furnaceRecipes . put ( entry . getKey (), entry . getValue ());
2014-01-01 16:21:55 -05:00
}
2013-02-14 13:26:13 -05:00
event . registerServerCommand ( new CommandMekanism ());
2012-10-03 15:12:17 -04:00
}
2013-12-01 00:04:20 -05:00
2013-07-20 12:10:14 -04:00
@EventHandler
2012-12-30 16:34:45 -05:00
public void serverStopping ( FMLServerStoppingEvent event )
{
2013-12-01 00:04:20 -05:00
if ( voiceServerEnabled )
2013-10-26 23:55:11 -04:00
{
voiceManager . stop ();
}
2013-12-01 00:04:20 -05:00
2013-12-24 13:25:31 -05:00
//Clear all cache data
2013-01-20 20:15:59 -05:00
teleporters . clear ();
2013-04-28 15:23:08 -04:00
dynamicInventories . clear ();
2013-11-11 17:23:14 -05:00
ic2Registered . clear ();
2013-12-04 15:43:03 -05:00
jetpackOn . clear ();
2013-12-06 15:26:44 -05:00
gasmaskOn . clear ();
2014-03-15 20:05:26 -04:00
activeVibrators . clear ();
2014-07-09 22:06:36 -04:00
worldTickHandler . resetRegenChunks ();
2013-12-06 15:26:44 -05:00
2013-11-25 13:33:42 -05:00
TransporterManager . flowingStacks . clear ();
2012-12-30 16:34:45 -05:00
}
2013-12-01 00:04:20 -05:00
2013-07-20 12:10:14 -04:00
@EventHandler
2012-10-18 10:26:34 -04:00
public void preInit ( FMLPreInitializationEvent event )
{
2013-03-18 12:23:57 -04:00
File config = event . getSuggestedConfigurationFile ();
2013-12-01 00:04:20 -05:00
//Set the mod's configuration
2013-03-18 12:23:57 -04:00
configuration = new Configuration ( config );
2013-12-01 00:04:20 -05:00
if ( config . getAbsolutePath (). contains ( "voltz" ))
2013-03-18 12:23:57 -04:00
{
2014-04-20 21:15:44 +01:00
logger . info ( "Detected Voltz in root directory - hello, fellow user!" );
2013-03-18 12:23:57 -04:00
}
2013-12-01 00:04:20 -05:00
else if ( config . getAbsolutePath (). contains ( "tekkit" ))
2013-05-19 18:43:01 -04:00
{
2014-04-20 21:15:44 +01:00
logger . info ( "Detected Tekkit in root directory - hello, fellow user!" );
2013-05-19 18:43:01 -04:00
}
2013-12-01 00:04:20 -05:00
2013-11-28 21:43:53 -05:00
GasRegistry . register ( new Gas ( "hydrogen" )). registerFluid ();
GasRegistry . register ( new Gas ( "oxygen" )). registerFluid ();
2014-01-01 19:55:18 +00:00
GasRegistry . register ( new Gas ( "water" )). registerFluid ();
2014-01-03 00:24:22 +00:00
GasRegistry . register ( new Gas ( "chlorine" )). registerFluid ();
2013-12-31 22:21:28 +00:00
GasRegistry . register ( new Gas ( "sulfurDioxideGas" )). registerFluid ();
GasRegistry . register ( new Gas ( "sulfurTrioxideGas" )). registerFluid ();
2013-12-12 20:35:37 -05:00
GasRegistry . register ( new Gas ( "sulfuricAcid" )). registerFluid ();
2014-01-05 03:47:41 +00:00
GasRegistry . register ( new Gas ( "hydrogenChloride" )). registerFluid ();
2014-01-16 19:00:53 -05:00
GasRegistry . register ( new Gas ( "liquidOsmium" ). setVisible ( false ));
GasRegistry . register ( new Gas ( "liquidStone" ). setVisible ( false ));
2014-04-06 01:16:09 +01:00
GasRegistry . register ( new Gas ( "ethene" ). registerFluid ());
2014-07-09 23:52:01 -04:00
GasRegistry . register ( new Gas ( "sodium" ). registerFluid ());
GasRegistry . register ( new Gas ( "brine" ). registerFluid ());
2014-01-21 17:58:00 -05:00
for ( Resource resource : Resource . values ())
{
String name = resource . getName ();
2014-01-28 15:51:30 -05:00
OreGas clean = ( OreGas ) GasRegistry . register ( new OreGas ( "clean" + name , "oregas." + name . toLowerCase ()). setVisible ( false ));
GasRegistry . register ( new OreGas ( name . toLowerCase (), "oregas." + name . toLowerCase ()). setCleanGas ( clean ). setVisible ( false ));
2014-01-21 17:58:00 -05:00
}
2013-12-01 00:04:20 -05:00
2013-11-24 12:12:42 -06:00
Mekanism . proxy . preInit ();
2013-12-01 00:04:20 -05:00
//Register infuses
2014-01-17 20:38:05 -05:00
InfuseRegistry . registerInfuseType ( new InfuseType ( "CARBON" , MekanismUtils . getResource ( ResourceType . INFUSE , "Infusions.png" ), 0 , 0 ). setUnlocalizedName ( "infuse.carbon" ));
InfuseRegistry . registerInfuseType ( new InfuseType ( "TIN" , MekanismUtils . getResource ( ResourceType . INFUSE , "Infusions.png" ), 4 , 0 ). setUnlocalizedName ( "infuse.tin" ));
InfuseRegistry . registerInfuseType ( new InfuseType ( "DIAMOND" , MekanismUtils . getResource ( ResourceType . INFUSE , "Infusions.png" ), 8 , 0 ). setUnlocalizedName ( "infuse.diamond" ));
InfuseRegistry . registerInfuseType ( new InfuseType ( "REDSTONE" , MekanismUtils . getResource ( ResourceType . INFUSE , "Infusions.png" ), 16 , 0 ). setUnlocalizedName ( "infuse.redstone" ));
2014-01-18 11:41:41 -05:00
InfuseRegistry . registerInfuseType ( new InfuseType ( "FUNGI" , MekanismUtils . getResource ( ResourceType . INFUSE , "Infusions.png" ), 20 , 0 ). setUnlocalizedName ( "infuse.fungi" ));
2014-04-07 00:07:59 +01:00
InfuseRegistry . registerInfuseType ( new InfuseType ( "BIO" , MekanismUtils . getResource ( ResourceType . INFUSE , "Infusions.png" ), 12 , 0 ). setUnlocalizedName ( "infuse.bio" ));
2014-07-09 23:52:01 -04:00
InfuseRegistry . registerInfuseType ( new InfuseType ( "OBSIDIAN" , MekanismUtils . getResource ( ResourceType . INFUSE , "Infusions.png" ), 24 , 0 ). setUnlocalizedName ( "infuse.obsidian" ));
2012-10-18 10:26:34 -04:00
}
2013-12-01 00:04:20 -05:00
2013-07-20 12:10:14 -04:00
@EventHandler
2013-12-01 00:04:20 -05:00
public void init ( FMLInitializationEvent event )
2012-08-15 16:41:41 -04:00
{
2014-07-09 22:06:36 -04:00
//Register the mod's world generators
GameRegistry . registerWorldGenerator ( genHandler , 1 );
2013-12-01 00:04:20 -05:00
//Register the mod's GUI handler
2014-04-20 21:15:44 +01:00
NetworkRegistry . INSTANCE . registerGuiHandler ( this , new CoreGuiHandler ());
2013-12-01 00:04:20 -05:00
2014-06-03 19:54:45 +02:00
//Register player tracker
FMLCommonHandler . instance (). bus (). register ( new CommonPlayerTracker ());
2014-06-10 12:49:49 +02:00
FMLCommonHandler . instance (). bus (). register ( new CommonPlayerTickHandler ());
2014-06-03 19:54:45 +02:00
2013-12-01 00:04:20 -05:00
//Initialization notification
2014-06-03 08:46:03 +02:00
logger . info ( "Version " + versionNumber + " initializing..." );
2013-12-01 00:04:20 -05:00
//Get data from server.
2012-09-08 12:48:24 -04:00
new ThreadGetData ();
2013-12-01 00:04:20 -05:00
//Register to receive subscribed events
2014-07-07 21:17:15 +01:00
FMLCommonHandler . instance (). bus (). register ( this );
2012-11-08 21:22:18 -05:00
MinecraftForge . EVENT_BUS . register ( this );
2013-12-12 20:23:03 +00:00
2013-12-01 00:04:20 -05:00
//Set up VoiceServerManager
if ( voiceServerEnabled )
2013-10-26 23:55:11 -04:00
{
voiceManager = new VoiceServerManager ();
}
2013-12-01 00:04:20 -05:00
//Register with TransmitterNetworkRegistry
2013-08-18 16:51:47 -04:00
TransmitterNetworkRegistry . initiate ();
2013-12-01 00:04:20 -05:00
//Load configuration
2013-05-23 13:30:12 -04:00
proxy . loadConfiguration ();
2012-09-08 12:48:24 -04:00
2013-12-01 00:04:20 -05:00
//Load this module
2012-08-15 16:41:41 -04:00
addItems ();
addBlocks ();
addRecipes ();
addEntities ();
2013-12-01 00:04:20 -05:00
2013-12-01 13:58:12 +08:00
registerOreDict ();
2013-12-22 01:42:18 +00:00
new MultipartMekanism ();
2013-12-01 00:04:20 -05:00
//Packet registrations
2014-06-11 11:57:49 +02:00
packetHandler . initialize ();
2014-04-20 21:15:44 +01:00
2013-12-01 00:04:20 -05:00
//Load proxy
2013-05-19 18:43:01 -04:00
proxy . registerRenderInformation ();
proxy . loadUtilities ();
2013-12-01 00:04:20 -05:00
//Completion notification
2014-04-20 21:15:44 +01:00
logger . info ( "Loading complete." );
2013-12-01 00:04:20 -05:00
//Success message
2014-04-20 21:15:44 +01:00
logger . info ( "Mod loaded." );
2013-12-01 13:23:27 +08:00
}
@EventHandler
public void postInit ( FMLPostInitializationEvent event )
{
proxy . loadSoundHandler ();
2014-06-26 01:10:53 +01:00
hooks = new MekanismHooks ();
2013-12-01 00:29:08 -05:00
hooks . hook ();
2014-02-01 19:02:51 -05:00
MinecraftForge . EVENT_BUS . post ( new BoxBlacklistEvent ());
2014-01-18 00:50:56 -05:00
2013-12-01 00:29:08 -05:00
addIntegratedItems ();
2013-12-24 11:55:40 -05:00
OreDictManager . init ();
2014-04-20 21:15:44 +01:00
logger . info ( "Hooking complete." );
2012-08-15 16:41:41 -04:00
}
2013-12-01 00:04:20 -05:00
2014-04-20 04:34:19 +01:00
@SubscribeEvent
2013-08-04 01:48:13 +01:00
public void onEnergyTransferred ( EnergyTransferEvent event )
{
2013-12-01 00:04:20 -05:00
try {
2014-08-07 21:33:17 -04:00
packetHandler . sendToReceivers ( new TransmitterUpdateMessage ( PacketType . ENERGY , Coord4D . get (( TileEntity ) event . energyNetwork . transmitters . iterator (). next ()), event . power ), event . energyNetwork . getPacketRange ());
2013-12-01 00:04:20 -05:00
} catch ( Exception e ) {}
2013-08-04 01:48:13 +01:00
}
2013-12-01 00:04:20 -05:00
2014-04-20 04:34:19 +01:00
@SubscribeEvent
2013-04-23 15:36:43 -04:00
public void onGasTransferred ( GasTransferEvent event )
{
2013-12-01 00:04:20 -05:00
try {
2014-08-07 21:33:17 -04:00
packetHandler . sendToReceivers ( new TransmitterUpdateMessage ( PacketType . GAS , Coord4D . get (( TileEntity ) event . gasNetwork . transmitters . iterator (). next ()), event . transferType , event . didTransfer ), event . gasNetwork . getPacketRange ());
2013-12-01 00:04:20 -05:00
} catch ( Exception e ) {}
2013-04-23 15:36:43 -04:00
}
2013-12-01 00:04:20 -05:00
2014-04-20 04:34:19 +01:00
@SubscribeEvent
2013-07-20 12:10:14 -04:00
public void onLiquidTransferred ( FluidTransferEvent event )
2013-04-28 15:23:08 -04:00
{
2013-12-01 00:04:20 -05:00
try {
2014-08-07 21:33:17 -04:00
packetHandler . sendToReceivers ( new TransmitterUpdateMessage ( PacketType . FLUID , Coord4D . get (( TileEntity ) event . fluidNetwork . transmitters . iterator (). next ()), event . fluidType , event . didTransfer ), event . fluidNetwork . getPacketRange ());
2013-12-01 00:04:20 -05:00
} catch ( Exception e ) {}
2013-04-28 15:23:08 -04:00
}
2013-12-01 00:04:20 -05:00
2014-04-20 04:34:19 +01:00
@SubscribeEvent
2013-11-30 00:28:02 -05:00
public void onNetworkClientRequest ( NetworkClientRequest event )
{
2013-12-01 00:04:20 -05:00
try {
2014-06-11 11:57:49 +02:00
packetHandler . sendToServer ( new DataRequestMessage ( Coord4D . get ( event . tileEntity )));
2013-12-01 00:04:20 -05:00
} catch ( Exception e ) {}
2013-11-30 00:28:02 -05:00
}
2013-12-01 00:04:20 -05:00
2014-04-20 04:34:19 +01:00
@SubscribeEvent
2013-11-30 23:19:24 -05:00
public void onClientTickUpdate ( ClientTickUpdate event )
{
2013-12-01 00:04:20 -05:00
try {
if ( event . operation == 0 )
2013-11-30 23:19:24 -05:00
{
ClientTickHandler . tickingSet . remove ( event . network );
}
2013-12-01 00:04:20 -05:00
else {
2013-11-30 23:19:24 -05:00
ClientTickHandler . tickingSet . add ( event . network );
}
2013-12-01 00:04:20 -05:00
} catch ( Exception e ) {}
2013-11-30 23:19:24 -05:00
}
2013-12-01 00:04:20 -05:00
2014-04-20 04:34:19 +01:00
@SubscribeEvent
2014-02-01 19:02:51 -05:00
public void onBlacklistUpdate ( BoxBlacklistEvent event )
{
2014-04-20 21:15:44 +01:00
MekanismAPI . addBoxBlacklist ( CardboardBox , OreDictionary . WILDCARD_VALUE );
MekanismAPI . addBoxBlacklist ( BoundingBlock , OreDictionary . WILDCARD_VALUE );
MekanismAPI . addBoxBlacklist ( Blocks . bedrock , 0 );
MekanismAPI . addBoxBlacklist ( Blocks . portal , OreDictionary . WILDCARD_VALUE );
MekanismAPI . addBoxBlacklist ( Blocks . end_portal , OreDictionary . WILDCARD_VALUE );
MekanismAPI . addBoxBlacklist ( Blocks . end_portal_frame , OreDictionary . WILDCARD_VALUE );
MekanismAPI . addBoxBlacklist ( Blocks . bed , OreDictionary . WILDCARD_VALUE );
MekanismAPI . addBoxBlacklist ( Blocks . wooden_door , OreDictionary . WILDCARD_VALUE );
MekanismAPI . addBoxBlacklist ( Blocks . iron_door , OreDictionary . WILDCARD_VALUE );
MekanismAPI . addBoxBlacklist ( MultipartProxy . block (), OreDictionary . WILDCARD_VALUE );
2014-02-01 19:02:51 -05:00
BoxBlacklistParser . load ();
}
2014-04-20 04:34:19 +01:00
@SubscribeEvent
2013-11-30 12:29:49 -05:00
public synchronized void onChunkLoad ( ChunkEvent . Load event )
2013-11-03 16:54:33 -05:00
{
2013-12-02 11:20:25 -05:00
if ( event . getChunk () != null && ! event . world . isRemote )
{
Map copy = ( Map )(( HashMap ) event . getChunk (). chunkTileEntityMap ). clone ();
2013-12-01 00:04:20 -05:00
2013-12-02 11:20:25 -05:00
for ( Iterator iter = copy . values (). iterator (); iter . hasNext ();)
{
Object obj = iter . next ();
if ( obj instanceof TileEntity )
{
TileEntity tileEntity = ( TileEntity ) obj ;
2014-06-26 18:16:33 +01:00
if ( tileEntity instanceof TileEntityElectricBlock && MekanismUtils . useIC2 ())
2013-12-02 11:20:25 -05:00
{
(( TileEntityElectricBlock ) tileEntity ). register ();
}
}
}
}
2013-11-03 16:54:33 -05:00
}
2014-07-09 22:06:36 -04:00
2014-07-21 16:45:08 -04:00
@SubscribeEvent
public void chunkSave ( ChunkDataEvent . Save event )
{
if ( ! event . world . isRemote )
{
NBTTagCompound nbtTags = event . getData ();
nbtTags . setInteger ( "MekanismWorldGen" , baseWorldGenVersion );
nbtTags . setInteger ( "MekanismUserWorldGen" , userWorldGenVersion );
}
}
2014-07-09 22:06:36 -04:00
@SubscribeEvent
public synchronized void onChunkDataLoad ( ChunkDataEvent . Load event )
{
if ( ! event . world . isRemote )
{
if ( enableWorldRegeneration )
{
NBTTagCompound loadData = event . getData ();
if ( loadData . getInteger ( "MekanismWorldGen" ) == baseWorldGenVersion && loadData . getInteger ( "MekanismUserWorldGen" ) == userWorldGenVersion )
{
return ;
}
ChunkCoordIntPair coordPair = event . getChunk (). getChunkCoordIntPair ();
worldTickHandler . addRegenChunk ( event . world . provider . dimensionId , coordPair );
}
}
}
2014-06-27 03:22:46 +01:00
@SubscribeEvent
public void onConfigChanged ( ConfigChangedEvent . OnConfigChangedEvent event )
{
2014-07-07 21:17:15 +01:00
if ( event . modID . equals ( "Mekanism" ))
2014-06-27 03:22:46 +01:00
{
proxy . loadConfiguration ();
proxy . onConfigSync ();
}
}
2013-09-07 23:21:25 +08:00
}