aboutsummaryrefslogtreecommitdiff
path: root/main/java/gregtech/GT_Mod.java
diff options
context:
space:
mode:
Diffstat (limited to 'main/java/gregtech/GT_Mod.java')
-rw-r--r--main/java/gregtech/GT_Mod.java2112
1 files changed, 1056 insertions, 1056 deletions
diff --git a/main/java/gregtech/GT_Mod.java b/main/java/gregtech/GT_Mod.java
index a89bc0a2ac..09473be84e 100644
--- a/main/java/gregtech/GT_Mod.java
+++ b/main/java/gregtech/GT_Mod.java
@@ -1,311 +1,311 @@
-/* 1: */ package gregtech;
-/* 3: */ import cpw.mods.fml.common.FMLLog;
-/* 4: */ import cpw.mods.fml.common.LoadController;
-/* 5: */ import cpw.mods.fml.common.Loader;
-/* 6: */ import cpw.mods.fml.common.Mod;
-/* 7: */ import cpw.mods.fml.common.Mod.EventHandler;
-/* 8: */ import cpw.mods.fml.common.Mod.Instance;
-/* 9: */ import cpw.mods.fml.common.ModContainer;
-/* 10: */ import cpw.mods.fml.common.SidedProxy;
-/* 11: */ import cpw.mods.fml.common.event.FMLInitializationEvent;
-/* 12: */ import cpw.mods.fml.common.event.FMLModIdMappingEvent;
-/* 13: */ import cpw.mods.fml.common.event.FMLPostInitializationEvent;
-/* 14: */ import cpw.mods.fml.common.event.FMLPreInitializationEvent;
-/* 15: */ import cpw.mods.fml.common.event.FMLServerStartedEvent;
-/* 16: */ import cpw.mods.fml.common.event.FMLServerStartingEvent;
-/* 17: */ import cpw.mods.fml.common.event.FMLServerStoppingEvent;
-/* 18: */ import cpw.mods.fml.common.registry.EntityRegistry;
+package gregtech;
+import cpw.mods.fml.common.FMLLog;
+import cpw.mods.fml.common.LoadController;
+import cpw.mods.fml.common.Loader;
+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.ModContainer;
+import cpw.mods.fml.common.SidedProxy;
+import cpw.mods.fml.common.event.FMLInitializationEvent;
+import cpw.mods.fml.common.event.FMLModIdMappingEvent;
+import cpw.mods.fml.common.event.FMLPostInitializationEvent;
+import cpw.mods.fml.common.event.FMLPreInitializationEvent;
+import cpw.mods.fml.common.event.FMLServerStartedEvent;
+import cpw.mods.fml.common.event.FMLServerStartingEvent;
+import cpw.mods.fml.common.event.FMLServerStoppingEvent;
+import cpw.mods.fml.common.registry.EntityRegistry;
import forestry.factory.gadgets.MachineCentrifuge;
-/* 20: */ import forestry.factory.gadgets.MachineCentrifuge.RecipeManager;
+import forestry.factory.gadgets.MachineCentrifuge.RecipeManager;
import forestry.factory.gadgets.MachineSqueezer;
-/* 23: */ import gregtech.api.GregTech_API;
-/* 24: */ import gregtech.api.enchants.Enchantment_EnderDamage;
-/* 25: */ import gregtech.api.enchants.Enchantment_Radioactivity;
-/* 26: */ import gregtech.api.enums.ConfigCategories.Recipes;
+import gregtech.api.GregTech_API;
+import gregtech.api.enchants.Enchantment_EnderDamage;
+import gregtech.api.enchants.Enchantment_Radioactivity;
+import gregtech.api.enums.ConfigCategories.Recipes;
import gregtech.api.enums.*;
-/* 33: */ import gregtech.api.enums.Textures.BlockIcons;
-/* 34: */ import gregtech.api.enums.Textures.ItemIcons;
-/* 35: */ import gregtech.api.interfaces.internal.IGT_Mod;
-/* 36: */ import gregtech.api.objects.GT_ItemStack;
-/* 37: */ import gregtech.api.objects.ItemData;
-/* 38: */ import gregtech.api.objects.MaterialStack;
-/* 39: */ import gregtech.api.util.GT_Config;
-/* 40: */ import gregtech.api.util.GT_ItsNotMyFaultException;
-/* 41: */ import gregtech.api.util.GT_LanguageManager;
-/* 42: */ import gregtech.api.util.GT_Log;
-/* 43: */ import gregtech.api.util.GT_Log.LogBuffer;
-/* 44: */ import gregtech.api.util.GT_ModHandler;
-/* 45: */ import gregtech.api.util.GT_ModHandler.RecipeBits;
-/* 46: */ import gregtech.api.util.GT_OreDictUnificator;
-/* 47: */ import gregtech.api.util.GT_Recipe;
-/* 48: */ import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
-/* 49: */ import gregtech.api.util.GT_RecipeRegistrator;
+import gregtech.api.enums.Textures.BlockIcons;
+import gregtech.api.enums.Textures.ItemIcons;
+import gregtech.api.interfaces.internal.IGT_Mod;
+import gregtech.api.objects.GT_ItemStack;
+import gregtech.api.objects.ItemData;
+import gregtech.api.objects.MaterialStack;
+import gregtech.api.util.GT_Config;
+import gregtech.api.util.GT_ItsNotMyFaultException;
+import gregtech.api.util.GT_LanguageManager;
+import gregtech.api.util.GT_Log;
+import gregtech.api.util.GT_Log.LogBuffer;
+import gregtech.api.util.GT_ModHandler;
+import gregtech.api.util.GT_ModHandler.RecipeBits;
+import gregtech.api.util.GT_OreDictUnificator;
+import gregtech.api.util.GT_Recipe;
+import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
+import gregtech.api.util.GT_RecipeRegistrator;
import gregtech.api.util.GT_SpawnEventHandler;
-/* 50: */ import gregtech.api.util.GT_Utility;
-/* 51: */ import gregtech.common.GT_DummyWorld;
-/* 52: */ import gregtech.common.GT_Network;
-/* 53: */ import gregtech.common.GT_Proxy;
-/* 54: */ import gregtech.common.GT_RecipeAdder;
-/* 55: */ import gregtech.common.entities.GT_Entity_Arrow;
-/* 56: */ import gregtech.common.entities.GT_Entity_Arrow_Potion;
-/* 57: */ import gregtech.common.items.behaviors.Behaviour_DataOrb;
-/* 58: */ import gregtech.loaders.load.GT_CoverBehaviorLoader;
-/* 59: */ import gregtech.loaders.load.GT_FuelLoader;
-/* 60: */ import gregtech.loaders.load.GT_ItemIterator;
-/* 61: */ import gregtech.loaders.load.GT_SonictronLoader;
+import gregtech.api.util.GT_Utility;
+import gregtech.common.GT_DummyWorld;
+import gregtech.common.GT_Network;
+import gregtech.common.GT_Proxy;
+import gregtech.common.GT_RecipeAdder;
+import gregtech.common.entities.GT_Entity_Arrow;
+import gregtech.common.entities.GT_Entity_Arrow_Potion;
+import gregtech.common.items.behaviors.Behaviour_DataOrb;
+import gregtech.loaders.load.GT_CoverBehaviorLoader;
+import gregtech.loaders.load.GT_FuelLoader;
+import gregtech.loaders.load.GT_ItemIterator;
+import gregtech.loaders.load.GT_SonictronLoader;
import gregtech.loaders.misc.GT_Achievements;
-/* 62: */ import gregtech.loaders.misc.GT_CoverLoader;
-/* 63: */ import gregtech.loaders.postload.GT_BlockResistanceLoader;
-/* 64: */ import gregtech.loaders.postload.GT_BookAndLootLoader;
-/* 65: */ import gregtech.loaders.postload.GT_CraftingRecipeLoader;
-/* 66: */ import gregtech.loaders.postload.GT_CropLoader;
-/* 67: */ import gregtech.loaders.postload.GT_ItemMaxStacksizeLoader;
-/* 68: */ import gregtech.loaders.postload.GT_MachineRecipeLoader;
-/* 69: */ import gregtech.loaders.postload.GT_MinableRegistrator;
-/* 70: */ import gregtech.loaders.postload.GT_RecyclerBlacklistLoader;
-/* 71: */ import gregtech.loaders.postload.GT_ScrapboxDropLoader;
-/* 72: */ import gregtech.loaders.postload.GT_Worldgenloader;
-/* 73: */ import gregtech.loaders.preload.GT_Loader_CircuitBehaviors;
-/* 74: */ import gregtech.loaders.preload.GT_Loader_ItemData;
-/* 75: */ import gregtech.loaders.preload.GT_Loader_Item_Block_And_Fluid;
-/* 76: */ import gregtech.loaders.preload.GT_Loader_MetaTileEntities;
-/* 77: */ import gregtech.loaders.preload.GT_Loader_OreDictionary;
-/* 78: */ import gregtech.loaders.preload.GT_Loader_OreProcessing;
-/* 79: */ import ic2.api.recipe.ICannerBottleRecipeManager;
-/* 80: */ import ic2.api.recipe.IMachineRecipeManager;
-/* 81: */ import ic2.api.recipe.IRecipeInput;
-/* 82: */ import ic2.api.recipe.RecipeOutput;
+import gregtech.loaders.misc.GT_CoverLoader;
+import gregtech.loaders.postload.GT_BlockResistanceLoader;
+import gregtech.loaders.postload.GT_BookAndLootLoader;
+import gregtech.loaders.postload.GT_CraftingRecipeLoader;
+import gregtech.loaders.postload.GT_CropLoader;
+import gregtech.loaders.postload.GT_ItemMaxStacksizeLoader;
+import gregtech.loaders.postload.GT_MachineRecipeLoader;
+import gregtech.loaders.postload.GT_MinableRegistrator;
+import gregtech.loaders.postload.GT_RecyclerBlacklistLoader;
+import gregtech.loaders.postload.GT_ScrapboxDropLoader;
+import gregtech.loaders.postload.GT_Worldgenloader;
+import gregtech.loaders.preload.GT_Loader_CircuitBehaviors;
+import gregtech.loaders.preload.GT_Loader_ItemData;
+import gregtech.loaders.preload.GT_Loader_Item_Block_And_Fluid;
+import gregtech.loaders.preload.GT_Loader_MetaTileEntities;
+import gregtech.loaders.preload.GT_Loader_OreDictionary;
+import gregtech.loaders.preload.GT_Loader_OreProcessing;
+import ic2.api.recipe.ICannerBottleRecipeManager;
+import ic2.api.recipe.IMachineRecipeManager;
+import ic2.api.recipe.IRecipeInput;
+import ic2.api.recipe.RecipeOutput;
-/* 84: */ import java.io.File;
-/* 85: */ import java.io.FileNotFoundException;
-/* 86: */ import java.io.PrintStream;
-/* 87: */ import java.lang.reflect.Field;
-/* 88: */ import java.util.ArrayList;
-/* 89: */ import java.util.Arrays;
-/* 90: */ import java.util.Calendar;
-/* 91: */ import java.util.Collection;
-/* 92: */ import java.util.HashMap;
-/* 93: */ import java.util.HashSet;
-/* 94: */ import java.util.Iterator;
-/* 95: */ import java.util.List;
-/* 96: */ import java.util.Map;
-/* 97: */ import java.util.Map.Entry;
-/* 98: */ import java.util.Random;
-/* 99: */ import java.util.Set;
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.PrintStream;
+import java.lang.reflect.Field;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Calendar;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Random;
+import java.util.Set;
-/* 100: */ import net.minecraft.block.Block;
-/* 101: */ import net.minecraft.entity.player.EntityPlayer;
-/* 102: */ import net.minecraft.init.Blocks;
-/* 103: */ import net.minecraft.init.Items;
-/* 104: */ import net.minecraft.item.Item;
-/* 105: */ import net.minecraft.item.ItemStack;
-/* 106: */ import net.minecraft.item.crafting.CraftingManager;
-/* 107: */ import net.minecraft.item.crafting.FurnaceRecipes;
-/* 108: */ import net.minecraft.item.crafting.IRecipe;
+import net.minecraft.block.Block;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.init.Blocks;
+import net.minecraft.init.Items;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.item.crafting.CraftingManager;
+import net.minecraft.item.crafting.FurnaceRecipes;
+import net.minecraft.item.crafting.IRecipe;
import net.minecraft.stats.Achievement;
-/* 109: */ import net.minecraft.util.WeightedRandomChestContent;
-/* 110: */ import net.minecraft.world.World;
-/* 111: */ import net.minecraft.world.biome.BiomeGenBase;
-/* 112: */ import net.minecraftforge.common.ChestGenHooks;
+import net.minecraft.util.WeightedRandomChestContent;
+import net.minecraft.world.World;
+import net.minecraft.world.biome.BiomeGenBase;
+import net.minecraftforge.common.ChestGenHooks;
import net.minecraftforge.common.ForgeVersion;
-/* 113: */ import net.minecraftforge.common.config.Configuration;
-/* 114: */ import net.minecraftforge.common.config.Property;
-/* 115: */ import net.minecraftforge.fluids.FluidContainerRegistry;
-/* 116: */ import net.minecraftforge.fluids.FluidContainerRegistry.FluidContainerData;
-/* 117: */ import net.minecraftforge.fluids.FluidRegistry;
-/* 118: */ import net.minecraftforge.fluids.FluidStack;
-/* 119: */ import net.minecraftforge.oredict.OreDictionary;
-/* 120: */
-/* 121: */ @Mod(modid="gregtech", name="GregTech", version="MC1710", useMetadata=false, dependencies="required-after:IC2; after:Forestry; after:PFAAGeologica; after:Thaumcraft; after:Railcraft; after:appliedenergistics2; after:ThermalExpansion; after:TwilightForest; after:harvestcraft; after:magicalcrops; after:BuildCraft|Transport; after:BuildCraft|Silicon; after:BuildCraft|Factory; after:BuildCraft|Energy; after:BuildCraft|Core; after:BuildCraft|Builders; after:GalacticraftCore; after:GalacticraftMars; after:GalacticraftPlanets; after:ThermalExpansion|Transport; after:ThermalExpansion|Energy; after:ThermalExpansion|Factory; after:RedPowerCore; after:RedPowerBase; after:RedPowerMachine; after:RedPowerCompat; after:RedPowerWiring; after:RedPowerLogic; after:RedPowerLighting; after:RedPowerWorld; after:RedPowerControl;")
-/* 122: */ public class GT_Mod
-/* 123: */ implements IGT_Mod
-/* 124: */ {
-/* 125: */ @Mod.Instance("gregtech")
-/* 126: */ public static GT_Mod instance;
-/* 127: */ @SidedProxy(modId="gregtech", clientSide="gregtech.common.GT_Client", serverSide="gregtech.common.GT_Server")
-/* 128: */ public static GT_Proxy gregtechproxy;
-/* 129: */ public static final int VERSION = 508;
-/* 130: */ public static final int REQUIRED_IC2 = 624;
-/* 131: 72 */ public static int MAX_IC2 = 2147483647;
+import net.minecraftforge.common.config.Configuration;
+import net.minecraftforge.common.config.Property;
+import net.minecraftforge.fluids.FluidContainerRegistry;
+import net.minecraftforge.fluids.FluidContainerRegistry.FluidContainerData;
+import net.minecraftforge.fluids.FluidRegistry;
+import net.minecraftforge.fluids.FluidStack;
+import net.minecraftforge.oredict.OreDictionary;
+
+@Mod(modid="gregtech", name="GregTech", version="MC1710", useMetadata=false, dependencies="required-after:IC2; after:Forestry; after:PFAAGeologica; after:Thaumcraft; after:Railcraft; after:appliedenergistics2; after:ThermalExpansion; after:TwilightForest; after:harvestcraft; after:magicalcrops; after:BuildCraft|Transport; after:BuildCraft|Silicon; after:BuildCraft|Factory; after:BuildCraft|Energy; after:BuildCraft|Core; after:BuildCraft|Builders; after:GalacticraftCore; after:GalacticraftMars; after:GalacticraftPlanets; after:ThermalExpansion|Transport; after:ThermalExpansion|Energy; after:ThermalExpansion|Factory; after:RedPowerCore; after:RedPowerBase; after:RedPowerMachine; after:RedPowerCompat; after:RedPowerWiring; after:RedPowerLogic; after:RedPowerLighting; after:RedPowerWorld; after:RedPowerControl;")
+public class GT_Mod
+ implements IGT_Mod
+{
+ @Mod.Instance("gregtech")
+ public static GT_Mod instance;
+ @SidedProxy(modId="gregtech", clientSide="gregtech.common.GT_Client", serverSide="gregtech.common.GT_Server")
+ public static GT_Proxy gregtechproxy;
+ public static final int VERSION = 508;
+ public static final int REQUIRED_IC2 = 624;
+ public static int MAX_IC2 = 2147483647;
public static GT_Achievements achievements;
-/* 132: */
-/* 133: */ static
-/* 134: */ {
-/* 135: 75 */ if ((508 != GregTech_API.VERSION) || (508 != GT_ModHandler.VERSION) || (508 != GT_OreDictUnificator.VERSION) || (508 != GT_Recipe.VERSION) || (508 != GT_Utility.VERSION) || (508 != GT_RecipeRegistrator.VERSION) || (508 != Element.VERSION) || (508 != Materials.VERSION) || (508 != OrePrefixes.VERSION)) {
-/* 136: 84 */ throw new GT_ItsNotMyFaultException("One of your Mods included GregTech-API Files inside it's download, mention this to the Mod Author, who does this bad thing, and tell him/her to use reflection. I have added a Version check, to prevent Authors from breaking my Mod that way.");
-/* 137: */ }
-/* 138: */ }
-/* 139: */
-/* 140: */ public GT_Mod()
-/* 141: */ {
-/* 142: */ try
-/* 143: */ {
-/* 144: 89 */ Class.forName("ic2.core.IC2").getField("enableOreDictCircuit").set(null, Boolean.valueOf(true));
-/* 145: */ }
-/* 146: */ catch (Throwable e) {}
-/* 147: */ try
-/* 148: */ {
-/* 149: 90 */ Class.forName("ic2.core.IC2").getField("enableCraftingBucket").set(null, Boolean.valueOf(false));
-/* 150: */ }
-/* 151: */ catch (Throwable e) {}
-/* 152: */ try
-/* 153: */ {
-/* 154: 91 */ Class.forName("ic2.core.IC2").getField("enableEnergyInStorageBlockItems").set(null, Boolean.valueOf(false));
-/* 155: */ }
-/* 156: */ catch (Throwable e) {}
-/* 157: 92 */ GT_Values.GT = this;
-/* 158: 93 */ GT_Values.DW = new GT_DummyWorld();
-/* 159: 94 */ GT_Values.NW = new GT_Network();
-/* 160: 95 */ GregTech_API.sRecipeAdder = GT_Values.RA = new GT_RecipeAdder();
-/* 161: */
-/* 162: 97 */ Textures.BlockIcons.VOID.name();
-/* 163: 98 */ Textures.ItemIcons.VOID.name();
-/* 164: */ }
-/* 165: */
-/* 166: */ @Mod.EventHandler
-/* 167: */ public void onPreLoad(FMLPreInitializationEvent aEvent)
-/* 168: */ {
-/* 169:103 */ if (GregTech_API.sPreloadStarted) {
-/* 170:103 */ return;
-/* 171: */ }
-/* 172:105 */ for (Runnable tRunnable : GregTech_API.sBeforeGTPreload) {
-/* 173: */ try
-/* 174: */ {
-/* 175:107 */ tRunnable.run();
-/* 176: */ }
-/* 177: */ catch (Throwable e)
-/* 178: */ {
-/* 179:109 */ e.printStackTrace(GT_Log.err);
-/* 180: */ }
-/* 181: */ }
-/* 182:113 */ File tFile = new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "GregTech.cfg");
-/* 183:114 */ Configuration tMainConfig = new Configuration(tFile);
-/* 184:115 */ tMainConfig.load();
-/* 185:116 */ tFile = new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "IDs.cfg");
-/* 186:117 */ GT_Config.sConfigFileIDs = new Configuration(tFile);
-/* 187:118 */ GT_Config.sConfigFileIDs.load();
-/* 188:119 */ GT_Config.sConfigFileIDs.save();
-/* 189:120 */ GregTech_API.sRecipeFile = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "Recipes.cfg")));
-/* 190:121 */ GregTech_API.sMachineFile = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "MachineStats.cfg")));
-/* 191:122 */ GregTech_API.sWorldgenFile = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "WorldGeneration.cfg")));
-/* 192:123 */ GregTech_API.sMaterialProperties = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "MaterialProperties.cfg")));
-/* 193:124 */ GregTech_API.sUnification = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "Unification.cfg")));
-/* 194:125 */ GregTech_API.sSpecialFile = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "Other.cfg")));
-/* 195:126 */ GregTech_API.sOPStuff = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "OverpoweredStuff.cfg")));
-/* 196: */
-/* 197:128 */ GregTech_API.sClientDataFile = new GT_Config(new Configuration(new File(aEvent.getModConfigurationDirectory().getParentFile(), "GregTech.cfg")));
-/* 198: */
-/* 199:130 */ GT_Log.mLogFile = new File(aEvent.getModConfigurationDirectory().getParentFile(), "logs/GregTech.log");
-/* 200:131 */ if (!GT_Log.mLogFile.exists()) {
-/* 201: */ try
-/* 202: */ {
-/* 203:131 */ GT_Log.mLogFile.createNewFile();
-/* 204: */ }
-/* 205: */ catch (Throwable e) {}
-/* 206: */ }
-/* 207: */ try
-/* 208: */ {
-/* 209:132 */ GT_Log.out = GT_Log.err = new PrintStream(GT_Log.mLogFile);
-/* 210: */ }
-/* 211: */ catch (FileNotFoundException e) {}
-/* 212:134 */ GT_Log.mOreDictLogFile = new File(aEvent.getModConfigurationDirectory().getParentFile(), "logs/OreDict.log");
-/* 213:135 */ if (!GT_Log.mOreDictLogFile.exists()) {
-/* 214: */ try
-/* 215: */ {
-/* 216:135 */ GT_Log.mOreDictLogFile.createNewFile();
-/* 217: */ }
-/* 218: */ catch (Throwable e) {}
-/* 219: */ }
-/* 220:137 */ if (tMainConfig.get("general", "LoggingPlayerActivity", true).getBoolean(true))
-/* 221: */ {
-/* 222:138 */ GT_Log.mPlayerActivityLogFile = new File(aEvent.getModConfigurationDirectory().getParentFile(), "logs/PlayerActivity.log");
-/* 223:139 */ if (!GT_Log.mPlayerActivityLogFile.exists()) {
-/* 224: */ try
-/* 225: */ {
-/* 226:139 */ GT_Log.mPlayerActivityLogFile.createNewFile();
-/* 227: */ }
-/* 228: */ catch (Throwable e) {}
-/* 229: */ }
-/* 230: */ try
-/* 231: */ {
-/* 232:140 */ GT_Log.pal = new PrintStream(GT_Log.mPlayerActivityLogFile);
-/* 233: */ }
-/* 234: */ catch (Throwable e) {}
-/* 235: */ }
-/* 236: */ try
-/* 237: */ {
-/* 238:144 */ List<String> tList = ((GT_Log.LogBuffer)GT_Log.ore).mBufferedOreDictLog;
-/* 239:145 */ GT_Log.ore = new PrintStream(GT_Log.mOreDictLogFile);
-/* 240:146 */ GT_Log.ore.println("**********************************************************************");
-/* 241:147 */ GT_Log.ore.println("* This is the complete Log of the GregTech OreDictionary Handler *");
-/* 242:148 */ GT_Log.ore.println("* Everything in the OreDict goes through it sometimes causing Errors *");
-/* 243:149 */ GT_Log.ore.println("* These Errors are getting logged aswell as properly registered Ores *");
-/* 244:150 */ GT_Log.ore.println("* If you see something fishy going on in this Log, such as improper *");
-/* 245:151 */ GT_Log.ore.println("* Items being registered, then mention it to the corresponding Mod *");
-/* 246:152 */ GT_Log.ore.println("* In case it mentions GregTech itself improperly registering Stuff *");
-/* 247:153 */ GT_Log.ore.println("* then please contact me about that immediatly *");
-/* 248:154 */ GT_Log.ore.println("* *");
-/* 249:155 */ GT_Log.ore.println("* In case of something being 'ignored properly', that one isnt a Bug *");
-/* 250:156 */ GT_Log.ore.println("**********************************************************************");
-/* 251: */ String tString;
-/* 252:157 */ for (Iterator i$ = tList.iterator(); i$.hasNext(); GT_Log.ore.println(tString)) {
-/* 253:157 */ tString = (String)i$.next();
-/* 254: */ }
-/* 255: */ }
-/* 256: */ catch (Throwable e) {}
-/* 257:160 */ gregtechproxy.onPreLoad();
-/* 258: */
-/* 259:162 */ GT_Log.out.println("GT_Mod: Setting Configs");
-/* 260:163 */ GT_Values.D1 = tMainConfig.get("general", "Debug", false).getBoolean(false);
-/* 261:164 */ GT_Values.D2 = tMainConfig.get("general", "Debug2", false).getBoolean(false);
-/* 262: */
-/* 263:166 */ GregTech_API.TICKS_FOR_LAG_AVERAGING = tMainConfig.get("general", "TicksForLagAveragingWithScanner", 25).getInt(25);
-/* 264:167 */ GregTech_API.MILLISECOND_THRESHOLD_UNTIL_LAG_WARNING = tMainConfig.get("general", "MillisecondsPassedInGTTileEntityUntilLagWarning", 100).getInt(100);
-/* 265:169 */ if (tMainConfig.get("general", "disable_STDOUT", false).getBoolean(false)) {
-/* 266:169 */ System.out.close();
-/* 267: */ }
-/* 268:170 */ if (tMainConfig.get("general", "disable_STDERR", false).getBoolean(false)) {
-/* 269:170 */ System.err.close();
-/* 270: */ }
-/* 271:172 */ GregTech_API.sMachineExplosions = tMainConfig.get("machines", "machines_explosion_damage", true).getBoolean(false);
-/* 272:173 */ GregTech_API.sMachineFlammable = tMainConfig.get("machines", "machines_flammable", true).getBoolean(false);
-/* 273:174 */ GregTech_API.sMachineNonWrenchExplosions = tMainConfig.get("machines", "explosions_on_nonwrenching", true).getBoolean(false);
-/* 274:175 */ GregTech_API.sMachineWireFire = tMainConfig.get("machines", "wirefire_on_explosion", true).getBoolean(false);
-/* 275:176 */ GregTech_API.sMachineFireExplosions = tMainConfig.get("machines", "fire_causes_explosions", true).getBoolean(false);
-/* 276:177 */ GregTech_API.sMachineRainExplosions = tMainConfig.get("machines", "rain_causes_explosions", true).getBoolean(false);
-/* 277:178 */ GregTech_API.sMachineThunderExplosions = tMainConfig.get("machines", "lightning_causes_explosions", true).getBoolean(false);
-/* 278:179 */ GregTech_API.sConstantEnergy = tMainConfig.get("machines", "constant_need_of_energy", true).getBoolean(false);
-/* 279:180 */ GregTech_API.sColoredGUI = tMainConfig.get("machines", "colored_guis_when_painted", true).getBoolean(false);
-/* 280: */
-/* 281:182 */ GregTech_API.sTimber = tMainConfig.get("general", "timber_axe", false).getBoolean(false);
-/* 282:183 */ GregTech_API.sDrinksAlwaysDrinkable = tMainConfig.get("general", "drinks_always_drinkable", false).getBoolean(false);
-/* 283:184 */ GregTech_API.sDoShowAllItemsInCreative = tMainConfig.get("general", "show_all_metaitems_in_creative_and_NEI", false).getBoolean(false);
-/* 284:185 */ GregTech_API.sMultiThreadedSounds = tMainConfig.get("general", "sound_multi_threading", false).getBoolean(false);
-/* 285:187 */ for (Dyes tDye : Dyes.values()) {
-/* 286:187 */ if ((tDye != Dyes._NULL) && (tDye.mIndex < 0))
-/* 287: */ {
-/* 288:188 */ tDye.mRGBa[0] = ((short)Math.min(255, Math.max(0, GregTech_API.sClientDataFile.get("ColorModulation." + tDye, "R", tDye.mRGBa[0]))));
-/* 289:189 */ tDye.mRGBa[1] = ((short)Math.min(255, Math.max(0, GregTech_API.sClientDataFile.get("ColorModulation." + tDye, "G", tDye.mRGBa[1]))));
-/* 290:190 */ tDye.mRGBa[2] = ((short)Math.min(255, Math.max(0, GregTech_API.sClientDataFile.get("ColorModulation." + tDye, "B", tDye.mRGBa[2]))));
-/* 291: */ }
-/* 292: */ }
-/* 293:193 */ gregtechproxy.mMaxEqualEntitiesAtOneSpot = tMainConfig.get("general", "MaxEqualEntitiesAtOneSpot", 3).getInt(3);
-/* 294:194 */ gregtechproxy.mSkeletonsShootGTArrows = tMainConfig.get("general", "SkeletonsShootGTArrows", 16).getInt(16);
-/* 295:195 */ gregtechproxy.mFlintChance = tMainConfig.get("general", "FlintAndSteelChance", 30).getInt(30);
-/* 296:196 */ gregtechproxy.mItemDespawnTime = tMainConfig.get("general", "ItemDespawnTime", 6000).getInt(6000);
-/* 297:197 */ gregtechproxy.mDisableVanillaOres = tMainConfig.get("general", "DisableVanillaOres", true).getBoolean(true);
-/* 298:198 */ gregtechproxy.mNerfDustCrafting = tMainConfig.get("general", "NerfDustCrafting", true).getBoolean(true);
-/* 299:199 */ gregtechproxy.mIncreaseDungeonLoot = tMainConfig.get("general", "IncreaseDungeonLoot", true).getBoolean(true);
-/* 300:200 */ gregtechproxy.mAxeWhenAdventure = tMainConfig.get("general", "AdventureModeStartingAxe", true).getBoolean(true);
-/* 301:201 */ gregtechproxy.mHardcoreCables = tMainConfig.get("general", "HardCoreCableLoss", false).getBoolean(false);
-/* 302:202 */ gregtechproxy.mSurvivalIntoAdventure = tMainConfig.get("general", "forceAdventureMode", false).getBoolean(false);
-/* 303:203 */ gregtechproxy.mHungerEffect = tMainConfig.get("general", "AFK_Hunger", false).getBoolean(false);
-/* 304:204 */ gregtechproxy.mHardRock = tMainConfig.get("general", "harderstone", false).getBoolean(false);
-/* 305:205 */ gregtechproxy.mInventoryUnification = tMainConfig.get("general", "InventoryUnification", true).getBoolean(true);
-/* 306:206 */ gregtechproxy.mCraftingUnification = tMainConfig.get("general", "CraftingUnification", true).getBoolean(true);
-/* 307:207 */ gregtechproxy.mNerfedWoodPlank = tMainConfig.get("general", "WoodNeedsSawForCrafting", true).getBoolean(true);
-/* 308:208 */ gregtechproxy.mNerfedVanillaTools = tMainConfig.get("general", "smallerVanillaToolDurability", true).getBoolean(true);
-/* 309:209 */ gregtechproxy.mSortToTheEnd = tMainConfig.get("general", "EnsureToBeLoadedLast", true).getBoolean(true);
+
+ static
+ {
+ if ((508 != GregTech_API.VERSION) || (508 != GT_ModHandler.VERSION) || (508 != GT_OreDictUnificator.VERSION) || (508 != GT_Recipe.VERSION) || (508 != GT_Utility.VERSION) || (508 != GT_RecipeRegistrator.VERSION) || (508 != Element.VERSION) || (508 != Materials.VERSION) || (508 != OrePrefixes.VERSION)) {
+ throw new GT_ItsNotMyFaultException("One of your Mods included GregTech-API Files inside it's download, mention this to the Mod Author, who does this bad thing, and tell him/her to use reflection. I have added a Version check, to prevent Authors from breaking my Mod that way.");
+ }
+ }
+
+ public GT_Mod()
+ {
+ try
+ {
+ Class.forName("ic2.core.IC2").getField("enableOreDictCircuit").set(null, Boolean.valueOf(true));
+ }
+ catch (Throwable e) {}
+ try
+ {
+ Class.forName("ic2.core.IC2").getField("enableCraftingBucket").set(null, Boolean.valueOf(false));
+ }
+ catch (Throwable e) {}
+ try
+ {
+ Class.forName("ic2.core.IC2").getField("enableEnergyInStorageBlockItems").set(null, Boolean.valueOf(false));
+ }
+ catch (Throwable e) {}
+ GT_Values.GT = this;
+ GT_Values.DW = new GT_DummyWorld();
+ GT_Values.NW = new GT_Network();
+ GregTech_API.sRecipeAdder = GT_Values.RA = new GT_RecipeAdder();
+
+ Textures.BlockIcons.VOID.name();
+ Textures.ItemIcons.VOID.name();
+ }
+
+ @Mod.EventHandler
+ public void onPreLoad(FMLPreInitializationEvent aEvent)
+ {
+ if (GregTech_API.sPreloadStarted) {
+ return;
+ }
+ for (Runnable tRunnable : GregTech_API.sBeforeGTPreload) {
+ try
+ {
+ tRunnable.run();
+ }
+ catch (Throwable e)
+ {
+ e.printStackTrace(GT_Log.err);
+ }
+ }
+ File tFile = new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "GregTech.cfg");
+ Configuration tMainConfig = new Configuration(tFile);
+ tMainConfig.load();
+ tFile = new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "IDs.cfg");
+ GT_Config.sConfigFileIDs = new Configuration(tFile);
+ GT_Config.sConfigFileIDs.load();
+ GT_Config.sConfigFileIDs.save();
+ GregTech_API.sRecipeFile = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "Recipes.cfg")));
+ GregTech_API.sMachineFile = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "MachineStats.cfg")));
+ GregTech_API.sWorldgenFile = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "WorldGeneration.cfg")));
+ GregTech_API.sMaterialProperties = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "MaterialProperties.cfg")));
+ GregTech_API.sUnification = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "Unification.cfg")));
+ GregTech_API.sSpecialFile = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "Other.cfg")));
+ GregTech_API.sOPStuff = new GT_Config(new Configuration(new File(new File(aEvent.getModConfigurationDirectory(), "GregTech"), "OverpoweredStuff.cfg")));
+
+ GregTech_API.sClientDataFile = new GT_Config(new Configuration(new File(aEvent.getModConfigurationDirectory().getParentFile(), "GregTech.cfg")));
+
+ GT_Log.mLogFile = new File(aEvent.getModConfigurationDirectory().getParentFile(), "logs/GregTech.log");
+ if (!GT_Log.mLogFile.exists()) {
+ try
+ {
+ GT_Log.mLogFile.createNewFile();
+ }
+ catch (Throwable e) {}
+ }
+ try
+ {
+ GT_Log.out = GT_Log.err = new PrintStream(GT_Log.mLogFile);
+ }
+ catch (FileNotFoundException e) {}
+ GT_Log.mOreDictLogFile = new File(aEvent.getModConfigurationDirectory().getParentFile(), "logs/OreDict.log");
+ if (!GT_Log.mOreDictLogFile.exists()) {
+ try
+ {
+ GT_Log.mOreDictLogFile.createNewFile();
+ }
+ catch (Throwable e) {}
+ }
+ if (tMainConfig.get("general", "LoggingPlayerActivity", true).getBoolean(true))
+ {
+ GT_Log.mPlayerActivityLogFile = new File(aEvent.getModConfigurationDirectory().getParentFile(), "logs/PlayerActivity.log");
+ if (!GT_Log.mPlayerActivityLogFile.exists()) {
+ try
+ {
+ GT_Log.mPlayerActivityLogFile.createNewFile();
+ }
+ catch (Throwable e) {}
+ }
+ try
+ {
+ GT_Log.pal = new PrintStream(GT_Log.mPlayerActivityLogFile);
+ }
+ catch (Throwable e) {}
+ }
+ try
+ {
+ List<String> tList = ((GT_Log.LogBuffer)GT_Log.ore).mBufferedOreDictLog;
+ GT_Log.ore = new PrintStream(GT_Log.mOreDictLogFile);
+ GT_Log.ore.println("**********************************************************************");
+ GT_Log.ore.println("* This is the complete Log of the GregTech OreDictionary Handler *");
+ GT_Log.ore.println("* Everything in the OreDict goes through it sometimes causing Errors *");
+ GT_Log.ore.println("* These Errors are getting logged aswell as properly registered Ores *");
+ GT_Log.ore.println("* If you see something fishy going on in this Log, such as improper *");
+ GT_Log.ore.println("* Items being registered, then mention it to the corresponding Mod *");
+ GT_Log.ore.println("* In case it mentions GregTech itself improperly registering Stuff *");
+ GT_Log.ore.println("* then please contact me about that immediatly *");
+ GT_Log.ore.println("* *");
+ GT_Log.ore.println("* In case of something being 'ignored properly', that one isnt a Bug *");
+ GT_Log.ore.println("**********************************************************************");
+ String tString;
+ for (Iterator i$ = tList.iterator(); i$.hasNext(); GT_Log.ore.println(tString)) {
+ tString = (String)i$.next();
+ }
+ }
+ catch (Throwable e) {}
+ gregtechproxy.onPreLoad();
+
+ GT_Log.out.println("GT_Mod: Setting Configs");
+ GT_Values.D1 = tMainConfig.get("general", "Debug", false).getBoolean(false);
+ GT_Values.D2 = tMainConfig.get("general", "Debug2", false).getBoolean(false);
+
+ GregTech_API.TICKS_FOR_LAG_AVERAGING = tMainConfig.get("general", "TicksForLagAveragingWithScanner", 25).getInt(25);
+ GregTech_API.MILLISECOND_THRESHOLD_UNTIL_LAG_WARNING = tMainConfig.get("general", "MillisecondsPassedInGTTileEntityUntilLagWarning", 100).getInt(100);
+ if (tMainConfig.get("general", "disable_STDOUT", false).getBoolean(false)) {
+ System.out.close();
+ }
+ if (tMainConfig.get("general", "disable_STDERR", false).getBoolean(false)) {
+ System.err.close();
+ }
+ GregTech_API.sMachineExplosions = tMainConfig.get("machines", "machines_explosion_damage", true).getBoolean(false);
+ GregTech_API.sMachineFlammable = tMainConfig.get("machines", "machines_flammable", true).getBoolean(false);
+ GregTech_API.sMachineNonWrenchExplosions = tMainConfig.get("machines", "explosions_on_nonwrenching", true).getBoolean(false);
+ GregTech_API.sMachineWireFire = tMainConfig.get("machines", "wirefire_on_explosion", true).getBoolean(false);
+ GregTech_API.sMachineFireExplosions = tMainConfig.get("machines", "fire_causes_explosions", true).getBoolean(false);
+ GregTech_API.sMachineRainExplosions = tMainConfig.get("machines", "rain_causes_explosions", true).getBoolean(false);
+ GregTech_API.sMachineThunderExplosions = tMainConfig.get("machines", "lightning_causes_explosions", true).getBoolean(false);
+ GregTech_API.sConstantEnergy = tMainConfig.get("machines", "constant_need_of_energy", true).getBoolean(false);
+ GregTech_API.sColoredGUI = tMainConfig.get("machines", "colored_guis_when_painted", true).getBoolean(false);
+
+ GregTech_API.sTimber = tMainConfig.get("general", "timber_axe", false).getBoolean(false);
+ GregTech_API.sDrinksAlwaysDrinkable = tMainConfig.get("general", "drinks_always_drinkable", false).getBoolean(false);
+ GregTech_API.sDoShowAllItemsInCreative = tMainConfig.get("general", "show_all_metaitems_in_creative_and_NEI", false).getBoolean(false);
+ GregTech_API.sMultiThreadedSounds = tMainConfig.get("general", "sound_multi_threading", false).getBoolean(false);
+ for (Dyes tDye : Dyes.values()) {
+ if ((tDye != Dyes._NULL) && (tDye.mIndex < 0))
+ {
+ tDye.mRGBa[0] = ((short)Math.min(255, Math.max(0, GregTech_API.sClientDataFile.get("ColorModulation." + tDye, "R", tDye.mRGBa[0]))));
+ tDye.mRGBa[1] = ((short)Math.min(255, Math.max(0, GregTech_API.sClientDataFile.get("ColorModulation." + tDye, "G", tDye.mRGBa[1]))));
+ tDye.mRGBa[2] = ((short)Math.min(255, Math.max(0, GregTech_API.sClientDataFile.get("ColorModulation." + tDye, "B", tDye.mRGBa[2]))));
+ }
+ }
+ gregtechproxy.mMaxEqualEntitiesAtOneSpot = tMainConfig.get("general", "MaxEqualEntitiesAtOneSpot", 3).getInt(3);
+ gregtechproxy.mSkeletonsShootGTArrows = tMainConfig.get("general", "SkeletonsShootGTArrows", 16).getInt(16);
+ gregtechproxy.mFlintChance = tMainConfig.get("general", "FlintAndSteelChance", 30).getInt(30);
+ gregtechproxy.mItemDespawnTime = tMainConfig.get("general", "ItemDespawnTime", 6000).getInt(6000);
+ gregtechproxy.mDisableVanillaOres = tMainConfig.get("general", "DisableVanillaOres", true).getBoolean(true);
+ gregtechproxy.mNerfDustCrafting = tMainConfig.get("general", "NerfDustCrafting", true).getBoolean(true);
+ gregtechproxy.mIncreaseDungeonLoot = tMainConfig.get("general", "IncreaseDungeonLoot", true).getBoolean(true);
+ gregtechproxy.mAxeWhenAdventure = tMainConfig.get("general", "AdventureModeStartingAxe", true).getBoolean(true);
+ gregtechproxy.mHardcoreCables = tMainConfig.get("general", "HardCoreCableLoss", false).getBoolean(false);
+ gregtechproxy.mSurvivalIntoAdventure = tMainConfig.get("general", "forceAdventureMode", false).getBoolean(false);
+ gregtechproxy.mHungerEffect = tMainConfig.get("general", "AFK_Hunger", false).getBoolean(false);
+ gregtechproxy.mHardRock = tMainConfig.get("general", "harderstone", false).getBoolean(false);
+ gregtechproxy.mInventoryUnification = tMainConfig.get("general", "InventoryUnification", true).getBoolean(true);
+ gregtechproxy.mCraftingUnification = tMainConfig.get("general", "CraftingUnification", true).getBoolean(true);
+ gregtechproxy.mNerfedWoodPlank = tMainConfig.get("general", "WoodNeedsSawForCrafting", true).getBoolean(true);
+ gregtechproxy.mNerfedVanillaTools = tMainConfig.get("general", "smallerVanillaToolDurability", true).getBoolean(true);
+ gregtechproxy.mSortToTheEnd = tMainConfig.get("general", "EnsureToBeLoadedLast", true).getBoolean(true);
gregtechproxy.mDisableIC2Cables = tMainConfig.get("general", "DisableIC2Cables", false).getBoolean(false);
gregtechproxy.mAchievements = tMainConfig.get("general", "EnableAchievements", true).getBoolean(true);
@@ -317,655 +317,655 @@
GregTech_API.mRFExplosions = GregTech_API.sOPStuff.get(ConfigCategories.general, "RFExplosions", true);
GregTech_API.meIOLoaded = Loader.isModLoaded("EnderIO");
-/* 310:211 */ if (tMainConfig.get("general", "hardermobspawners", true).getBoolean(true)) {
-/* 311:211 */ Blocks.mob_spawner.setHardness(500.0F).setResistance(6000000.0F);
-/* 312: */ }
-/* 313:213 */ gregtechproxy.mOnline = tMainConfig.get("general", "online", true).getBoolean(false);
-/* 314: */
-/* 315:215 */ gregtechproxy.mUpgradeCount = Math.min(64, Math.max(1, tMainConfig.get("features", "UpgradeStacksize", 4).getInt()));
-/* 316:217 */ for (OrePrefixes tPrefix : OrePrefixes.values()) {
-/* 317:218 */ if (tPrefix.mIsUsedForOreProcessing) {
-/* 318:219 */ tPrefix.mDefaultStackSize = ((byte)Math.min(64, Math.max(1, tMainConfig.get("features", "MaxOreStackSize", 64).getInt())));
-/* 319:220 */ } else if (tPrefix == OrePrefixes.plank) {
-/* 320:221 */ tPrefix.mDefaultStackSize = ((byte)Math.min(64, Math.max(16, tMainConfig.get("features", "MaxPlankStackSize", 64).getInt())));
-/* 321:222 */ } else if ((tPrefix == OrePrefixes.wood) || (tPrefix == OrePrefixes.treeLeaves) || (tPrefix == OrePrefixes.treeSapling) || (tPrefix == OrePrefixes.log)) {
-/* 322:223 */ tPrefix.mDefaultStackSize = ((byte)Math.min(64, Math.max(16, tMainConfig.get("features", "MaxLogStackSize", 64).getInt())));
-/* 323:224 */ } else if (tPrefix.mIsUsedForBlocks) {
-/* 324:225 */ tPrefix.mDefaultStackSize = ((byte)Math.min(64, Math.max(16, tMainConfig.get("features", "MaxOtherBlockStackSize", 64).getInt())));
-/* 325: */ }
-/* 326: */ }
-/* 327:229 */ //GT_Config.troll = (Calendar.getInstance().get(2) + 1 == 4) && (Calendar.getInstance().get(5) >= 1) && (Calendar.getInstance().get(5) <= 2);
-/* 328: */
-/* 329:231 */ Materials.init(GregTech_API.sMaterialProperties);
-/* 330: */
-/* 331:233 */ GT_Log.out.println("GT_Mod: Saving Main Config");
-/* 332:234 */ tMainConfig.save();
-/* 333: */
-/* 334:236 */ GT_Log.out.println("GT_Mod: Generating Lang-File");
-/* 335:237 */ GT_LanguageManager.sEnglishFile = new Configuration(new File(aEvent.getModConfigurationDirectory().getParentFile(), "GregTech.lang"));
-/* 336:238 */ GT_LanguageManager.sEnglishFile.load();
-/* 337: */
-/* 338:240 */ GT_Log.out.println("GT_Mod: Removing all original Scrapbox Drops.");
-/* 339: */ try
-/* 340: */ {
-/* 341:242 */ GT_Utility.getField("ic2.core.item.ItemScrapbox$Drop", "topChance", true, true).set(null, Integer.valueOf(0));
-/* 342:243 */ ((List)GT_Utility.getFieldContent(GT_Utility.getFieldContent("ic2.api.recipe.Recipes", "scrapboxDrops", true, true), "drops", true, true)).clear();
-/* 343: */ }
-/* 344: */ catch (Throwable e)
-/* 345: */ {
-/* 346:245 */ if (GT_Values.D1) {
-/* 347:245 */ e.printStackTrace(GT_Log.err);
-/* 348: */ }
-/* 349: */ }
-/* 350:248 */ GT_Log.out.println("GT_Mod: Adding Scrap with a Weight of 200.0F to the Scrapbox Drops.");
-/* 351:249 */ GT_ModHandler.addScrapboxDrop(200.0F, GT_ModHandler.getIC2Item("scrap", 1L));
-/* 352: */
-/* 353:251 */ EntityRegistry.registerModEntity(GT_Entity_Arrow.class, "GT_Entity_Arrow", 1, GT_Values.GT, 160, 1, true);
-/* 354:252 */ EntityRegistry.registerModEntity(GT_Entity_Arrow_Potion.class, "GT_Entity_Arrow_Potion", 2, GT_Values.GT, 160, 1, true);
-/* 355: */
-/* 356:254 */ new Enchantment_EnderDamage();
-/* 357:255 */ new Enchantment_Radioactivity();
-/* 358: */
-/* 359:257 */ new GT_Loader_OreProcessing().run();
-/* 360:258 */ new GT_Loader_OreDictionary().run();
-/* 361:259 */ new GT_Loader_ItemData().run();
-/* 362:260 */ new GT_Loader_Item_Block_And_Fluid().run();
-/* 363:261 */ new GT_Loader_MetaTileEntities().run();
-/* 364: */
-/* 365:263 */ new GT_Loader_CircuitBehaviors().run();
-/* 366:264 */ new GT_CoverBehaviorLoader().run();
-/* 367:265 */ new GT_SonictronLoader().run();
+ if (tMainConfig.get("general", "hardermobspawners", true).getBoolean(true)) {
+ Blocks.mob_spawner.setHardness(500.0F).setResistance(6000000.0F);
+ }
+ gregtechproxy.mOnline = tMainConfig.get("general", "online", true).getBoolean(false);
+
+ gregtechproxy.mUpgradeCount = Math.min(64, Math.max(1, tMainConfig.get("features", "UpgradeStacksize", 4).getInt()));
+ for (OrePrefixes tPrefix : OrePrefixes.values()) {
+ if (tPrefix.mIsUsedForOreProcessing) {
+ tPrefix.mDefaultStackSize = ((byte)Math.min(64, Math.max(1, tMainConfig.get("features", "MaxOreStackSize", 64).getInt())));
+ } else if (tPrefix == OrePrefixes.plank) {
+ tPrefix.mDefaultStackSize = ((byte)Math.min(64, Math.max(16, tMainConfig.get("features", "MaxPlankStackSize", 64).getInt())));
+ } else if ((tPrefix == OrePrefixes.wood) || (tPrefix == OrePrefixes.treeLeaves) || (tPrefix == OrePrefixes.treeSapling) || (tPrefix == OrePrefixes.log)) {
+ tPrefix.mDefaultStackSize = ((byte)Math.min(64, Math.max(16, tMainConfig.get("features", "MaxLogStackSize", 64).getInt())));
+ } else if (tPrefix.mIsUsedForBlocks) {
+ tPrefix.mDefaultStackSize = ((byte)Math.min(64, Math.max(16, tMainConfig.get("features", "MaxOtherBlockStackSize", 64).getInt())));
+ }
+ }
+ //GT_Config.troll = (Calendar.getInstance().get(2) + 1 == 4) && (Calendar.getInstance().get(5) >= 1) && (Calendar.getInstance().get(5) <= 2);
+
+ Materials.init(GregTech_API.sMaterialProperties);
+
+ GT_Log.out.println("GT_Mod: Saving Main Config");
+ tMainConfig.save();
+
+ GT_Log.out.println("GT_Mod: Generating Lang-File");
+ GT_LanguageManager.sEnglishFile = new Configuration(new File(aEvent.getModConfigurationDirectory().getParentFile(), "GregTech.lang"));
+ GT_LanguageManager.sEnglishFile.load();
+
+ GT_Log.out.println("GT_Mod: Removing all original Scrapbox Drops.");
+ try
+ {
+ GT_Utility.getField("ic2.core.item.ItemScrapbox$Drop", "topChance", true, true).set(null, Integer.valueOf(0));
+ ((List)GT_Utility.getFieldContent(GT_Utility.getFieldContent("ic2.api.recipe.Recipes", "scrapboxDrops", true, true), "drops", true, true)).clear();
+ }
+ catch (Throwable e)
+ {
+ if (GT_Values.D1) {
+ e.printStackTrace(GT_Log.err);
+ }
+ }
+ GT_Log.out.println("GT_Mod: Adding Scrap with a Weight of 200.0F to the Scrapbox Drops.");
+ GT_ModHandler.addScrapboxDrop(200.0F, GT_ModHandler.getIC2Item("scrap", 1L));
+
+ EntityRegistry.registerModEntity(GT_Entity_Arrow.class, "GT_Entity_Arrow", 1, GT_Values.GT, 160, 1, true);
+ EntityRegistry.registerModEntity(GT_Entity_Arrow_Potion.class, "GT_Entity_Arrow_Potion", 2, GT_Values.GT, 160, 1, true);
+
+ new Enchantment_EnderDamage();
+ new Enchantment_Radioactivity();
+
+ new GT_Loader_OreProcessing().run();
+ new GT_Loader_OreDictionary().run();
+ new GT_Loader_ItemData().run();
+ new GT_Loader_Item_Block_And_Fluid().run();
+ new GT_Loader_MetaTileEntities().run();
+
+ new GT_Loader_CircuitBehaviors().run();
+ new GT_CoverBehaviorLoader().run();
+ new GT_SonictronLoader().run();
new GT_SpawnEventHandler();
-/* 368:267 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanel", true)) {
-/* 369:267 */ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { "SGS", "CPC", Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Basic), Character.valueOf('G'), new ItemStack(Blocks.glass_pane, 1), Character.valueOf('P'), OrePrefixes.plateAlloy.get(Materials.Carbon), Character.valueOf('S'), OrePrefixes.plate.get(Materials.Silicon) });
-/* 370: */ }
-/* 371:268 */ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanel8V", false)) {
-/* 372:268 */ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_8V.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { "SSS", "STS", "SSS", Character.valueOf('S'), ItemList.Cover_SolarPanel, Character.valueOf('T'), OrePrefixes.circuit.get(Materials.Advanced) });
-/* 373: */ }
-/* 374:269 */ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanelLV", false)) {
-/* 375:269 */ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_LV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { " S ", "STS", " S ", Character.valueOf('S'), ItemList.Cover_SolarPanel_8V, Character.valueOf('T'), ItemList.Transformer_LV_ULV });
-/* 376: */ }
-/* 377:270 */ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanelMV", false)) {
-/* 378:270 */ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_MV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { " S ", "STS", " S ", Character.valueOf('S'), ItemList.Cover_SolarPanel_LV, Character.valueOf('T'), ItemList.Transformer_MV_LV });
-/* 379: */ }
-/* 380:271 */ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanelHV", false)) {
-/* 381:271 */ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_HV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { " S ", "STS", " S ", Character.valueOf('S'), ItemList.Cover_SolarPanel_MV, Character.valueOf('T'), ItemList.Transformer_HV_MV });
-/* 382: */ }
-/* 383:272 */ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanelEV", false)) {
-/* 384:272 */ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_EV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { " S ", "STS", " S ", Character.valueOf('S'), ItemList.Cover_SolarPanel_HV, Character.valueOf('T'), ItemList.Transformer_EV_HV });
-/* 385: */ }
-/* 386:273 */ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanelIV", false)) {
-/* 387:273 */ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_IV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { " S ", "STS", " S ", Character.valueOf('S'), ItemList.Cover_SolarPanel_EV, Character.valueOf('T'), ItemList.Transformer_IV_EV });
-/* 388: */ }
-/* 389:274 */ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanelLuV", false)) {
-/* 390:274 */ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_LuV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { " S ", "STS", " S ", Character.valueOf('S'), ItemList.Cover_SolarPanel_IV, Character.valueOf('T'), ItemList.Transformer_LuV_IV });
-/* 391: */ }
-/* 392:275 */ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanelZPM", false)) {
-/* 393:275 */ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_ZPM.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { " S ", "STS", " S ", Character.valueOf('S'), ItemList.Cover_SolarPanel_LuV, Character.valueOf('T'), ItemList.Transformer_ZPM_LuV });
-/* 394: */ }
-/* 395:276 */ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanelUV", false)) {
-/* 396:276 */ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_UV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { " S ", "STS", " S ", Character.valueOf('S'), ItemList.Cover_SolarPanel_ZPM, Character.valueOf('T'), ItemList.Transformer_UV_ZPM });
-/* 397: */ }
-/* 398:278 */ if (gregtechproxy.mSortToTheEnd) {
-/* 399: */ try
-/* 400: */ {
-/* 401:280 */ GT_Log.out.println("GT_Mod: Sorting GregTech to the end of the Mod List for further processing.");
-/* 402:281 */ LoadController tLoadController = (LoadController)GT_Utility.getFieldContent(Loader.instance(), "modController", true, true);
-/* 403:282 */ List<ModContainer> tModList = tLoadController.getActiveModList();List<ModContainer> tNewModsList = new ArrayList();
-/* 404:283 */ ModContainer tGregTech = null;
-/* 405:284 */ for (short i = 0; i < tModList.size(); i = (short)(i + 1))
-/* 406: */ {
-/* 407:285 */ ModContainer tMod = (ModContainer)tModList.get(i);
-/* 408:286 */ if (tMod.getModId().equalsIgnoreCase("gregtech")) {
-/* 409:287 */ tGregTech = tMod;
-/* 410: */ } else {
-/* 411:290 */ tNewModsList.add(tMod);
-/* 412: */ }
-/* 413: */ }
-/* 414:292 */ if (tGregTech != null) {
-/* 415:292 */ tNewModsList.add(tGregTech);
-/* 416: */ }
-/* 417:293 */ GT_Utility.getField(tLoadController, "activeModList", true, true).set(tLoadController, tNewModsList);
-/* 418: */ }
-/* 419: */ catch (Throwable e)
-/* 420: */ {
-/* 421:295 */ if (GT_Values.D1) {
-/* 422:295 */ e.printStackTrace(GT_Log.err);
-/* 423: */ }
-/* 424: */ }
-/* 425: */ }
-/* 426:299 */ GregTech_API.sPreloadFinished = true;
-/* 427:300 */ GT_Log.out.println("GT_Mod: Preload-Phase finished!");
-/* 428:301 */ GT_Log.ore.println("GT_Mod: Preload-Phase finished!");
-/* 429:302 */ for (Runnable tRunnable : GregTech_API.sAfterGTPreload) {
-/* 430: */ try
-/* 431: */ {
-/* 432:304 */ tRunnable.run();
-/* 433: */ }
-/* 434: */ catch (Throwable e)
-/* 435: */ {
-/* 436:306 */ e.printStackTrace(GT_Log.err);
-/* 437: */ }
-/* 438: */ }
-/* 439: */ }
-/* 440: */
-/* 441: */ @Mod.EventHandler
-/* 442: */ public void onLoad(FMLInitializationEvent aEvent)
-/* 443: */ {
-/* 444:313 */ if (GregTech_API.sLoadStarted) {
-/* 445:313 */ return;
-/* 446: */ }
-/* 447:315 */ for (Runnable tRunnable : GregTech_API.sBeforeGTLoad) {
-/* 448: */ try
-/* 449: */ {
-/* 450:317 */ tRunnable.run();
-/* 451: */ }
-/* 452: */ catch (Throwable e)
-/* 453: */ {
-/* 454:319 */ e.printStackTrace(GT_Log.err);
-/* 455: */ }
-/* 456: */ }
-/* 457:323 */ gregtechproxy.onLoad();
-/* 458:325 */ if (gregtechproxy.mSortToTheEnd)
-/* 459: */ {
-/* 460:326 */ new GT_ItemIterator().run();
-/* 461:327 */ gregtechproxy.registerUnificationEntries();
-/* 462:328 */ new GT_FuelLoader().run();
-/* 463: */ }
-/* 464:333 */ GregTech_API.sLoadFinished = true;
-/* 465:334 */ GT_Log.out.println("GT_Mod: Load-Phase finished!");
-/* 466:335 */ GT_Log.ore.println("GT_Mod: Load-Phase finished!");
-/* 467:336 */ for (Runnable tRunnable : GregTech_API.sAfterGTLoad) {
-/* 468: */ try
-/* 469: */ {
-/* 470:338 */ tRunnable.run();
-/* 471: */ }
-/* 472: */ catch (Throwable e)
-/* 473: */ {
-/* 474:340 */ e.printStackTrace(GT_Log.err);
-/* 475: */ }
-/* 476: */ }
-/* 477: */ }
-/* 478: */
-/* 479: */ @Mod.EventHandler
-/* 480: */ public void onPostLoad(FMLPostInitializationEvent aEvent)
-/* 481: */ {
-/* 482:347 */ if (GregTech_API.sPostloadStarted) {
-/* 483:347 */ return;
-/* 484: */ }
-/* 485:349 */ for (Runnable tRunnable : GregTech_API.sBeforeGTPostload) {
-/* 486: */ try
-/* 487: */ {
-/* 488:351 */ tRunnable.run();
-/* 489: */ }
-/* 490: */ catch (Throwable e)
-/* 491: */ {
-/* 492:353 */ e.printStackTrace(GT_Log.err);
-/* 493: */ }
-/* 494: */ }
-/* 495:357 */ gregtechproxy.onPostLoad();
-/* 496:359 */ if (gregtechproxy.mSortToTheEnd)
-/* 497: */ {
-/* 498:360 */ gregtechproxy.registerUnificationEntries();
-/* 499: */ }
-/* 500: */ else
-/* 501: */ {
-/* 502:362 */ new GT_ItemIterator().run();
-/* 503:363 */ gregtechproxy.registerUnificationEntries();
-/* 504:364 */ new GT_FuelLoader().run();
-/* 505: */ }
-/* 506:367 */ new GT_BookAndLootLoader().run();
-/* 507:368 */ new GT_ItemMaxStacksizeLoader().run();
-/* 508:369 */ new GT_BlockResistanceLoader().run();
-/* 509:370 */ new GT_RecyclerBlacklistLoader().run();
-/* 510:371 */ new GT_MinableRegistrator().run();
-/* 511:372 */ new GT_MachineRecipeLoader().run();
-/* 512:373 */ new GT_ScrapboxDropLoader().run();
-/* 513:374 */ new GT_CropLoader().run();
-/* 514:375 */ new GT_Worldgenloader().run();
-/* 515:376 */ new GT_CoverLoader().run();
-/* 516: */
-/* 517:378 */ GT_RecipeRegistrator.registerUsagesForMaterials(new ItemStack(Blocks.planks, 1), null, false);
-/* 518:379 */ GT_RecipeRegistrator.registerUsagesForMaterials(new ItemStack(Blocks.cobblestone, 1), null, false);
-/* 519:380 */ GT_RecipeRegistrator.registerUsagesForMaterials(new ItemStack(Blocks.stone, 1), null, false);
-/* 520:381 */ GT_RecipeRegistrator.registerUsagesForMaterials(new ItemStack(Items.leather, 1), null, false);
-/* 521: */
-/* 522:383 */ GT_OreDictUnificator.addItemData(GT_ModHandler.getRecipeOutput(new ItemStack[] { null, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 1L), null, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 1L), null, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 1L), null, null, null }), new ItemData(Materials.Tin, 10886400L, new MaterialStack[0]));
-/* 523:385 */ if (!GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.storageblockcrafting, "tile.glowstone", false)) {
-/* 524:385 */ GT_ModHandler.removeRecipe(new ItemStack[] { new ItemStack(Items.glowstone_dust, 1), new ItemStack(Items.glowstone_dust, 1), null, new ItemStack(Items.glowstone_dust, 1), new ItemStack(Items.glowstone_dust, 1) });
-/* 525: */ }
-/* 526:386 */ GT_ModHandler.removeRecipe(new ItemStack[] { new ItemStack(Blocks.wooden_slab, 1, 0), new ItemStack(Blocks.wooden_slab, 1, 1), new ItemStack(Blocks.wooden_slab, 1, 2) });
-/* 527:387 */ GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.wooden_slab, 6, 0), GT_ModHandler.RecipeBits.NOT_REMOVABLE, new Object[] { "WWW", Character.valueOf('W'), new ItemStack(Blocks.planks, 1, 0) });
-/* 528: */
-/* 529:389 */ GT_Log.out.println("GT_Mod: Activating OreDictionary Handler, this can take some time, as it scans the whole OreDictionary");
-/* 530:390 */ FMLLog.info("If your Log stops here, you were too impatient. Wait a bit more next time, before killing Minecraft with the Task Manager.", new Object[0]);
-/* 531:391 */ gregtechproxy.activateOreDictHandler();
-/* 532:392 */ FMLLog.info("Congratulations, you have been waiting long enough. Have a Cake.", new Object[0]);
-/* 533:393 */ GT_Log.out.println("GT_Mod: " + GT_ModHandler.sSingleNonBlockDamagableRecipeList.size() + " Recipes were left unused.");
-/* 534:395 */ if (GT_Values.D1)
-/* 535: */ {
-/* 536: */ IRecipe tRecipe;
-/* 537:395 */ for (Iterator i$ = GT_ModHandler.sSingleNonBlockDamagableRecipeList.iterator(); i$.hasNext(); GT_Log.out.println("=> " + tRecipe.getRecipeOutput().getDisplayName())) {
-/* 538:395 */ tRecipe = (IRecipe)i$.next();
-/* 539: */ }
-/* 540: */ }
-/* 541:397 */ new GT_CraftingRecipeLoader().run();
-/* 542:399 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2forgehammer", true)) {
-/* 543:399 */ GT_ModHandler.removeRecipeByOutput(ItemList.IC2_ForgeHammer.getWildcard(1L, new Object[0]));
-/* 544: */ }
-/* 545:401 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item("machine", 1L));
-/* 546:402 */ GT_ModHandler.addCraftingRecipe(GT_ModHandler.getIC2Item("machine", 1L), GT_ModHandler.RecipeBits.BUFFERED | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { "RRR", "RwR", "RRR", Character.valueOf('R'), OrePrefixes.plate.get(Materials.Iron) });
-/* 547:404 */ for (FluidContainerRegistry.FluidContainerData tData : FluidContainerRegistry.getRegisteredFluidContainerData()) {
-/* 548:405 */ if ((tData.filledContainer.getItem() == Items.potionitem) && (tData.filledContainer.getItemDamage() == 0))
-/* 549: */ {
-/* 550:406 */ GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(true, new ItemStack[] { ItemList.Bottle_Empty.get(1L, new Object[0]) }, new ItemStack[] { new ItemStack(Items.potionitem, 1, 0) }, null, new FluidStack[] { Materials.Water.getFluid(250L) }, null, 4, 1, 0);
-/* 551:407 */ GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(true, new ItemStack[] { new ItemStack(Items.potionitem, 1, 0) }, new ItemStack[] { ItemList.Bottle_Empty.get(1L, new Object[0]) }, null, null, null, 4, 1, 0);
-/* 552: */ }
-/* 553: */ else
-/* 554: */ {
-/* 555:409 */ GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(true, new ItemStack[] { tData.emptyContainer }, new ItemStack[] { tData.filledContainer }, null, new FluidStack[] { tData.fluid }, null, tData.fluid.amount / 62, 1, 0);
-/* 556:410 */ GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(true, new ItemStack[] { tData.filledContainer }, new ItemStack[] { GT_Utility.getContainerItem(tData.filledContainer, true) }, null, null, new FluidStack[] { tData.fluid }, tData.fluid.amount / 62, 1, 0);
-/* 557: */ }
-/* 558: */ }
-/* 559: */ try
-/* 560: */ {
-/* 561:415 */ for (Object tRecipe : MachineCentrifuge.RecipeManager.recipes)
-/* 562: */ {
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanel", true)) {
+ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { "SGS", "CPC", Character.valueOf('C'), OrePrefixes.circuit.get(Materials.Basic), Character.valueOf('G'), new ItemStack(Blocks.glass_pane, 1), Character.valueOf('P'), OrePrefixes.plateAlloy.get(Materials.Carbon), Character.valueOf('S'), OrePrefixes.plate.get(Materials.Silicon) });
+ }
+ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanel8V", false)) {
+ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_8V.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { "SSS", "STS", "SSS", Character.valueOf('S'), ItemList.Cover_SolarPanel, Character.valueOf('T'), OrePrefixes.circuit.get(Materials.Advanced) });
+ }
+ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanelLV", false)) {
+ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_LV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { " S ", "STS", " S ", Character.valueOf('S'), ItemList.Cover_SolarPanel_8V, Character.valueOf('T'), ItemList.Transformer_LV_ULV });
+ }
+ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanelMV", false)) {
+ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_MV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { " S ", "STS", " S ", Character.valueOf('S'), ItemList.Cover_SolarPanel_LV, Character.valueOf('T'), ItemList.Transformer_MV_LV });
+ }
+ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanelHV", false)) {
+ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_HV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { " S ", "STS", " S ", Character.valueOf('S'), ItemList.Cover_SolarPanel_MV, Character.valueOf('T'), ItemList.Transformer_HV_MV });
+ }
+ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanelEV", false)) {
+ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_EV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { " S ", "STS", " S ", Character.valueOf('S'), ItemList.Cover_SolarPanel_HV, Character.valueOf('T'), ItemList.Transformer_EV_HV });
+ }
+ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanelIV", false)) {
+ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_IV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { " S ", "STS", " S ", Character.valueOf('S'), ItemList.Cover_SolarPanel_EV, Character.valueOf('T'), ItemList.Transformer_IV_EV });
+ }
+ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanelLuV", false)) {
+ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_LuV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { " S ", "STS", " S ", Character.valueOf('S'), ItemList.Cover_SolarPanel_IV, Character.valueOf('T'), ItemList.Transformer_LuV_IV });
+ }
+ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanelZPM", false)) {
+ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_ZPM.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { " S ", "STS", " S ", Character.valueOf('S'), ItemList.Cover_SolarPanel_LuV, Character.valueOf('T'), ItemList.Transformer_ZPM_LuV });
+ }
+ if (GregTech_API.sOPStuff.get(ConfigCategories.Recipes.gregtechrecipes, "SolarPanelUV", false)) {
+ GT_ModHandler.addCraftingRecipe(ItemList.Cover_SolarPanel_UV.get(1L, new Object[0]), GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { " S ", "STS", " S ", Character.valueOf('S'), ItemList.Cover_SolarPanel_ZPM, Character.valueOf('T'), ItemList.Transformer_UV_ZPM });
+ }
+ if (gregtechproxy.mSortToTheEnd) {
+ try
+ {
+ GT_Log.out.println("GT_Mod: Sorting GregTech to the end of the Mod List for further processing.");
+ LoadController tLoadController = (LoadController)GT_Utility.getFieldContent(Loader.instance(), "modController", true, true);
+ List<ModContainer> tModList = tLoadController.getActiveModList();List<ModContainer> tNewModsList = new ArrayList();
+ ModContainer tGregTech = null;
+ for (short i = 0; i < tModList.size(); i = (short)(i + 1))
+ {
+ ModContainer tMod = (ModContainer)tModList.get(i);
+ if (tMod.getModId().equalsIgnoreCase("gregtech")) {
+ tGregTech = tMod;
+ } else {
+ tNewModsList.add(tMod);
+ }
+ }
+ if (tGregTech != null) {
+ tNewModsList.add(tGregTech);
+ }
+ GT_Utility.getField(tLoadController, "activeModList", true, true).set(tLoadController, tNewModsList);
+ }
+ catch (Throwable e)
+ {
+ if (GT_Values.D1) {
+ e.printStackTrace(GT_Log.err);
+ }
+ }
+ }
+ GregTech_API.sPreloadFinished = true;
+ GT_Log.out.println("GT_Mod: Preload-Phase finished!");
+ GT_Log.ore.println("GT_Mod: Preload-Phase finished!");
+ for (Runnable tRunnable : GregTech_API.sAfterGTPreload) {
+ try
+ {
+ tRunnable.run();
+ }
+ catch (Throwable e)
+ {
+ e.printStackTrace(GT_Log.err);
+ }
+ }
+ }
+
+ @Mod.EventHandler
+ public void onLoad(FMLInitializationEvent aEvent)
+ {
+ if (GregTech_API.sLoadStarted) {
+ return;
+ }
+ for (Runnable tRunnable : GregTech_API.sBeforeGTLoad) {
+ try
+ {
+ tRunnable.run();
+ }
+ catch (Throwable e)
+ {
+ e.printStackTrace(GT_Log.err);
+ }
+ }
+ gregtechproxy.onLoad();
+ if (gregtechproxy.mSortToTheEnd)
+ {
+ new GT_ItemIterator().run();
+ gregtechproxy.registerUnificationEntries();
+ new GT_FuelLoader().run();
+ }
+ GregTech_API.sLoadFinished = true;
+ GT_Log.out.println("GT_Mod: Load-Phase finished!");
+ GT_Log.ore.println("GT_Mod: Load-Phase finished!");
+ for (Runnable tRunnable : GregTech_API.sAfterGTLoad) {
+ try
+ {
+ tRunnable.run();
+ }
+ catch (Throwable e)
+ {
+ e.printStackTrace(GT_Log.err);
+ }
+ }
+ }
+
+ @Mod.EventHandler
+ public void onPostLoad(FMLPostInitializationEvent aEvent)
+ {
+ if (GregTech_API.sPostloadStarted) {
+ return;
+ }
+ for (Runnable tRunnable : GregTech_API.sBeforeGTPostload) {
+ try
+ {
+ tRunnable.run();
+ }
+ catch (Throwable e)
+ {
+ e.printStackTrace(GT_Log.err);
+ }
+ }
+ gregtechproxy.onPostLoad();
+ if (gregtechproxy.mSortToTheEnd)
+ {
+ gregtechproxy.registerUnificationEntries();
+ }
+ else
+ {
+ new GT_ItemIterator().run();
+ gregtechproxy.registerUnificationEntries();
+ new GT_FuelLoader().run();
+ }
+ new GT_BookAndLootLoader().run();
+ new GT_ItemMaxStacksizeLoader().run();
+ new GT_BlockResistanceLoader().run();
+ new GT_RecyclerBlacklistLoader().run();
+ new GT_MinableRegistrator().run();
+ new GT_MachineRecipeLoader().run();
+ new GT_ScrapboxDropLoader().run();
+ new GT_CropLoader().run();
+ new GT_Worldgenloader().run();
+ new GT_CoverLoader().run();
+
+ GT_RecipeRegistrator.registerUsagesForMaterials(new ItemStack(Blocks.planks, 1), null, false);
+ GT_RecipeRegistrator.registerUsagesForMaterials(new ItemStack(Blocks.cobblestone, 1), null, false);
+ GT_RecipeRegistrator.registerUsagesForMaterials(new ItemStack(Blocks.stone, 1), null, false);
+ GT_RecipeRegistrator.registerUsagesForMaterials(new ItemStack(Items.leather, 1), null, false);
+
+ GT_OreDictUnificator.addItemData(GT_ModHandler.getRecipeOutput(new ItemStack[] { null, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 1L), null, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 1L), null, GT_OreDictUnificator.get(OrePrefixes.ingot, Materials.Tin, 1L), null, null, null }), new ItemData(Materials.Tin, 10886400L, new MaterialStack[0]));
+ if (!GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.storageblockcrafting, "tile.glowstone", false)) {
+ GT_ModHandler.removeRecipe(new ItemStack[] { new ItemStack(Items.glowstone_dust, 1), new ItemStack(Items.glowstone_dust, 1), null, new ItemStack(Items.glowstone_dust, 1), new ItemStack(Items.glowstone_dust, 1) });
+ }
+ GT_ModHandler.removeRecipe(new ItemStack[] { new ItemStack(Blocks.wooden_slab, 1, 0), new ItemStack(Blocks.wooden_slab, 1, 1), new ItemStack(Blocks.wooden_slab, 1, 2) });
+ GT_ModHandler.addCraftingRecipe(new ItemStack(Blocks.wooden_slab, 6, 0), GT_ModHandler.RecipeBits.NOT_REMOVABLE, new Object[] { "WWW", Character.valueOf('W'), new ItemStack(Blocks.planks, 1, 0) });
+
+ GT_Log.out.println("GT_Mod: Activating OreDictionary Handler, this can take some time, as it scans the whole OreDictionary");
+ FMLLog.info("If your Log stops here, you were too impatient. Wait a bit more next time, before killing Minecraft with the Task Manager.", new Object[0]);
+ gregtechproxy.activateOreDictHandler();
+ FMLLog.info("Congratulations, you have been waiting long enough. Have a Cake.", new Object[0]);
+ GT_Log.out.println("GT_Mod: " + GT_ModHandler.sSingleNonBlockDamagableRecipeList.size() + " Recipes were left unused.");
+ if (GT_Values.D1)
+ {
+ IRecipe tRecipe;
+ for (Iterator i$ = GT_ModHandler.sSingleNonBlockDamagableRecipeList.iterator(); i$.hasNext(); GT_Log.out.println("=> " + tRecipe.getRecipeOutput().getDisplayName())) {
+ tRecipe = (IRecipe)i$.next();
+ }
+ }
+ new GT_CraftingRecipeLoader().run();
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2forgehammer", true)) {
+ GT_ModHandler.removeRecipeByOutput(ItemList.IC2_ForgeHammer.getWildcard(1L, new Object[0]));
+ }
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item("machine", 1L));
+ GT_ModHandler.addCraftingRecipe(GT_ModHandler.getIC2Item("machine", 1L), GT_ModHandler.RecipeBits.BUFFERED | GT_ModHandler.RecipeBits.NOT_REMOVABLE | GT_ModHandler.RecipeBits.REVERSIBLE, new Object[] { "RRR", "RwR", "RRR", Character.valueOf('R'), OrePrefixes.plate.get(Materials.Iron) });
+ for (FluidContainerRegistry.FluidContainerData tData : FluidContainerRegistry.getRegisteredFluidContainerData()) {
+ if ((tData.filledContainer.getItem() == Items.potionitem) && (tData.filledContainer.getItemDamage() == 0))
+ {
+ GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(true, new ItemStack[] { ItemList.Bottle_Empty.get(1L, new Object[0]) }, new ItemStack[] { new ItemStack(Items.potionitem, 1, 0) }, null, new FluidStack[] { Materials.Water.getFluid(250L) }, null, 4, 1, 0);
+ GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(true, new ItemStack[] { new ItemStack(Items.potionitem, 1, 0) }, new ItemStack[] { ItemList.Bottle_Empty.get(1L, new Object[0]) }, null, null, null, 4, 1, 0);
+ }
+ else
+ {
+ GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(true, new ItemStack[] { tData.emptyContainer }, new ItemStack[] { tData.filledContainer }, null, new FluidStack[] { tData.fluid }, null, tData.fluid.amount / 62, 1, 0);
+ GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes.addRecipe(true, new ItemStack[] { tData.filledContainer }, new ItemStack[] { GT_Utility.getContainerItem(tData.filledContainer, true) }, null, null, new FluidStack[] { tData.fluid }, tData.fluid.amount / 62, 1, 0);
+ }
+ }
+ try
+ {
+ for (Object tRecipe : MachineCentrifuge.RecipeManager.recipes)
+ {
Map<ItemStack,Float> outputs = ((MachineCentrifuge.CentrifugeRecipe)tRecipe).getAllProducts();
-/* 564:417 */ ItemStack[] tOutputs = new ItemStack[outputs.size()];
-/* 565:418 */ int[] tChances = new int[outputs.size()];
+ ItemStack[] tOutputs = new ItemStack[outputs.size()];
+ int[] tChances = new int[outputs.size()];
int i =0;
for (Map.Entry<ItemStack, Float> entry : outputs.entrySet()) {
tChances[i] = (int) (entry.getValue()*10000);
tOutputs[i] = entry.getKey().copy();
i++;
}
-///* 566:419 */ for (int i = 0; i < outputs.size(); i++) {
+// for (int i = 0; i < outputs.size(); i++) {
// tOutputs[i] = outputs.entrySet().
-///* 567:419 */ tChances[i] = (tOriginalChances[i].intValue() * 100);
-///* 568: */ }
-/* 569:420 */ GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.addRecipe(true, new ItemStack[] { ((MachineCentrifuge.CentrifugeRecipe)tRecipe).getInput() }, tOutputs, null, tChances, null, null, 128, 5, 0);
-/* 570: */ }
-/* 571: */ }
-/* 572: */ catch (Throwable e)
-/* 573: */ {
-/* 574:423 */ if (GT_Values.D1) {
-/* 575:423 */ e.printStackTrace(GT_Log.err);
-/* 576: */ }
-/* 577: */ }
-/* 578: */ try
-/* 579: */ {
-/* 580:427 */ for (Object tRecipe : MachineSqueezer.RecipeManager.recipes) {
-/* 581:428 */ if ((((MachineSqueezer.Recipe)tRecipe).resources.length == 1) && (GT_Utility.getFluidForFilledItem(((MachineSqueezer.Recipe)tRecipe).resources[0], true) == null)) {
-/* 582:429 */ GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes.addRecipe(true, new ItemStack[] { ((MachineSqueezer.Recipe)tRecipe).resources[0] }, new ItemStack[] { ((MachineSqueezer.Recipe)tRecipe).remnants }, null, new int[] { ((MachineSqueezer.Recipe)tRecipe).chance * 100 }, null, new FluidStack[] { ((MachineSqueezer.Recipe)tRecipe).liquid }, 400, 2, 0);
-/* 583: */ }
-/* 584: */ }
-/* 585: */ }
-/* 586: */ catch (Throwable e)
-/* 587: */ {
-/* 588:432 */ if (GT_Values.D1) {
-/* 589:432 */ e.printStackTrace(GT_Log.err);
-/* 590: */ }
-/* 591: */ }
-/* 592:435 */ String tName = "";
-/* 593:437 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "blastfurnace"), true)) {
-/* 594:437 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 595: */ }
-/* 596:438 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "blockcutter"), true)) {
-/* 597:438 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 598: */ }
-/* 599:439 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "inductionFurnace"), true)) {
-/* 600:439 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 601: */ }
-/* 602:440 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "generator"), false)) {
-/* 603:440 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 604: */ }
-/* 605:441 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "windMill"), true)) {
-/* 606:441 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 607: */ }
-/* 608:442 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "waterMill"), true)) {
-/* 609:442 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 610: */ }
-/* 611:443 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "solarPanel"), true)) {
-/* 612:443 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 613: */ }
-/* 614:444 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "centrifuge"), true)) {
-/* 615:444 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 616: */ }
-/* 617:445 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "electrolyzer"), false)) {
-/* 618:445 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 619: */ }
-/* 620:446 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "compressor"), true)) {
-/* 621:446 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 622: */ }
-/* 623:447 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "electroFurnace"), true)) {
-/* 624:447 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 625: */ }
-/* 626:448 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "extractor"), true)) {
-/* 627:448 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 628: */ }
-/* 629:449 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "macerator"), true)) {
-/* 630:449 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 631: */ }
-/* 632:450 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "recycler"), true)) {
-/* 633:450 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 634: */ }
-/* 635:451 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "metalformer"), true)) {
-/* 636:451 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 637: */ }
-/* 638:452 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "orewashingplant"), true)) {
-/* 639:452 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 640: */ }
-/* 641:453 */ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "massFabricator"), true)) {
-/* 642:453 */ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
-/* 643: */ }
-/* 644:455 */ if (gregtechproxy.mNerfedVanillaTools)
-/* 645: */ {
-/* 646:456 */ GT_Log.out.println("GT_Mod: Nerfing Vanilla Tool Durability");
-/* 647:457 */ Items.wooden_sword.setMaxDamage(12);
-/* 648:458 */ Items.wooden_pickaxe.setMaxDamage(12);
-/* 649:459 */ Items.wooden_shovel.setMaxDamage(12);
-/* 650:460 */ Items.wooden_axe.setMaxDamage(12);
-/* 651:461 */ Items.wooden_hoe.setMaxDamage(12);
-/* 652: */
-/* 653:463 */ Items.stone_sword.setMaxDamage(48);
-/* 654:464 */ Items.stone_pickaxe.setMaxDamage(48);
-/* 655:465 */ Items.stone_shovel.setMaxDamage(48);
-/* 656:466 */ Items.stone_axe.setMaxDamage(48);
-/* 657:467 */ Items.stone_hoe.setMaxDamage(48);
-/* 658: */
-/* 659:469 */ Items.iron_sword.setMaxDamage(256);
-/* 660:470 */ Items.iron_pickaxe.setMaxDamage(256);
-/* 661:471 */ Items.iron_shovel.setMaxDamage(256);
-/* 662:472 */ Items.iron_axe.setMaxDamage(256);
-/* 663:473 */ Items.iron_hoe.setMaxDamage(256);
-/* 664: */
-/* 665:475 */ Items.golden_sword.setMaxDamage(24);
-/* 666:476 */ Items.golden_pickaxe.setMaxDamage(24);
-/* 667:477 */ Items.golden_shovel.setMaxDamage(24);
-/* 668:478 */ Items.golden_axe.setMaxDamage(24);
-/* 669:479 */ Items.golden_hoe.setMaxDamage(24);
-/* 670: */
-/* 671:481 */ Items.diamond_sword.setMaxDamage(768);
-/* 672:482 */ Items.diamond_pickaxe.setMaxDamage(768);
-/* 673:483 */ Items.diamond_shovel.setMaxDamage(768);
-/* 674:484 */ Items.diamond_axe.setMaxDamage(768);
-/* 675:485 */ Items.diamond_hoe.setMaxDamage(768);
-/* 676: */ }
-/* 677:488 */ GT_Log.out.println("GT_Mod: Adding buffered Recipes.");
-/* 678:489 */ GT_ModHandler.stopBufferingCraftingRecipes();
-/* 679: */
-/* 680:491 */ GT_Log.out.println("GT_Mod: Saving Lang File.");
-/* 681:492 */ GT_LanguageManager.sEnglishFile.save();
-/* 682:493 */ GregTech_API.sPostloadFinished = true;
-/* 683:494 */ GT_Log.out.println("GT_Mod: PostLoad-Phase finished!");
-/* 684:495 */ GT_Log.ore.println("GT_Mod: PostLoad-Phase finished!");
-/* 685:497 */ for (Runnable tRunnable : GregTech_API.sAfterGTPostload) {
-/* 686: */ try
-/* 687: */ {
-/* 688:499 */ tRunnable.run();
-/* 689: */ }
-/* 690: */ catch (Throwable e)
-/* 691: */ {
-/* 692:501 */ e.printStackTrace(GT_Log.err);
-/* 693: */ }
-/* 694: */ }
-/* 695:505 */ GT_Log.out.println("GT_Mod: Adding Fake Recipes for NEI");
-/* 696:507 */ if (ItemList.FR_Bee_Drone.get(1L, new Object[0]) != null) {
-/* 697:507 */ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_Bee_Drone.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_Bee_Drone.getWithName(1L, "Scanned Drone", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
-/* 698: */ }
-/* 699:508 */ if (ItemList.FR_Bee_Princess.get(1L, new Object[0]) != null) {
-/* 700:508 */ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_Bee_Princess.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_Bee_Princess.getWithName(1L, "Scanned Princess", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
-/* 701: */ }
-/* 702:509 */ if (ItemList.FR_Bee_Queen.get(1L, new Object[0]) != null) {
-/* 703:509 */ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_Bee_Queen.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_Bee_Queen.getWithName(1L, "Scanned Queen", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
-/* 704: */ }
-/* 705:510 */ if (ItemList.FR_Tree_Sapling.get(1L, new Object[0]) != null) {
-/* 706:510 */ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_Tree_Sapling.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_Tree_Sapling.getWithName(1L, "Scanned Sapling", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
-/* 707: */ }
-/* 708:511 */ if (ItemList.FR_Butterfly.get(1L, new Object[0]) != null) {
-/* 709:511 */ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_Butterfly.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_Butterfly.getWithName(1L, "Scanned Butterfly", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
-/* 710: */ }
-/* 711:512 */ if (ItemList.FR_Larvae.get(1L, new Object[0]) != null) {
-/* 712:512 */ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_Larvae.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_Larvae.getWithName(1L, "Scanned Larvae", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
-/* 713: */ }
-/* 714:513 */ if (ItemList.FR_Serum.get(1L, new Object[0]) != null) {
-/* 715:513 */ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_Serum.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_Serum.getWithName(1L, "Scanned Serum", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
-/* 716: */ }
-/* 717:514 */ if (ItemList.FR_Caterpillar.get(1L, new Object[0]) != null) {
-/* 718:514 */ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_Caterpillar.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_Caterpillar.getWithName(1L, "Scanned Caterpillar", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
-/* 719: */ }
-/* 720:515 */ if (ItemList.FR_PollenFertile.get(1L, new Object[0]) != null) {
-/* 721:515 */ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_PollenFertile.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_PollenFertile.getWithName(1L, "Scanned Pollen", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
-/* 722: */ }
-/* 723:516 */ if (ItemList.IC2_Crop_Seeds.get(1L, new Object[0]) != null) {
-/* 724:516 */ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.IC2_Crop_Seeds.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.IC2_Crop_Seeds.getWithName(1L, "Scanned Seeds", new Object[0]) }, null, null, null, 160, 8, 0);
-/* 725: */ }
-/* 726:517 */ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { new ItemStack(Items.written_book, 1, 32767) }, new ItemStack[] { ItemList.Tool_DataStick.getWithName(1L, "Scanned Book Data", new Object[0]) }, ItemList.Tool_DataStick.getWithName(1L, "Stick to save it to", new Object[0]), null, null, 128, 32, 0);
-/* 727:518 */ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { new ItemStack(Items.filled_map, 1, 32767) }, new ItemStack[] { ItemList.Tool_DataStick.getWithName(1L, "Scanned Map Data", new Object[0]) }, ItemList.Tool_DataStick.getWithName(1L, "Stick to save it to", new Object[0]), null, null, 128, 32, 0);
-/* 728:519 */ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.Tool_DataOrb.getWithName(1L, "Orb to overwrite", new Object[0]) }, new ItemStack[] { ItemList.Tool_DataOrb.getWithName(1L, "Copy of the Orb", new Object[0]) }, ItemList.Tool_DataOrb.getWithName(0L, "Orb to copy", new Object[0]), null, null, 512, 32, 0);
-/* 729:520 */ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.Tool_DataStick.getWithName(1L, "Stick to overwrite", new Object[0]) }, new ItemStack[] { ItemList.Tool_DataStick.getWithName(1L, "Copy of the Stick", new Object[0]) }, ItemList.Tool_DataStick.getWithName(0L, "Stick to copy", new Object[0]), null, null, 128, 32, 0);
-/* 730:522 */ for (Materials tMaterial : Materials.VALUES) {
-/* 731:522 */ if ((tMaterial.mElement != null) && (!tMaterial.mElement.mIsIsotope) && (tMaterial != Materials.Magic) && (tMaterial.getMass() > 0L))
-/* 732: */ {
-/* 733:523 */ ItemStack tOutput = ItemList.Tool_DataOrb.get(1L, new Object[0]);
-/* 734:524 */ Behaviour_DataOrb.setDataTitle(tOutput, "Elemental-Scan");
-/* 735:525 */ Behaviour_DataOrb.setDataName(tOutput, tMaterial.mElement.name());
-/* 736:526 */ ItemStack tInput = GT_OreDictUnificator.get(OrePrefixes.dust, tMaterial, 1L);
-/* 737:527 */ if (tInput != null) {
-/* 738:527 */ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { tInput }, new ItemStack[] { tOutput }, ItemList.Tool_DataOrb.get(1L, new Object[0]), null, null, (int)(tMaterial.getMass() * 8192L), 32, 0);
-/* 739: */ }
-/* 740:528 */ tInput = GT_OreDictUnificator.get(OrePrefixes.cell, tMaterial, 1L);
-/* 741:529 */ if (tInput != null) {
-/* 742:529 */ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { tInput }, new ItemStack[] { tOutput }, ItemList.Tool_DataOrb.get(1L, new Object[0]), null, null, (int)(tMaterial.getMass() * 8192L), 32, 0);
-/* 743: */ }
-/* 744: */ }
-/* 745: */ }
-/* 746:532 */ GT_Recipe.GT_Recipe_Map.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.Display_ITS_FREE.getWithName(0L, "Place Lava on Side", new Object[0]) }, new ItemStack[] { new ItemStack(Blocks.cobblestone, 1) }, null, null, null, 16, 32, 0);
-/* 747:533 */ GT_Recipe.GT_Recipe_Map.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.Display_ITS_FREE.getWithName(0L, "Place Lava on Top", new Object[0]) }, new ItemStack[] { new ItemStack(Blocks.stone, 1) }, null, null, null, 16, 32, 0);
-/* 748:534 */ GT_Recipe.GT_Recipe_Map.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L) }, new ItemStack[] { new ItemStack(Blocks.obsidian, 1) }, null, null, null, 128, 32, 0);
-/* 749:536 */ for (Iterator i$ = GT_ModHandler.getMaceratorRecipeList().entrySet().iterator(); i$.hasNext();)
-/* 750: */ {
-/* 751:536 */ Entry tRecipe = (Map.Entry)i$.next();
-/* 752:536 */ if (((RecipeOutput)tRecipe.getValue()).items.size() > 0) {
-/* 753:536 */ for (ItemStack tStack : ((IRecipeInput)tRecipe.getKey()).getInputs()) {
-/* 754:536 */ if (GT_Utility.isStackValid(tStack)) {
-/* 755:537 */ GT_Recipe.GT_Recipe_Map.sMaceratorRecipes.addFakeRecipe(true, new ItemStack[] { GT_Utility.copyAmount(((IRecipeInput)tRecipe.getKey()).getAmount(), new Object[] { tStack }) }, new ItemStack[] { (ItemStack)((RecipeOutput)tRecipe.getValue()).items.get(0) }, null, null, null, null, 400, 2, 0);
-/* 756: */ }
-/* 757: */ }
-/* 758: */ }
-/* 759: */ }
+// tChances[i] = (tOriginalChances[i].intValue() * 100);
+// }
+ GT_Recipe.GT_Recipe_Map.sCentrifugeRecipes.addRecipe(true, new ItemStack[] { ((MachineCentrifuge.CentrifugeRecipe)tRecipe).getInput() }, tOutputs, null, tChances, null, null, 128, 5, 0);
+ }
+ }
+ catch (Throwable e)
+ {
+ if (GT_Values.D1) {
+ e.printStackTrace(GT_Log.err);
+ }
+ }
+ try
+ {
+ for (Object tRecipe : MachineSqueezer.RecipeManager.recipes) {
+ if ((((MachineSqueezer.Recipe)tRecipe).resources.length == 1) && (GT_Utility.getFluidForFilledItem(((MachineSqueezer.Recipe)tRecipe).resources[0], true) == null)) {
+ GT_Recipe.GT_Recipe_Map.sFluidExtractionRecipes.addRecipe(true, new ItemStack[] { ((MachineSqueezer.Recipe)tRecipe).resources[0] }, new ItemStack[] { ((MachineSqueezer.Recipe)tRecipe).remnants }, null, new int[] { ((MachineSqueezer.Recipe)tRecipe).chance * 100 }, null, new FluidStack[] { ((MachineSqueezer.Recipe)tRecipe).liquid }, 400, 2, 0);
+ }
+ }
+ }
+ catch (Throwable e)
+ {
+ if (GT_Values.D1) {
+ e.printStackTrace(GT_Log.err);
+ }
+ }
+ String tName = "";
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "blastfurnace"), true)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "blockcutter"), true)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "inductionFurnace"), true)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "generator"), false)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "windMill"), true)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "waterMill"), true)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "solarPanel"), true)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "centrifuge"), true)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "electrolyzer"), false)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "compressor"), true)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "electroFurnace"), true)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "extractor"), true)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "macerator"), true)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "recycler"), true)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "metalformer"), true)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "orewashingplant"), true)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (GregTech_API.sRecipeFile.get(ConfigCategories.Recipes.disabledrecipes, "ic2_" + (tName = "massFabricator"), true)) {
+ GT_ModHandler.removeRecipeByOutput(GT_ModHandler.getIC2Item(tName, 1L));
+ }
+ if (gregtechproxy.mNerfedVanillaTools)
+ {
+ GT_Log.out.println("GT_Mod: Nerfing Vanilla Tool Durability");
+ Items.wooden_sword.setMaxDamage(12);
+ Items.wooden_pickaxe.setMaxDamage(12);
+ Items.wooden_shovel.setMaxDamage(12);
+ Items.wooden_axe.setMaxDamage(12);
+ Items.wooden_hoe.setMaxDamage(12);
+
+ Items.stone_sword.setMaxDamage(48);
+ Items.stone_pickaxe.setMaxDamage(48);
+ Items.stone_shovel.setMaxDamage(48);
+ Items.stone_axe.setMaxDamage(48);
+ Items.stone_hoe.setMaxDamage(48);
+
+ Items.iron_sword.setMaxDamage(256);
+ Items.iron_pickaxe.setMaxDamage(256);
+ Items.iron_shovel.setMaxDamage(256);
+ Items.iron_axe.setMaxDamage(256);
+ Items.iron_hoe.setMaxDamage(256);
+
+ Items.golden_sword.setMaxDamage(24);
+ Items.golden_pickaxe.setMaxDamage(24);
+ Items.golden_shovel.setMaxDamage(24);
+ Items.golden_axe.setMaxDamage(24);
+ Items.golden_hoe.setMaxDamage(24);
+
+ Items.diamond_sword.setMaxDamage(768);
+ Items.diamond_pickaxe.setMaxDamage(768);
+ Items.diamond_shovel.setMaxDamage(768);
+ Items.diamond_axe.setMaxDamage(768);
+ Items.diamond_hoe.setMaxDamage(768);
+ }
+ GT_Log.out.println("GT_Mod: Adding buffered Recipes.");
+ GT_ModHandler.stopBufferingCraftingRecipes();
+
+ GT_Log.out.println("GT_Mod: Saving Lang File.");
+ GT_LanguageManager.sEnglishFile.save();
+ GregTech_API.sPostloadFinished = true;
+ GT_Log.out.println("GT_Mod: PostLoad-Phase finished!");
+ GT_Log.ore.println("GT_Mod: PostLoad-Phase finished!");
+ for (Runnable tRunnable : GregTech_API.sAfterGTPostload) {
+ try
+ {
+ tRunnable.run();
+ }
+ catch (Throwable e)
+ {
+ e.printStackTrace(GT_Log.err);
+ }
+ }
+ GT_Log.out.println("GT_Mod: Adding Fake Recipes for NEI");
+ if (ItemList.FR_Bee_Drone.get(1L, new Object[0]) != null) {
+ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_Bee_Drone.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_Bee_Drone.getWithName(1L, "Scanned Drone", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
+ }
+ if (ItemList.FR_Bee_Princess.get(1L, new Object[0]) != null) {
+ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_Bee_Princess.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_Bee_Princess.getWithName(1L, "Scanned Princess", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
+ }
+ if (ItemList.FR_Bee_Queen.get(1L, new Object[0]) != null) {
+ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_Bee_Queen.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_Bee_Queen.getWithName(1L, "Scanned Queen", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
+ }
+ if (ItemList.FR_Tree_Sapling.get(1L, new Object[0]) != null) {
+ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_Tree_Sapling.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_Tree_Sapling.getWithName(1L, "Scanned Sapling", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
+ }
+ if (ItemList.FR_Butterfly.get(1L, new Object[0]) != null) {
+ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_Butterfly.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_Butterfly.getWithName(1L, "Scanned Butterfly", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
+ }
+ if (ItemList.FR_Larvae.get(1L, new Object[0]) != null) {
+ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_Larvae.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_Larvae.getWithName(1L, "Scanned Larvae", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
+ }
+ if (ItemList.FR_Serum.get(1L, new Object[0]) != null) {
+ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_Serum.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_Serum.getWithName(1L, "Scanned Serum", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
+ }
+ if (ItemList.FR_Caterpillar.get(1L, new Object[0]) != null) {
+ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_Caterpillar.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_Caterpillar.getWithName(1L, "Scanned Caterpillar", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
+ }
+ if (ItemList.FR_PollenFertile.get(1L, new Object[0]) != null) {
+ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.FR_PollenFertile.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.FR_PollenFertile.getWithName(1L, "Scanned Pollen", new Object[0]) }, null, new FluidStack[] { Materials.Honey.getFluid(50L) }, null, 500, 2, 0);
+ }
+ if (ItemList.IC2_Crop_Seeds.get(1L, new Object[0]) != null) {
+ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.IC2_Crop_Seeds.getWildcard(1L, new Object[0]) }, new ItemStack[] { ItemList.IC2_Crop_Seeds.getWithName(1L, "Scanned Seeds", new Object[0]) }, null, null, null, 160, 8, 0);
+ }
+ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { new ItemStack(Items.written_book, 1, 32767) }, new ItemStack[] { ItemList.Tool_DataStick.getWithName(1L, "Scanned Book Data", new Object[0]) }, ItemList.Tool_DataStick.getWithName(1L, "Stick to save it to", new Object[0]), null, null, 128, 32, 0);
+ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { new ItemStack(Items.filled_map, 1, 32767) }, new ItemStack[] { ItemList.Tool_DataStick.getWithName(1L, "Scanned Map Data", new Object[0]) }, ItemList.Tool_DataStick.getWithName(1L, "Stick to save it to", new Object[0]), null, null, 128, 32, 0);
+ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.Tool_DataOrb.getWithName(1L, "Orb to overwrite", new Object[0]) }, new ItemStack[] { ItemList.Tool_DataOrb.getWithName(1L, "Copy of the Orb", new Object[0]) }, ItemList.Tool_DataOrb.getWithName(0L, "Orb to copy", new Object[0]), null, null, 512, 32, 0);
+ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.Tool_DataStick.getWithName(1L, "Stick to overwrite", new Object[0]) }, new ItemStack[] { ItemList.Tool_DataStick.getWithName(1L, "Copy of the Stick", new Object[0]) }, ItemList.Tool_DataStick.getWithName(0L, "Stick to copy", new Object[0]), null, null, 128, 32, 0);
+ for (Materials tMaterial : Materials.VALUES) {
+ if ((tMaterial.mElement != null) && (!tMaterial.mElement.mIsIsotope) && (tMaterial != Materials.Magic) && (tMaterial.getMass() > 0L))
+ {
+ ItemStack tOutput = ItemList.Tool_DataOrb.get(1L, new Object[0]);
+ Behaviour_DataOrb.setDataTitle(tOutput, "Elemental-Scan");
+ Behaviour_DataOrb.setDataName(tOutput, tMaterial.mElement.name());
+ ItemStack tInput = GT_OreDictUnificator.get(OrePrefixes.dust, tMaterial, 1L);
+ if (tInput != null) {
+ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { tInput }, new ItemStack[] { tOutput }, ItemList.Tool_DataOrb.get(1L, new Object[0]), null, null, (int)(tMaterial.getMass() * 8192L), 32, 0);
+ }
+ tInput = GT_OreDictUnificator.get(OrePrefixes.cell, tMaterial, 1L);
+ if (tInput != null) {
+ GT_Recipe.GT_Recipe_Map.sScannerFakeRecipes.addFakeRecipe(false, new ItemStack[] { tInput }, new ItemStack[] { tOutput }, ItemList.Tool_DataOrb.get(1L, new Object[0]), null, null, (int)(tMaterial.getMass() * 8192L), 32, 0);
+ }
+ }
+ }
+ GT_Recipe.GT_Recipe_Map.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.Display_ITS_FREE.getWithName(0L, "Place Lava on Side", new Object[0]) }, new ItemStack[] { new ItemStack(Blocks.cobblestone, 1) }, null, null, null, 16, 32, 0);
+ GT_Recipe.GT_Recipe_Map.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[] { ItemList.Display_ITS_FREE.getWithName(0L, "Place Lava on Top", new Object[0]) }, new ItemStack[] { new ItemStack(Blocks.stone, 1) }, null, null, null, 16, 32, 0);
+ GT_Recipe.GT_Recipe_Map.sRockBreakerFakeRecipes.addFakeRecipe(false, new ItemStack[] { GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Redstone, 1L) }, new ItemStack[] { new ItemStack(Blocks.obsidian, 1) }, null, null, null, 128, 32, 0);
+ for (Iterator i$ = GT_ModHandler.getMaceratorRecipeList().entrySet().iterator(); i$.hasNext();)
+ {
+ Entry tRecipe = (Map.Entry)i$.next();
+ if (((RecipeOutput)tRecipe.getValue()).items.size() > 0) {
+ for (ItemStack tStack : ((IRecipeInput)tRecipe.getKey()).getInputs()) {
+ if (GT_Utility.isStackValid(tStack)) {
+ GT_Recipe.GT_Recipe_Map.sMaceratorRecipes.addFakeRecipe(true, new ItemStack[] { GT_Utility.copyAmount(((IRecipeInput)tRecipe.getKey()).getAmount(), new Object[] { tStack }) }, new ItemStack[] { (ItemStack)((RecipeOutput)tRecipe.getValue()).items.get(0) }, null, null, null, null, 400, 2, 0);
+ }
+ }
+ }
+ }
achievements = new GT_Achievements();
-/* 760: */ Map.Entry<IRecipeInput, RecipeOutput> tRecipe;
-/* 761:540 */ GT_Log.out.println("GT_Mod: Loading finished, deallocating temporary Init Variables.");
-/* 762:541 */ GregTech_API.sBeforeGTPreload = null;
-/* 763:542 */ GregTech_API.sAfterGTPreload = null;
-/* 764:543 */ GregTech_API.sBeforeGTLoad = null;
-/* 765:544 */ GregTech_API.sAfterGTLoad = null;
-/* 766:545 */ GregTech_API.sBeforeGTPostload = null;
-/* 767:546 */ GregTech_API.sAfterGTPostload = null;
-/* 768: */ }
-/* 769: */
-/* 770: */ @Mod.EventHandler
-/* 771: */ public void onServerStarting(FMLServerStartingEvent aEvent)
-/* 772: */ {
-/* 773:557 */ for (Runnable tRunnable : GregTech_API.sBeforeGTServerstart) {
-/* 774: */ try
-/* 775: */ {
-/* 776:559 */ tRunnable.run();
-/* 777: */ }
-/* 778: */ catch (Throwable e)
-/* 779: */ {
-/* 780:561 */ e.printStackTrace(GT_Log.err);
-/* 781: */ }
-/* 782: */ }
-/* 783:565 */ gregtechproxy.onServerStarting();
-/* 811:593 */ GT_Log.out.println("GT_Mod: Unificating outputs of all known Recipe Types.");
-/* 812:594 */ ArrayList<ItemStack> tStacks = new ArrayList(10000);
-/* 813:595 */ GT_Log.out.println("GT_Mod: IC2 Machines");
-/* 814:596 */ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.cannerBottle.getRecipes().values())
-/* 815: */ {
-/* 816: */ ItemStack tStack;
-/* 817:596 */ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
-/* 818:596 */ tStack = (ItemStack)i$.next();
-/* 819: */ }
-/* 820: */ }
-/* 821:597 */ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.centrifuge.getRecipes().values())
-/* 822: */ {
-/* 823: */ ItemStack tStack;
-/* 824:597 */ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
-/* 825:597 */ tStack = (ItemStack)i$.next();
-/* 826: */ }
-/* 827: */ }
-/* 828:598 */ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.compressor.getRecipes().values())
-/* 829: */ {
-/* 830: */ ItemStack tStack;
-/* 831:598 */ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
-/* 832:598 */ tStack = (ItemStack)i$.next();
-/* 833: */ }
-/* 834: */ }
-/* 835:599 */ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.extractor.getRecipes().values())
-/* 836: */ {
-/* 837: */ ItemStack tStack;
-/* 838:599 */ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
-/* 839:599 */ tStack = (ItemStack)i$.next();
-/* 840: */ }
-/* 841: */ }
-/* 842:600 */ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.macerator.getRecipes().values())
-/* 843: */ {
-/* 844: */ ItemStack tStack;
-/* 845:600 */ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
-/* 846:600 */ tStack = (ItemStack)i$.next();
-/* 847: */ }
-/* 848: */ }
-/* 849:601 */ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.metalformerCutting.getRecipes().values())
-/* 850: */ {
-/* 851: */ ItemStack tStack;
-/* 852:601 */ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
-/* 853:601 */ tStack = (ItemStack)i$.next();
-/* 854: */ }
-/* 855: */ }
-/* 856:602 */ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.metalformerExtruding.getRecipes().values())
-/* 857: */ {
-/* 858: */ ItemStack tStack;
-/* 859:602 */ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
-/* 860:602 */ tStack = (ItemStack)i$.next();
-/* 861: */ }
-/* 862: */ }
-/* 863:603 */ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.metalformerRolling.getRecipes().values())
-/* 864: */ {
-/* 865: */ ItemStack tStack;
-/* 866:603 */ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
-/* 867:603 */ tStack = (ItemStack)i$.next();
-/* 868: */ }
-/* 869: */ }
-/* 870:604 */ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.matterAmplifier.getRecipes().values())
-/* 871: */ {
-/* 872: */ ItemStack tStack;
-/* 873:604 */ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
-/* 874:604 */ tStack = (ItemStack)i$.next();
-/* 875: */ }
-/* 876: */ }
-/* 877:605 */ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.oreWashing.getRecipes().values())
-/* 878: */ {
-/* 879: */ ItemStack tStack;
-/* 880:605 */ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
-/* 881:605 */ tStack = (ItemStack)i$.next();
-/* 882: */ }
-/* 883: */ }
-/* 884:606 */ GT_Log.out.println("GT_Mod: Dungeon Loot");
-/* 885:607 */ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("dungeonChest").getItems(new Random())) {
-/* 886:607 */ tStacks.add(tContent.theItemId);
-/* 887: */ }
-/* 888:608 */ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("bonusChest").getItems(new Random())) {
-/* 889:608 */ tStacks.add(tContent.theItemId);
-/* 890: */ }
-/* 891:609 */ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("villageBlacksmith").getItems(new Random())) {
-/* 892:609 */ tStacks.add(tContent.theItemId);
-/* 893: */ }
-/* 894:610 */ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("strongholdCrossing").getItems(new Random())) {
-/* 895:610 */ tStacks.add(tContent.theItemId);
-/* 896: */ }
-/* 897:611 */ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("strongholdLibrary").getItems(new Random())) {
-/* 898:611 */ tStacks.add(tContent.theItemId);
-/* 899: */ }
-/* 900:612 */ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("strongholdCorridor").getItems(new Random())) {
-/* 901:612 */ tStacks.add(tContent.theItemId);
-/* 902: */ }
-/* 903:613 */ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("pyramidJungleDispenser").getItems(new Random())) {
-/* 904:613 */ tStacks.add(tContent.theItemId);
-/* 905: */ }
-/* 906:614 */ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("pyramidJungleChest").getItems(new Random())) {
-/* 907:614 */ tStacks.add(tContent.theItemId);
-/* 908: */ }
-/* 909:615 */ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("pyramidDesertyChest").getItems(new Random())) {
-/* 910:615 */ tStacks.add(tContent.theItemId);
-/* 911: */ }
-/* 912:616 */ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("mineshaftCorridor").getItems(new Random())) {
-/* 913:616 */ tStacks.add(tContent.theItemId);
-/* 914: */ }
-/* 915:617 */ GT_Log.out.println("GT_Mod: Smelting");
-/* 916: */ Object tStack;
-/* 917:618 */ for (Iterator i$ = FurnaceRecipes.smelting().getSmeltingList().values().iterator(); i$.hasNext(); tStacks.add((ItemStack)tStack)) {
-/* 918:618 */ tStack = i$.next();
-/* 919: */ }
-/* 920:619 */ if (gregtechproxy.mCraftingUnification)
-/* 921: */ {
-/* 922:620 */ GT_Log.out.println("GT_Mod: Crafting Recipes");
-/* 923:621 */ for (Object tRecipe : CraftingManager.getInstance().getRecipeList()) {
-/* 924:621 */ if ((tRecipe instanceof IRecipe)) {
-/* 925:621 */ tStacks.add(((IRecipe)tRecipe).getRecipeOutput());
-/* 926: */ }
-/* 927: */ }
-/* 928: */ }
-/* 929:624 */ for (ItemStack tOutput : tStacks) {
-/* 930:625 */ if (gregtechproxy.mRegisteredOres.contains(tOutput))
-/* 931: */ {
-/* 932:626 */ FMLLog.severe("GT-ERR-01: @ " + tOutput.getUnlocalizedName() + " " + tOutput.getDisplayName(), new Object[0]);
-/* 933:627 */ FMLLog.severe("A Recipe used an OreDict Item as Output directly, without copying it before!!! This is a typical CallByReference/CallByValue Error", new Object[0]);
-/* 934:628 */ FMLLog.severe("Said Item will be renamed to make the invalid Recipe visible, so that you can report it properly.", new Object[0]);
-/* 935:629 */ FMLLog.severe("Please check all Recipes outputting this Item, and report the Recipes to their Owner.", new Object[0]);
-/* 936:630 */ FMLLog.severe("The Owner of the ==>RECIPE<==, NOT the Owner of the Item, which has been mentioned above!!!", new Object[0]);
-/* 937:631 */ FMLLog.severe("And ONLY Recipes which are ==>OUTPUTTING<== the Item, sorry but I don't want failed Bug Reports.", new Object[0]);
-/* 938:632 */ FMLLog.severe("GregTech just reports this Error to you, so you can report it to the Mod causing the Problem.", new Object[0]);
-/* 939:633 */ FMLLog.severe("Even though I make that Bug visible, I can not and will not fix that for you, that's for the causing Mod to fix.", new Object[0]);
-/* 940:634 */ FMLLog.severe("And speaking of failed Reports:", new Object[0]);
-/* 941:635 */ FMLLog.severe("Both IC2 and GregTech CANNOT be the CAUSE of this Problem, so don't report it to either of them.", new Object[0]);
-/* 942:636 */ FMLLog.severe("I REPEAT, BOTH, IC2 and GregTech CANNOT be the source of THIS BUG. NO MATTER WHAT.", new Object[0]);
-/* 943:637 */ FMLLog.severe("Asking in the IC2 Forums, which Mod is causing that, won't help anyone, since it is not possible to determine, which Mod it is.", new Object[0]);
-/* 944:638 */ FMLLog.severe("If it would be possible, then I would have had added the Mod which is causing it to the Message already. But it is not possible.", new Object[0]);
-/* 945:639 */ FMLLog.severe("Sorry, but this Error is serious enough to justify this Wall-O-Text and the partially allcapsed Language.", new Object[0]);
-/* 946:640 */ FMLLog.severe("Also it is a Ban Reason on the IC2-Forums to post this seriously.", new Object[0]);
-/* 947:641 */ tOutput.setStackDisplayName("ERROR! PLEASE CHECK YOUR LOG FOR 'GT-ERR-01'!");
-/* 948: */ }
-/* 949: */ else
-/* 950: */ {
-/* 951:643 */ GT_OreDictUnificator.setStack(tOutput);
-/* 952: */ }
-/* 953: */ }
-/* 954:647 */ GT_Log.out.println("GT_Mod: ServerStarting-Phase finished!");
-/* 955:648 */ GT_Log.ore.println("GT_Mod: ServerStarting-Phase finished!");
-/* 956:650 */ for (Runnable tRunnable : GregTech_API.sAfterGTServerstart) {
-/* 957: */ try
-/* 958: */ {
-/* 959:652 */ tRunnable.run();
-/* 960: */ }
-/* 961: */ catch (Throwable e)
-/* 962: */ {
-/* 963:654 */ e.printStackTrace(GT_Log.err);
-/* 964: */ }
-/* 965: */ }
-/* 966: */ }
-/* 967: */
-/* 968: */ @Mod.EventHandler
-/* 969: */ public void onServerStarted(FMLServerStartedEvent aEvent)
-/* 970: */ {
-/* 971:661 */ gregtechproxy.onServerStarted();
-/* 972: */ }
-/* 973: */
-/* 974: */ @Mod.EventHandler
+ Map.Entry<IRecipeInput, RecipeOutput> tRecipe;
+ GT_Log.out.println("GT_Mod: Loading finished, deallocating temporary Init Variables.");
+ GregTech_API.sBeforeGTPreload = null;
+ GregTech_API.sAfterGTPreload = null;
+ GregTech_API.sBeforeGTLoad = null;
+ GregTech_API.sAfterGTLoad = null;
+ GregTech_API.sBeforeGTPostload = null;
+ GregTech_API.sAfterGTPostload = null;
+ }
+
+ @Mod.EventHandler
+ public void onServerStarting(FMLServerStartingEvent aEvent)
+ {
+ for (Runnable tRunnable : GregTech_API.sBeforeGTServerstart) {
+ try
+ {
+ tRunnable.run();
+ }
+ catch (Throwable e)
+ {
+ e.printStackTrace(GT_Log.err);
+ }
+ }
+ gregtechproxy.onServerStarting();
+ GT_Log.out.println("GT_Mod: Unificating outputs of all known Recipe Types.");
+ ArrayList<ItemStack> tStacks = new ArrayList(10000);
+ GT_Log.out.println("GT_Mod: IC2 Machines");
+ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.cannerBottle.getRecipes().values())
+ {
+ ItemStack tStack;
+ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
+ tStack = (ItemStack)i$.next();
+ }
+ }
+ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.centrifuge.getRecipes().values())
+ {
+ ItemStack tStack;
+ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
+ tStack = (ItemStack)i$.next();
+ }
+ }
+ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.compressor.getRecipes().values())
+ {
+ ItemStack tStack;
+ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
+ tStack = (ItemStack)i$.next();
+ }
+ }
+ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.extractor.getRecipes().values())
+ {
+ ItemStack tStack;
+ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
+ tStack = (ItemStack)i$.next();
+ }
+ }
+ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.macerator.getRecipes().values())
+ {
+ ItemStack tStack;
+ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
+ tStack = (ItemStack)i$.next();
+ }
+ }
+ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.metalformerCutting.getRecipes().values())
+ {
+ ItemStack tStack;
+ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
+ tStack = (ItemStack)i$.next();
+ }
+ }
+ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.metalformerExtruding.getRecipes().values())
+ {
+ ItemStack tStack;
+ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
+ tStack = (ItemStack)i$.next();
+ }
+ }
+ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.metalformerRolling.getRecipes().values())
+ {
+ ItemStack tStack;
+ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
+ tStack = (ItemStack)i$.next();
+ }
+ }
+ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.matterAmplifier.getRecipes().values())
+ {
+ ItemStack tStack;
+ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
+ tStack = (ItemStack)i$.next();
+ }
+ }
+ for (RecipeOutput tRecipe : ic2.api.recipe.Recipes.oreWashing.getRecipes().values())
+ {
+ ItemStack tStack;
+ for (Iterator i$ = tRecipe.items.iterator(); i$.hasNext(); tStacks.add(tStack)) {
+ tStack = (ItemStack)i$.next();
+ }
+ }
+ GT_Log.out.println("GT_Mod: Dungeon Loot");
+ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("dungeonChest").getItems(new Random())) {
+ tStacks.add(tContent.theItemId);
+ }
+ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("bonusChest").getItems(new Random())) {
+ tStacks.add(tContent.theItemId);
+ }
+ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("villageBlacksmith").getItems(new Random())) {
+ tStacks.add(tContent.theItemId);
+ }
+ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("strongholdCrossing").getItems(new Random())) {
+ tStacks.add(tContent.theItemId);
+ }
+ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("strongholdLibrary").getItems(new Random())) {
+ tStacks.add(tContent.theItemId);
+ }
+ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("strongholdCorridor").getItems(new Random())) {
+ tStacks.add(tContent.theItemId);
+ }
+ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("pyramidJungleDispenser").getItems(new Random())) {
+ tStacks.add(tContent.theItemId);
+ }
+ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("pyramidJungleChest").getItems(new Random())) {
+ tStacks.add(tContent.theItemId);
+ }
+ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("pyramidDesertyChest").getItems(new Random())) {
+ tStacks.add(tContent.theItemId);
+ }
+ for (WeightedRandomChestContent tContent : ChestGenHooks.getInfo("mineshaftCorridor").getItems(new Random())) {
+ tStacks.add(tContent.theItemId);
+ }
+ GT_Log.out.println("GT_Mod: Smelting");
+ Object tStack;
+ for (Iterator i$ = FurnaceRecipes.smelting().getSmeltingList().values().iterator(); i$.hasNext(); tStacks.add((ItemStack)tStack)) {
+ tStack = i$.next();
+ }
+ if (gregtechproxy.mCraftingUnification)
+ {
+ GT_Log.out.println("GT_Mod: Crafting Recipes");
+ for (Object tRecipe : CraftingManager.getInstance().getRecipeList()) {
+ if ((tRecipe instanceof IRecipe)) {
+ tStacks.add(((IRecipe)tRecipe).getRecipeOutput());
+ }
+ }
+ }
+ for (ItemStack tOutput : tStacks) {
+ if (gregtechproxy.mRegisteredOres.contains(tOutput))
+ {
+ FMLLog.severe("GT-ERR-01: @ " + tOutput.getUnlocalizedName() + " " + tOutput.getDisplayName(), new Object[0]);
+ FMLLog.severe("A Recipe used an OreDict Item as Output directly, without copying it before!!! This is a typical CallByReference/CallByValue Error", new Object[0]);
+ FMLLog.severe("Said Item will be renamed to make the invalid Recipe visible, so that you can report it properly.", new Object[0]);
+ FMLLog.severe("Please check all Recipes outputting this Item, and report the Recipes to their Owner.", new Object[0]);
+ FMLLog.severe("The Owner of the ==>RECIPE<==, NOT the Owner of the Item, which has been mentioned above!!!", new Object[0]);
+ FMLLog.severe("And ONLY Recipes which are ==>OUTPUTTING<== the Item, sorry but I don't want failed Bug Reports.", new Object[0]);
+ FMLLog.severe("GregTech just reports this Error to you, so you can report it to the Mod causing the Problem.", new Object[0]);
+ FMLLog.severe("Even though I make that Bug visible, I can not and will not fix that for you, that's for the causing Mod to fix.", new Object[0]);
+ FMLLog.severe("And speaking of failed Reports:", new Object[0]);
+ FMLLog.severe("Both IC2 and GregTech CANNOT be the CAUSE of this Problem, so don't report it to either of them.", new Object[0]);
+ FMLLog.severe("I REPEAT, BOTH, IC2 and GregTech CANNOT be the source of THIS BUG. NO MATTER WHAT.", new Object[0]);
+ FMLLog.severe("Asking in the IC2 Forums, which Mod is causing that, won't help anyone, since it is not possible to determine, which Mod it is.", new Object[0]);
+ FMLLog.severe("If it would be possible, then I would have had added the Mod which is causing it to the Message already. But it is not possible.", new Object[0]);
+ FMLLog.severe("Sorry, but this Error is serious enough to justify this Wall-O-Text and the partially allcapsed Language.", new Object[0]);
+ FMLLog.severe("Also it is a Ban Reason on the IC2-Forums to post this seriously.", new Object[0]);
+ tOutput.setStackDisplayName("ERROR! PLEASE CHECK YOUR LOG FOR 'GT-ERR-01'!");
+ }
+ else
+ {
+ GT_OreDictUnificator.setStack(tOutput);
+ }
+ }
+ GT_Log.out.println("GT_Mod: ServerStarting-Phase finished!");
+ GT_Log.ore.println("GT_Mod: ServerStarting-Phase finished!");
+ for (Runnable tRunnable : GregTech_API.sAfterGTServerstart) {
+ try
+ {
+ tRunnable.run();
+ }
+ catch (Throwable e)
+ {
+ e.printStackTrace(GT_Log.err);
+ }
+ }
+ }
+
+ @Mod.EventHandler
+ public void onServerStarted(FMLServerStartedEvent aEvent)
+ {
+ gregtechproxy.onServerStarted();
+ }
+
+ @Mod.EventHandler
public void onIDChangingEvent(FMLModIdMappingEvent aEvent)
{
GT_Utility.reInit();
@@ -984,127 +984,127 @@ public void onIDChangingEvent(FMLModIdMappingEvent aEvent)
}
}
-///* 975: */ public void onIDChangingEvent(FMLModIdMappingEvent aEvent)
-///* 976: */ {
-///* 977:666 */ GT_Utility.reInit();
-///* 978:667 */ GT_Recipe.reInit();
-///* 979: */ Map<GT_ItemStack, ?> tMap;
-///* 980:668 */ for (Iterator i$ = GregTech_API.sItemStackMappings.iterator(); i$.hasNext(); ) {
-///* 981:668 */ tMap = (Map)i$.next();
-///* 982: */ }
-///* 983: */ }
-/* 984: */
-/* 985: */ @Mod.EventHandler
-/* 986: */ public void onServerStopping(FMLServerStoppingEvent aEvent)
-/* 987: */ {
-/* 988:673 */ for (Runnable tRunnable : GregTech_API.sBeforeGTServerstop) {
-/* 989: */ try
-/* 990: */ {
-/* 991:675 */ tRunnable.run();
-/* 992: */ }
-/* 993: */ catch (Throwable e)
-/* 994: */ {
-/* 995:677 */ e.printStackTrace(GT_Log.err);
-/* 996: */ }
-/* 997: */ }
-/* 998:681 */ gregtechproxy.onServerStopping();
-/* 999: */ try
-/* :00: */ {
-/* :01:684 */ if ((GT_Values.D1) || (GT_Log.out != System.out))
-/* :02: */ {
-/* :03:685 */ GT_Log.out.println("*");
-/* :04:686 */ GT_Log.out.println("Printing List of all registered Objects inside the OreDictionary, now with free extra Sorting:");
-/* :05:687 */ GT_Log.out.println("*");GT_Log.out.println("*");GT_Log.out.println("*");
-/* :06: */
-/* :07:689 */ String[] tList = OreDictionary.getOreNames();
-/* :08:690 */ Arrays.sort(tList);
-/* :09:691 */ for (String tOreName : tList)
-/* :10: */ {
-/* :11:692 */ int tAmount = OreDictionary.getOres(tOreName).size();
-/* :12:693 */ if (tAmount > 0) {
-/* :13:693 */ GT_Log.out.println((tAmount < 10 ? " " : "") + tAmount + "x " + tOreName);
-/* :14: */ }
-/* :15: */ }
-/* :16:696 */ GT_Log.out.println("*");
-/* :17:697 */ GT_Log.out.println("Printing List of all registered Objects inside the Fluid Registry, now with free extra Sorting:");
-/* :18:698 */ GT_Log.out.println("*");GT_Log.out.println("*");GT_Log.out.println("*");
-/* :19: */
-/* :20:700 */ tList = (String[])FluidRegistry.getRegisteredFluids().keySet().toArray(new String[FluidRegistry.getRegisteredFluids().keySet().size()]);
-/* :21:701 */ Arrays.sort(tList);
-/* :22:702 */ for (String tFluidName : tList) {
-/* :23:702 */ GT_Log.out.println(tFluidName);
-/* :24: */ }
-/* :25:704 */ GT_Log.out.println("*");GT_Log.out.println("*");GT_Log.out.println("*");
-/* :26:705 */ GT_Log.out.println("Outputting all the Names inside the Biomeslist");
-/* :27:706 */ GT_Log.out.println("*");GT_Log.out.println("*");GT_Log.out.println("*");
-/* :28:708 */ for (int i = 0; i < BiomeGenBase.getBiomeGenArray().length; i++) {
-/* :29:709 */ if (BiomeGenBase.getBiomeGenArray()[i] != null) {
-/* :30:710 */ GT_Log.out.println(BiomeGenBase.getBiomeGenArray()[i].biomeID + " = " + BiomeGenBase.getBiomeGenArray()[i].biomeName);
-/* :31: */ }
-/* :32: */ }
-/* :33:713 */ GT_Log.out.println("*");GT_Log.out.println("*");GT_Log.out.println("*");
-/* :34:714 */ GT_Log.out.println("Printing List of generatable Materials");
-/* :35:715 */ GT_Log.out.println("*");GT_Log.out.println("*");GT_Log.out.println("*");
-/* :36:717 */ for (int i = 0; i < GregTech_API.sGeneratedMaterials.length; i++) {
-/* :37:718 */ if (GregTech_API.sGeneratedMaterials[i] == null) {
-/* :38:719 */ GT_Log.out.println("Index " + i + ":" + null);
-/* :39: */ } else {
-/* :40:721 */ GT_Log.out.println("Index " + i + ":" + GregTech_API.sGeneratedMaterials[i]);
-/* :41: */ }
-/* :42: */ }
-/* :43:725 */ GT_Log.out.println("*");GT_Log.out.println("*");GT_Log.out.println("*");
-/* :44:726 */ GT_Log.out.println("END GregTech-Debug");
-/* :45:727 */ GT_Log.out.println("*");GT_Log.out.println("*");GT_Log.out.println("*");
-/* :46: */ }
-/* :47: */ }
-/* :48: */ catch (Throwable e)
-/* :49: */ {
-/* :50:729 */ if (GT_Values.D1) {
-/* :51:729 */ e.printStackTrace(GT_Log.err);
-/* :52: */ }
-/* :53: */ }
-/* :54:731 */ for (Runnable tRunnable : GregTech_API.sAfterGTServerstop) {
-/* :55: */ try
-/* :56: */ {
-/* :57:733 */ tRunnable.run();
-/* :58: */ }
-/* :59: */ catch (Throwable e)
-/* :60: */ {
-/* :61:735 */ e.printStackTrace(GT_Log.err);
-/* :62: */ }
-/* :63: */ }
-/* :64: */ }
-/* :65: */
-/* :66: */ public boolean isServerSide()
-/* :67: */ {
-/* :68:740 */ return gregtechproxy.isServerSide();
-/* :69: */ }
-/* :70: */
-/* :71: */ public boolean isClientSide()
-/* :72: */ {
-/* :73:741 */ return gregtechproxy.isClientSide();
-/* :74: */ }
-/* :75: */
-/* :76: */ public boolean isBukkitSide()
-/* :77: */ {
-/* :78:742 */ return gregtechproxy.isBukkitSide();
-/* :79: */ }
-/* :80: */
-/* :81: */ public EntityPlayer getThePlayer()
-/* :82: */ {
-/* :83:743 */ return gregtechproxy.getThePlayer();
-/* :84: */ }
-/* :85: */
-/* :86: */ public int addArmor(String aArmorPrefix)
-/* :87: */ {
-/* :88:744 */ return gregtechproxy.addArmor(aArmorPrefix);
-/* :89: */ }
-/* :90: */
-/* :91: */ public void doSonictronSound(ItemStack aStack, World aWorld, double aX, double aY, double aZ)
-/* :92: */ {
-/* :93:745 */ gregtechproxy.doSonictronSound(aStack, aWorld, aX, aY, aZ);
-/* :94: */ }
-/* :95: */ }
+// public void onIDChangingEvent(FMLModIdMappingEvent aEvent)
+// {
+// GT_Utility.reInit();
+// GT_Recipe.reInit();
+// Map<GT_ItemStack, ?> tMap;
+// for (Iterator i$ = GregTech_API.sItemStackMappings.iterator(); i$.hasNext(); ) {
+// tMap = (Map)i$.next();
+// }
+// }
+
+ @Mod.EventHandler
+ public void onServerStopping(FMLServerStoppingEvent aEvent)
+ {
+ for (Runnable tRunnable : GregTech_API.sBeforeGTServerstop) {
+ try
+ {
+ tRunnable.run();
+ }
+ catch (Throwable e)
+ {
+ e.printStackTrace(GT_Log.err);
+ }
+ }
+ gregtechproxy.onServerStopping();
+ try
+ {
+ if ((GT_Values.D1) || (GT_Log.out != System.out))
+ {
+ GT_Log.out.println("*");
+ GT_Log.out.println("Printing List of all registered Objects inside the OreDictionary, now with free extra Sorting:");
+ GT_Log.out.println("*");GT_Log.out.println("*");GT_Log.out.println("*");
+
+ String[] tList = OreDictionary.getOreNames();
+ Arrays.sort(tList);
+ for (String tOreName : tList)
+ {
+ int tAmount = OreDictionary.getOres(tOreName).size();
+ if (tAmount > 0) {
+ GT_Log.out.println((tAmount < 10 ? " " : "") + tAmount + "x " + tOreName);
+ }
+ }
+ GT_Log.out.println("*");
+ GT_Log.out.println("Printing List of all registered Objects inside the Fluid Registry, now with free extra Sorting:");
+ GT_Log.out.println("*");GT_Log.out.println("*");GT_Log.out.println("*");
+
+ tList = (String[])FluidRegistry.getRegisteredFluids().keySet().toArray(new String[FluidRegistry.getRegisteredFluids().keySet().size()]);
+ Arrays.sort(tList);
+ for (String tFluidName : tList) {
+ GT_Log.out.println(tFluidName);
+ }
+ GT_Log.out.println("*");GT_Log.out.println("*");GT_Log.out.println("*");
+ GT_Log.out.println("Outputting all the Names inside the Biomeslist");
+ GT_Log.out.println("*");GT_Log.out.println("*");GT_Log.out.println("*");
+ for (int i = 0; i < BiomeGenBase.getBiomeGenArray().length; i++) {
+ if (BiomeGenBase.getBiomeGenArray()[i] != null) {
+ GT_Log.out.println(BiomeGenBase.getBiomeGenArray()[i].biomeID + " = " + BiomeGenBase.getBiomeGenArray()[i].biomeName);
+ }
+ }
+ GT_Log.out.println("*");GT_Log.out.println("*");GT_Log.out.println("*");
+ GT_Log.out.println("Printing List of generatable Materials");
+ GT_Log.out.println("*");GT_Log.out.println("*");GT_Log.out.println("*");
+ for (int i = 0; i < GregTech_API.sGeneratedMaterials.length; i++) {
+ if (GregTech_API.sGeneratedMaterials[i] == null) {
+ GT_Log.out.println("Index " + i + ":" + null);
+ } else {
+ GT_Log.out.println("Index " + i + ":" + GregTech_API.sGeneratedMaterials[i]);
+ }
+ }
+ GT_Log.out.println("*");GT_Log.out.println("*");GT_Log.out.println("*");
+ GT_Log.out.println("END GregTech-Debug");
+ GT_Log.out.println("*");GT_Log.out.println("*");GT_Log.out.println("*");
+ }
+ }
+ catch (Throwable e)
+ {
+ if (GT_Values.D1) {
+ e.printStackTrace(GT_Log.err);
+ }
+ }
+ for (Runnable tRunnable : GregTech_API.sAfterGTServerstop) {
+ try
+ {
+ tRunnable.run();
+ }
+ catch (Throwable e)
+ {
+ e.printStackTrace(GT_Log.err);
+ }
+ }
+ }
+
+ public boolean isServerSide()
+ {
+ return gregtechproxy.isServerSide();
+ }
+
+ public boolean isClientSide()
+ {
+ return gregtechproxy.isClientSide();
+ }
+
+ public boolean isBukkitSide()
+ {
+ return gregtechproxy.isBukkitSide();
+ }
+
+ public EntityPlayer getThePlayer()
+ {
+ return gregtechproxy.getThePlayer();
+ }
+
+ public int addArmor(String aArmorPrefix)
+ {
+ return gregtechproxy.addArmor(aArmorPrefix);
+ }
+
+ public void doSonictronSound(ItemStack aStack, World aWorld, double aX, double aY, double aZ)
+ {
+ gregtechproxy.doSonictronSound(aStack, aWorld, aX, aY, aZ);
+ }
+}
/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar