Advertisement
Guest User

Untitled

a guest
Mar 7th, 2014
2,485
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.79 KB | None | 0 0
  1. package HunterzCZ.IC2Fixes;
  2.  
  3. import ic2.api.item.Items;
  4. import ic2.api.recipe.Recipes;
  5.  
  6. import ic2.api.recipe.ICraftingRecipeManager;
  7. import ic2.core.AdvCraftingRecipeManager;
  8. import ic2.core.IC2;
  9. import ic2.core.Ic2Items;
  10. import ic2.core.RecipeGradual;
  11. import ic2.core.item.ItemGradual;
  12. import ic2.core.util.StackUtil;
  13.  
  14. //import shedar.mods.ic2.nuclearcontrol.IC2NuclearControl;
  15.  
  16. import net.minecraft.block.Block;
  17. import net.minecraft.item.Item;
  18. import net.minecraft.item.ItemStack;
  19.  
  20. import java.util.ArrayList;
  21.  
  22. import net.minecraft.block.Block;
  23. import net.minecraft.block.material.Material;
  24. import net.minecraft.item.Item;
  25. import net.minecraft.item.ItemStack;
  26. import net.minecraft.item.crafting.CraftingManager;
  27. import net.minecraft.item.crafting.IRecipe;
  28. import cpw.mods.fml.common.Mod;
  29. import cpw.mods.fml.common.Mod.EventHandler;
  30. import cpw.mods.fml.common.event.FMLInitializationEvent;
  31. import cpw.mods.fml.common.network.NetworkMod;
  32. import cpw.mods.fml.common.registry.GameRegistry;
  33. import cpw.mods.fml.common.registry.LanguageRegistry;
  34.  
  35. @Mod(modid = IC2Fixes.modid, name = "IC2 Fixes", version = "1.0", dependencies = "required-after:IC2")
  36. @NetworkMod(clientSideRequired = false, serverSideRequired = false)
  37. public class IC2Fixes
  38. {
  39.     public static final String modid = "IC2Fixes";
  40.    
  41.  
  42.     @EventHandler
  43.     public void load(FMLInitializationEvent event)
  44.     {
  45.        
  46.         removeRecipesWithResult(Ic2Items.iridiumDrill);
  47.         removeRecipesWithResult(Ic2Items.mvTransformer);
  48.         removeRecipesWithResult(Ic2Items.weedEx);
  49.         removeRecipesWithResult(Ic2Items.suBattery);
  50.         removeRecipesWithResult(Ic2Items.personalSafe);
  51.         removeRecipesWithResult(Ic2Items.nanoHelmet);
  52.         removeRecipesWithResult(Ic2Items.electricJetpack);
  53.         removeRecipesWithResult(Ic2Items.diamondDrill);
  54.  
  55.  
  56.        
  57.         AdvCraftingRecipeManager localAdvCraftingRecipeManager = (AdvCraftingRecipeManager) (ic2.api.recipe.Recipes.advRecipes = new AdvCraftingRecipeManager());
  58.        
  59.         localAdvCraftingRecipeManager.addRecipe(Ic2Items.iridiumDrill, new Object[] { " I ", "IdI", " C ", Character.valueOf('I'), Ic2Items.iridiumPlate, Character.valueOf('d'), StackUtil.copyWithWildCard(Ic2Items.diamondDrill), Character.valueOf('C'), StackUtil.copyWithWildCard(Ic2Items.energyCrystal) });
  60.         localAdvCraftingRecipeManager.addRecipe(Ic2Items.mvTransformer, new Object[] { " C ", " M ", " C ", Character.valueOf('M'), Ic2Items.machine, Character.valueOf('C'), Ic2Items.insulatedCopperCableItem });
  61.         localAdvCraftingRecipeManager.addRecipe(Ic2Items.weedEx, new Object[] { " R ", " G ", " C ", Character.valueOf('R'), Item.redstone, Character.valueOf('G'), Ic2Items.grinPowder, Character.valueOf('C'), Ic2Items.cell });
  62.         localAdvCraftingRecipeManager.addRecipe(StackUtil.copyWithSize(Ic2Items.suBattery, 5), new Object[] { " C ", " R ", " D ", Character.valueOf('D'), "dustCoal", Character.valueOf('R'), Item.redstone, Character.valueOf('C'), Ic2Items.insulatedCopperCableItem });
  63.         localAdvCraftingRecipeManager.addRecipe(StackUtil.copyWithSize(Ic2Items.suBattery, 5), new Object[] { " C ", " D ", " R ", Character.valueOf('D'), "dustCoal", Character.valueOf('R'), Item.redstone, Character.valueOf('C'), Ic2Items.insulatedCopperCableItem });
  64.         localAdvCraftingRecipeManager.addRecipe(StackUtil.copyWithSize(Ic2Items.suBattery, 8), new Object[] { " c ", " C ", " R ", Character.valueOf('R'), Item.redstone, Character.valueOf('C'), "dustHydratedCoal", Character.valueOf('c'), Ic2Items.insulatedCopperCableItem });
  65.         localAdvCraftingRecipeManager.addRecipe(StackUtil.copyWithSize(Ic2Items.suBattery, 8), new Object[] { " c ", " R ", " C ", Character.valueOf('R'), Item.redstone, Character.valueOf('C'), "dustHydratedCoal", Character.valueOf('c'), Ic2Items.insulatedCopperCableItem });
  66.         localAdvCraftingRecipeManager.addRecipe(Ic2Items.personalSafe, new Object[] { " c ", " M ", " C ", Character.valueOf('c'), Ic2Items.recipeObjectCircuit, Character.valueOf('C'), Block.chest, Character.valueOf('M'), Ic2Items.machine });
  67.         localAdvCraftingRecipeManager.addRecipe(Ic2Items.nanoHelmet, new Object[] { "CcC", "CGC", Character.valueOf('C'), Ic2Items.carbonPlate, Character.valueOf('c'), StackUtil.copyWithWildCard(Ic2Items.energyCrystal), Character.valueOf('G'), StackUtil.copyWithWildCard(Ic2Items.nightvisionGoggles) });
  68.         localAdvCraftingRecipeManager.addRecipe(Ic2Items.electricJetpack, new Object[] { "ICI", "IBI", "G G", Character.valueOf('I'), Ic2Items.casingiron, Character.valueOf('C'), Ic2Items.recipeObjectAdvCircuit, Character.valueOf('B'), Ic2Items.batBox, Character.valueOf('G'), Item.glowstone });
  69.         localAdvCraftingRecipeManager.addRecipe(Ic2Items.diamondDrill, new Object[] { " D ", "DdD", Character.valueOf('D'), "gemDiamond", Character.valueOf('d'), StackUtil.copyWithWildCard(Ic2Items.miningDrill) });
  70.        
  71.         //Recipes.advRecipes.addRecipe(shedar.mods.ic2.nuclearcontrol.items.itemRemoteSensorKit, new Object[] {"  F", " D ", "P  ", Character.valueOf('P'), Item.paper, Character.valueOf('D'), Items.getItem("digitalThermometer"), Character.valueOf('F'), Items.getItem("frequencyTransmitter")});
  72.         //shedar.mods.ic2.nuclearcontrol.items.        
  73.        
  74.     }
  75.    
  76.     private static void removeRecipesWithResult(ItemStack resultItem)
  77.     {
  78.         ArrayList recipes = (ArrayList) CraftingManager.getInstance().getRecipeList();
  79.  
  80.         for (int scan = 0; scan < recipes.size(); scan++)
  81.         {
  82.             IRecipe tmpRecipe = (IRecipe) recipes.get(scan);
  83.             ItemStack recipeResult = tmpRecipe.getRecipeOutput();
  84.             if (ItemStack.areItemStacksEqual(resultItem, recipeResult))
  85.             {
  86.                 System.out.println("[IC2Fixes] Fix Recipe: " + recipes.get(scan) + " -> " + recipeResult);
  87.                 recipes.remove(scan);
  88.             }
  89.         }
  90.     }
  91. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement