Advertisement
Guest User

Untitled

a guest
Oct 2nd, 2014
311
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 30.15 KB | None | 0 0
  1. package com.malkierian.plasmacraft.common;
  2.  
  3. import java.io.File;
  4.  
  5. import net.minecraft.block.Block;
  6. import net.minecraft.block.material.Material;
  7. import net.minecraft.client.Minecraft;
  8. import net.minecraft.init.Blocks;
  9. import net.minecraft.init.Items;
  10. import net.minecraft.item.Item;
  11. import net.minecraft.item.ItemArmor.ArmorMaterial;
  12. import net.minecraft.item.ItemStack;
  13. import net.minecraftforge.common.config.Configuration;
  14. import net.minecraftforge.fluids.Fluid;
  15. import net.minecraftforge.fluids.FluidRegistry;
  16. import net.minecraftforge.oredict.OreDictionary;
  17.  
  18. import com.malkierian.plasmacraft.common.Entities.EntityAcid;
  19. import com.malkierian.plasmacraft.common.Entities.EntityCryoBlast;
  20. import com.malkierian.plasmacraft.common.Entities.EntityLaser;
  21. import com.malkierian.plasmacraft.common.Entities.EntityLaserShotgun;
  22. import com.malkierian.plasmacraft.common.Entities.EntityPlasma;
  23. import com.malkierian.plasmacraft.common.Entities.EntityRailGun;
  24. import com.malkierian.plasmacraft.common.blocks.BlockAcidBarrier;
  25. import com.malkierian.plasmacraft.common.blocks.BlockAcidTNT;
  26. import com.malkierian.plasmacraft.common.blocks.BlockCausticFluids;
  27. import com.malkierian.plasmacraft.common.blocks.BlockGlowCloth;
  28. import com.malkierian.plasmacraft.common.blocks.BlockPlasmaBench;
  29. import com.malkierian.plasmacraft.common.blocks.BlockPlasmaOre;
  30. import com.malkierian.plasmacraft.common.blocks.BlockReinforcedGlass;
  31. import com.malkierian.plasmacraft.common.items.ItemAcidGrenade;
  32. import com.malkierian.plasmacraft.common.items.ItemCausticBoat;
  33. import com.malkierian.plasmacraft.common.items.ItemEnergyWeapon;
  34. import com.malkierian.plasmacraft.common.items.ItemPlasma;
  35. import com.malkierian.plasmacraft.common.items.ItemPlasmaArmor;
  36. import com.malkierian.plasmacraft.common.items.ItemVial;
  37.  
  38. import cpw.mods.fml.common.FMLCommonHandler;
  39. import cpw.mods.fml.common.Mod;
  40. import cpw.mods.fml.common.Mod.EventHandler;
  41. import cpw.mods.fml.common.Mod.Instance;
  42. import cpw.mods.fml.common.SidedProxy;
  43. import cpw.mods.fml.common.event.FMLInitializationEvent;
  44. import cpw.mods.fml.common.event.FMLPostInitializationEvent;
  45. import cpw.mods.fml.common.event.FMLPreInitializationEvent;
  46. import cpw.mods.fml.common.registry.EntityRegistry;
  47. import cpw.mods.fml.common.registry.GameRegistry;
  48. import cpw.mods.fml.relauncher.Side;
  49.  
  50. @Mod(modid = "plasmacraft", name = "PlasmaCraft", version = "0.3.4")
  51. public class PlasmaCraft
  52. {
  53.     public static String MOD_ID = "plasmacraft";
  54.    
  55.     public static PlasmaTab plasmaTab;
  56.    
  57.     public static Block acidBarrier;
  58.    
  59.     public static Block orePlasma;
  60.     public static Block oreLeadBlock;
  61.     public static Block glowCloth;
  62.    
  63.     public static Block plasmaBench;
  64.    
  65.     public static int causticID = 180;
  66.  
  67.     public static BlockCausticFluids acidBlock;
  68.     public static BlockCausticFluids cryoniteBlock;
  69.     public static BlockCausticFluids neptuniumBlock;
  70.     public static BlockCausticFluids netherflowBlock;
  71.     public static BlockCausticFluids obsidiumBlock;
  72.     public static BlockCausticFluids plutoniumBlock;
  73.     public static BlockCausticFluids radioniteBlock;
  74.     public static BlockCausticFluids uraniumBlock;
  75.     public static Fluid acidFluid;
  76.     public static Fluid cryoniteFluid;
  77.     public static Fluid neptuniumFluid;
  78.     public static Fluid netherflowFluid;
  79.     public static Fluid obsidiumFluid;
  80.     public static Fluid plutoniumFluid;
  81.     public static Fluid radioniteFluid;
  82.     public static Fluid uraniumFluid;
  83.    
  84.     public static Block acidTnt;
  85.     public static Block frozenCryonite;
  86.     public static Block reinforcedGlass;
  87.  
  88.     public static Item goopAcid;
  89.     public static Item goopCryonite;
  90.     public static Item goopNeptunium;
  91.     public static Item goopNetherflow;
  92.     public static Item goopObsidium;
  93.     public static Item goopPlutonium;
  94.     public static Item goopRadionite;
  95.     public static Item goopUranium;
  96.     public static Item plasma;
  97.     public static Item acidGrenade;
  98.     public static Item causticBoat;
  99.     public static Item thermoPellet;
  100.  
  101.     public static Item ingotCryonite;
  102.     public static Item ingotLead;
  103.     public static Item ingotNeptunium;
  104.     public static Item ingotNetherflow;
  105.     public static Item ingotObsidium;
  106.     public static Item ingotPlutonium;
  107.     public static Item ingotRadionite;
  108.     public static Item ingotUranium;
  109.    
  110.     public static Item hazmatBoots;
  111.     public static Item hazmatHood;
  112.     public static Item hazmatJacket;
  113.     public static Item hazmatPants;
  114.     public static Item plasmaLeather;
  115.    
  116.     public static Item acidVial;
  117.     public static Item causticVial;
  118.     public static Item cryoniteVial;
  119.     public static Item neptuniumVial;
  120.     public static Item netherflowVial;
  121.     public static Item obsidiumVial;
  122.     public static Item plutoniumVial;
  123.     public static Item radioniteVial;
  124.     public static Item uraniumVial;
  125.    
  126.     public static Item acidgun;
  127.     public static Item batteryCharged;
  128.     public static Item batteryCryo;
  129.     public static Item batteryEmpty;
  130.     public static Item batteryOverCharged;
  131.     public static Item batteryPlasma;
  132.     public static Item beamSplitter;
  133.     public static Item cryoblaster;
  134.     public static Item energyCell;
  135.     public static Item lasergun;
  136.     public static Item lasergunsplit;
  137.     public static Item lasershotgun;
  138.     public static Item plasmagun;
  139.     public static Item plasmagunsplit;
  140.     public static Item railgun;
  141.  
  142.     public static final int plutoniumMeta = 0;
  143.     public static final int radioniteMeta = 1;
  144.     public static final int neptuniumMeta = 2;
  145.     public static final int obsidiumMeta = 3;
  146.     public static final int uraniumMeta = 4;
  147.     public static final int leadMeta = 5;
  148.    
  149.     public static boolean liquidSourceExplodesAfterCausticExplosion;
  150.    
  151.     public static int acidLakeYCutoff = 48;
  152.     public static int acidSpoutCount = 20;
  153.     public static int acidSpoutYRange = 30;
  154.     public static int acidSpoutYStart = 8;
  155.     public static int leadOreVeinCount = 6;
  156.     public static int leadOreVeinSize = 6;
  157.     public static int leadOreYRange = 80;
  158.     public static int leadOreYStart = 4;
  159.     public static int neptuniumOreVeinCount = 6;
  160.     public static int neptuniumOreVeinSize = 10;
  161.     public static int neptuniumOreYRange = 64;
  162.     public static int neptuniumOreYStart = 32;
  163.     public static int neptuniumSpoutCount = 20;
  164.     public static int neptuniumSpoutYRange = 64;
  165.     public static int neptuniumSpoutYStart = 8;
  166.     public static int netherflowLakeChance = 32;
  167.     public static int netherflowLakeYCutoff = 96;
  168.     public static int netherflowLakeYRange = 16;
  169.     public static int netherflowLakeYStart = 56;
  170.     public static int netherflowSpoutCount = 20;
  171.     public static int netherflowSpoutYRange = 96;
  172.     public static int netherflowSpoutYStart = 16;
  173.     public static int obsidiumOreVeinCount = 4;
  174.     public static int obsidiumOreVeinSize = 10;
  175.     public static int obsidiumOreYRange = 64;
  176.     public static int obsidiumOreYStart = 32;
  177.     public static int plutoniumOreVeinCount = 4;
  178.     public static int plutoniumOreVeinSize = 6;
  179.     public static int plutoniumOreYRange = 16;
  180.     public static int plutoniumOreYStart = 4;
  181.     public static int radioniteOreVeinCount = 4;
  182.     public static int radioniteOreVeinSize = 6;
  183.     public static int radioniteOreYRange = 24;
  184.     public static int radioniteOreYStart = 4;
  185.     public static int uraniumOreVeinCount = 4;
  186.     public static int uraniumOreVeinSize = 6;
  187.     public static int uraniumOreYRange = 16;
  188.     public static int uraniumOreYStart = 4;
  189.    
  190.     public static final int glowClothAcidMeta = 0;
  191.     public static final int glowClothRadioniteMeta = 1;
  192.     public static final int glowClothNetherflowMeta = 2;
  193.     public static final int glowClothNeptuniumMeta = 3;
  194.     public static final int glowClothUraniumMeta = 4;
  195.     public static final int glowClothPlutoniumMeta = 5;
  196.     public static final int glowClothCryoniteMeta = 6;
  197.     public static final int glowClothObsidiumMeta = 7;
  198.  
  199.     public static boolean generateLead;
  200.     public static boolean generateUranium;
  201.     public static boolean generatePlutonium;
  202.  
  203.     public static int plasmaBenchFrontAnim;
  204.    
  205.     // The instance of your mod that Forge uses.
  206.     @Instance("PlasmaCraft")
  207.     public static PlasmaCraft instance;
  208.    
  209. //  private GuiHandler guiHandler = new GuiHandler();
  210.    
  211.     // Says where the client and server 'proxy' code is loaded.
  212.     @SidedProxy(clientSide="com.malkierian.plasmacraft.client.ClientProxy", serverSide="com.malkierian.plasmacraft.common.CommonProxy")
  213.     public static CommonProxy proxy;
  214.    
  215.     @EventHandler
  216.     public void preInit(FMLPreInitializationEvent event)
  217.     {
  218.         instance = this;
  219.     }
  220.    
  221.     @EventHandler
  222.     public void load(FMLInitializationEvent event)
  223.     {
  224.         loadConfig();
  225.        
  226. //      NetworkRegistry.INSTANCE.registerGuiHandler(this, guiHandler);
  227.        
  228.         proxy.registerRenderers();
  229.        
  230. //      MinecraftForge.EVENT_BUS.register(new PCBucketFillEvent());
  231.        
  232.         plasmaTab = new PlasmaTab("PlasmaCraft");
  233.        
  234.         registerBlocks();
  235.        
  236.         registerFuel();
  237.        
  238.         registerItems();
  239.        
  240.         registerRecipes();
  241.        
  242.         registerOres();
  243.        
  244.         registerTileEntities();
  245.        
  246.         proxy.registerTextureFX();
  247.        
  248.         registerEntities();
  249.        
  250. //      GameRegistry.registerWorldGenerator(new WorldGenerator());
  251.     }
  252.  
  253.     @EventHandler
  254.     public void postInit(FMLPostInitializationEvent event)
  255.     {
  256.         // Stub Method
  257.     }
  258.    
  259.     private void registerBlocks()
  260.     {
  261.         orePlasma = new BlockPlasmaOre().setLightLevel(0.5334f).setBlockName("orePlasma");
  262.         GameRegistry.registerBlock(orePlasma, com.malkierian.plasmacraft.common.items.ItemPlasmaOre.class, "orePlasma");
  263.        
  264.         acidFluid = new Fluid("acid").setDensity(80).setViscosity(100);
  265.         cryoniteFluid = new Fluid("cryonite").setDensity(80).setViscosity(200);
  266.         neptuniumFluid = new Fluid("neptunium").setDensity(80).setViscosity(300);
  267.         netherflowFluid = new Fluid("netherflow").setDensity(80).setViscosity(400);
  268.         obsidiumFluid = new Fluid("obsidium").setDensity(80).setViscosity(600);
  269.         plutoniumFluid = new Fluid("plutonium").setDensity(80).setViscosity(800);
  270.         radioniteFluid = new Fluid("radionite").setDensity(80).setViscosity(1000);
  271.         uraniumFluid = new Fluid("uranium").setDensity(80).setViscosity(1200);
  272.         FluidRegistry.registerFluid(acidFluid);
  273.         FluidRegistry.registerFluid(cryoniteFluid);
  274.         FluidRegistry.registerFluid(neptuniumFluid);
  275.         FluidRegistry.registerFluid(netherflowFluid);
  276.         FluidRegistry.registerFluid(obsidiumFluid);
  277.         FluidRegistry.registerFluid(plutoniumFluid);
  278.         FluidRegistry.registerFluid(radioniteFluid);
  279.         FluidRegistry.registerFluid(uraniumFluid);
  280.  
  281.         acidBlock = (BlockCausticFluids) new BlockCausticFluids(acidFluid, Material.water).setBlockName("acid");
  282.         cryoniteBlock = (BlockCausticFluids) new BlockCausticFluids(cryoniteFluid, Material.water).setBlockName("cryonite");
  283.         neptuniumBlock = (BlockCausticFluids) new BlockCausticFluids(neptuniumFluid, Material.water).setBlockName("neptunium");
  284.         netherflowBlock = (BlockCausticFluids) new BlockCausticFluids(netherflowFluid, Material.water).setBlockName("netherflow");
  285.         obsidiumBlock = (BlockCausticFluids) new BlockCausticFluids(obsidiumFluid, Material.water).setBlockName("obsidium");
  286.         plutoniumBlock = (BlockCausticFluids) new BlockCausticFluids(plutoniumFluid, Material.water).setBlockName("plutonium");
  287.         radioniteBlock = (BlockCausticFluids) new BlockCausticFluids(radioniteFluid, Material.water).setBlockName("radionite");
  288.         uraniumBlock = (BlockCausticFluids) new BlockCausticFluids(uraniumFluid, Material.water).setBlockName("uranium");
  289.         GameRegistry.registerBlock(acidBlock, "Acid");
  290.         GameRegistry.registerBlock(cryoniteBlock, "Cryonite");
  291.         GameRegistry.registerBlock(neptuniumBlock, "Neptunium");
  292.         GameRegistry.registerBlock(netherflowBlock, "Netherflow");
  293.         GameRegistry.registerBlock(obsidiumBlock, "Obsidium");
  294.         GameRegistry.registerBlock(plutoniumBlock, "Plutonium");
  295.         GameRegistry.registerBlock(radioniteBlock, "Radionite");
  296.         GameRegistry.registerBlock(uraniumBlock, "Uranium");
  297.        
  298.         glowCloth = new BlockGlowCloth().setBlockName("glowCloth");
  299.         GameRegistry.registerBlock(glowCloth, com.malkierian.plasmacraft.common.items.ItemGlowCloth.class, "glowCloth");
  300.        
  301.         frozenCryonite = (new BlockReinforcedGlass("frozenCryonite", Material.glass, false, 1.0F)).setBlockName("frozenCryonite");
  302.         reinforcedGlass = (new BlockReinforcedGlass("reinforcedGlass", Material.glass, false, 500.0F)).setBlockName("reinforcedGlass");
  303.         GameRegistry.registerBlock(frozenCryonite, "Frozen Cryonite");
  304.         GameRegistry.registerBlock(reinforcedGlass, "Reinforced Glass");
  305.        
  306.         plasmaBench = (new BlockPlasmaBench()).setBlockName("plasmaBench");
  307.         GameRegistry.registerBlock(plasmaBench, "Plasmificator");
  308.        
  309.         acidBarrier = (new BlockAcidBarrier()).setBlockName("acidBarrier");
  310.         GameRegistry.registerBlock(acidBarrier, "Acid Barrier");
  311.        
  312.         acidTnt = (new BlockAcidTNT()).setBlockName("acidTnt");
  313.         GameRegistry.registerBlock(acidTnt, "Acid TNT");
  314.     }
  315.    
  316.     private void registerEntities()
  317.     {
  318.         int entityID = EntityRegistry.findGlobalUniqueEntityId();
  319.         EntityRegistry.registerGlobalEntityID(EntityCausticBoat.class, "causticBoat", entityID);
  320.         EntityRegistry.registerModEntity(EntityCausticBoat.class, "causticBoat", entityID, this, 64, 5, true);
  321.        
  322.         entityID = EntityRegistry.findGlobalUniqueEntityId();
  323.         EntityRegistry.registerGlobalEntityID(EntityAcidTNTPrimed.class, "acidTntPrimed", entityID);
  324.         EntityRegistry.registerModEntity(EntityAcidTNTPrimed.class, "acidTntPrimed", entityID, this, 64, 100, false);
  325.        
  326.         entityID = EntityRegistry.findGlobalUniqueEntityId();
  327.         EntityRegistry.registerGlobalEntityID(EntityAcidGrenade.class, "acidGrenade", entityID);
  328.         EntityRegistry.registerModEntity(EntityAcidGrenade.class, "acidGrenade", entityID, this, 32, 100, true);
  329.        
  330.         entityID = EntityRegistry.findGlobalUniqueEntityId();
  331.         EntityRegistry.registerGlobalEntityID(EntityLaser.class, "laser", entityID);
  332.         EntityRegistry.registerModEntity(EntityLaser.class, "laser", entityID, this, 32, 100, true);
  333.        
  334.         entityID = EntityRegistry.findGlobalUniqueEntityId();
  335.         EntityRegistry.registerGlobalEntityID(EntityLaserShotgun.class, "laserShotgun", entityID);
  336.         EntityRegistry.registerModEntity(EntityLaserShotgun.class, "laserShotgun", entityID, this, 32, 100, true);
  337.        
  338.         entityID = EntityRegistry.findGlobalUniqueEntityId();
  339.         EntityRegistry.registerGlobalEntityID(EntityPlasma.class, "plasma", entityID);
  340.         EntityRegistry.registerModEntity(EntityPlasma.class, "plasma", entityID, this, 32, 100, true);
  341.        
  342.         entityID = EntityRegistry.findGlobalUniqueEntityId();
  343.         EntityRegistry.registerGlobalEntityID(EntityRailGun.class, "railGun", entityID);
  344.         EntityRegistry.registerModEntity(EntityRailGun.class, "railGun", entityID, this, 32, 100, true);
  345.        
  346.         entityID = EntityRegistry.findGlobalUniqueEntityId();
  347.         EntityRegistry.registerGlobalEntityID(EntityAcid.class, "acid", entityID);
  348.         EntityRegistry.registerModEntity(EntityAcid.class, "acid", entityID, this, 32, 100, true);
  349.        
  350.         entityID = EntityRegistry.findGlobalUniqueEntityId();
  351.         EntityRegistry.registerGlobalEntityID(EntityCryoBlast.class, "cryoBlast", entityID);
  352.         EntityRegistry.registerModEntity(EntityCryoBlast.class, "cryoBlast", entityID, this, 32, 100, true);
  353.        
  354. //      entityID = EntityRegistry.findGlobalUniqueEntityId();
  355. //      MinecraftForge.registerEntity(EntityMutantCow.class,     this, 170, 32, 100, true);
  356.     }
  357.    
  358.     private void registerFuel()
  359.     {
  360.         GameRegistry.registerFuelHandler(new FuelHandler());
  361.     }
  362.    
  363.     private void registerItems()
  364.     {
  365.         goopAcid = (new ItemPlasma()).setUnlocalizedName("goopAcid");
  366.         goopCryonite = (new ItemPlasma()).setUnlocalizedName("goopCryonite");
  367.         goopNeptunium = (new ItemPlasma()).setUnlocalizedName("goopNeptunium");
  368.         goopNetherflow = (new ItemPlasma()).setUnlocalizedName("goopNetherflow");
  369.         goopObsidium = (new ItemPlasma()).setUnlocalizedName("goopObsidium");
  370.         goopPlutonium = (new ItemPlasma()).setUnlocalizedName("goopPlutonium");
  371.         goopRadionite = (new ItemPlasma()).setUnlocalizedName("goopRadionite");
  372.         goopUranium = (new ItemPlasma()).setUnlocalizedName("goopUranium");
  373.        
  374.         ingotCryonite = (new ItemPlasma()).setUnlocalizedName("ingotCryonite");
  375.         ingotLead = (new ItemPlasma()).setUnlocalizedName("ingotLead");
  376.         ingotNeptunium = (new ItemPlasma()).setUnlocalizedName("ingotNeptunium");
  377.         ingotNetherflow = (new ItemPlasma()).setUnlocalizedName("ingotNetherflow");
  378.         ingotObsidium = (new ItemPlasma()).setUnlocalizedName("ingotObsidium");
  379.         ingotPlutonium = (new ItemPlasma()).setUnlocalizedName("ingotPlutonium");
  380.         ingotRadionite = (new ItemPlasma()).setUnlocalizedName("ingotRadionite");
  381.         ingotUranium = (new ItemPlasma()).setUnlocalizedName("ingotUranium");
  382.         plasma = (new ItemPlasma()).setUnlocalizedName("plasma");
  383.  
  384.         acidVial = (new ItemVial(acidBlock)).setUnlocalizedName("vial_acid");
  385.         causticVial = (new ItemVial(Blocks.air)).setUnlocalizedName("vial_empty");
  386.         cryoniteVial = (new ItemVial(cryoniteBlock)).setUnlocalizedName("vial_cryonite");
  387.         neptuniumVial = (new ItemVial(neptuniumBlock)).setUnlocalizedName("vial_neptunium");
  388.         netherflowVial = (new ItemVial(netherflowBlock)).setUnlocalizedName("vial_netherflow");
  389.         obsidiumVial = (new ItemVial(obsidiumBlock)).setUnlocalizedName("vial_obsidium");
  390.         plutoniumVial = (new ItemVial(plutoniumBlock)).setUnlocalizedName("vial_plutonium");
  391.         radioniteVial = (new ItemVial(radioniteBlock)).setUnlocalizedName("vial_radionite");
  392.         uraniumVial = (new ItemVial(uraniumBlock)).setUnlocalizedName("vial_uranium");
  393.        
  394.         causticBoat = (new ItemCausticBoat()).setUnlocalizedName("causticBoat");
  395.  
  396.         batteryEmpty = (new ItemPlasma()).setUnlocalizedName("batteryEmpty");
  397.         batteryCryo = (new ItemPlasma()).setUnlocalizedName("batteryCryonite");
  398.         batteryCharged = (new ItemPlasma()).setUnlocalizedName("batteryCharged");
  399.         batteryOverCharged = (new ItemPlasma()).setUnlocalizedName("batteryOvercharged");
  400.         batteryPlasma = (new ItemPlasma()).setUnlocalizedName("batteryPlasma");
  401.         beamSplitter = (new ItemPlasma()).setUnlocalizedName("beamSplitter");
  402.         energyCell = (new ItemPlasma()).setUnlocalizedName("energyCell");
  403.         thermoPellet = (new ItemPlasma()).setUnlocalizedName("thermopellet");
  404.        
  405.         acidgun = (new ItemEnergyWeapon(200)).setUnlocalizedName("acidGun");
  406.         cryoblaster = (new ItemEnergyWeapon(100)).setUnlocalizedName("cryoBlaster");
  407.         lasershotgun = (new ItemEnergyWeapon(200)).setUnlocalizedName("laserShotgun");
  408.         lasergun = (new ItemEnergyWeapon(200)).setUnlocalizedName("laserGun");
  409.         lasergunsplit = (new ItemEnergyWeapon(300)).setUnlocalizedName("laserGunSplit");
  410.         plasmagun = (new ItemEnergyWeapon(200)).setUnlocalizedName("plasmaGun");
  411.         plasmagunsplit = (new ItemEnergyWeapon(300)).setUnlocalizedName("plasmaGunSplit");
  412.         railgun = (new ItemEnergyWeapon(200)).setUnlocalizedName("railGun");
  413.        
  414.         acidGrenade = new ItemAcidGrenade().setUnlocalizedName("acidGrenade");
  415.  
  416.         hazmatBoots = (new ItemPlasmaArmor(ArmorMaterial.GOLD, proxy.addArmor("hazmat"), 3)).setUnlocalizedName("hazmatBoots");
  417.         hazmatHood = (new ItemPlasmaArmor(ArmorMaterial.GOLD, proxy.addArmor("hazmat"), 0)).setUnlocalizedName("hazmatHood");
  418.         hazmatJacket = (new ItemPlasmaArmor(ArmorMaterial.GOLD, proxy.addArmor("hazmat"), 1)).setUnlocalizedName("hazmatJacket");
  419.         hazmatPants = (new ItemPlasmaArmor(ArmorMaterial.GOLD, proxy.addArmor("hazmat"), 2)).setUnlocalizedName("hazmatPants");
  420.        
  421.         plasmaLeather = (new ItemPlasma()).setUnlocalizedName("plasmaLeather");
  422.  
  423.         GameRegistry.registerItem(goopAcid, "Acid Goop");
  424.         GameRegistry.registerItem(goopCryonite, "Cryonite Goop");
  425.         GameRegistry.registerItem(goopNeptunium, "Neptunium Goop");
  426.         GameRegistry.registerItem(goopNetherflow, "Netherflow Goop");
  427.         GameRegistry.registerItem(goopObsidium, "Obsidium Goop");
  428.         GameRegistry.registerItem(goopPlutonium, "Plutonium Goop");
  429.         GameRegistry.registerItem(goopRadionite, "Radionite Goop");
  430.         GameRegistry.registerItem(goopUranium, "Uranium Goop");
  431.  
  432.         GameRegistry.registerItem(ingotCryonite, "Cryonite Ingot");
  433.         GameRegistry.registerItem(ingotLead, "Lead Ingot");
  434.         GameRegistry.registerItem(ingotNeptunium, "Neptunium Ingot");
  435.         GameRegistry.registerItem(ingotNetherflow, "Netherflow Ingot");
  436.         GameRegistry.registerItem(ingotObsidium, "Obsidium Ingot");
  437.         GameRegistry.registerItem(ingotPlutonium, "Plutonium Ingot");
  438.         GameRegistry.registerItem(ingotRadionite, "Radionite Ingot");
  439.         GameRegistry.registerItem(ingotUranium, "Uranium Ingot");
  440.         GameRegistry.registerItem(plasma, "Plasma");
  441.  
  442.         GameRegistry.registerItem(acidVial, "Acid Vial");
  443.         GameRegistry.registerItem(causticVial, "Caustic Vial");
  444.         GameRegistry.registerItem(cryoniteVial, "Cryonite Vial");
  445.         GameRegistry.registerItem(neptuniumVial, "Neptunium Vial");
  446.         GameRegistry.registerItem(netherflowVial, "Netherflow Vial");
  447.         GameRegistry.registerItem(obsidiumVial, "Obsidium Vial");
  448.         GameRegistry.registerItem(plutoniumVial, "Plutonium Vial");
  449.         GameRegistry.registerItem(radioniteVial, "Radionite Vial");
  450.         GameRegistry.registerItem(uraniumVial, "Uranium Vial");
  451.  
  452.         GameRegistry.registerItem(causticBoat, "Caustic Boat");
  453.  
  454.         GameRegistry.registerItem(batteryEmpty, "Empty Battery");
  455.         GameRegistry.registerItem(batteryCryo, "Cryo Battery");
  456.         GameRegistry.registerItem(batteryCharged, "Charged Caustic Battery");
  457.         GameRegistry.registerItem(batteryOverCharged, "Overcharged Caustic Battery");
  458.         GameRegistry.registerItem(batteryPlasma, "Plasma Battery");
  459.         GameRegistry.registerItem(beamSplitter, "Beam Splitter");
  460.         GameRegistry.registerItem(energyCell, "Energy Cell");
  461.         GameRegistry.registerItem(thermoPellet, "Thermopellet");
  462.  
  463.         GameRegistry.registerItem(acidgun, "Acid Launcher");
  464.         GameRegistry.registerItem(cryoblaster, "Cryo Blaster");
  465.         GameRegistry.registerItem(lasershotgun, "Laser Shotgun");
  466.         GameRegistry.registerItem(lasergun, "Laser Rifle");
  467.         GameRegistry.registerItem(lasergunsplit, "Split Beam Laser Rifle");
  468.         GameRegistry.registerItem(plasmagun, "Plasma Rifle");
  469.         GameRegistry.registerItem(plasmagunsplit, "Split Beam Plasma Rifle");
  470.         GameRegistry.registerItem(railgun, "Railgun");
  471.  
  472.         GameRegistry.registerItem(acidGrenade, "Acid Grenade");
  473.  
  474.         GameRegistry.registerItem(plasmaLeather, "Plasma Leather");
  475.  
  476.         GameRegistry.registerItem(hazmatBoots, "Hazmat Boots");
  477.         GameRegistry.registerItem(hazmatHood, "Hazmat Hood");
  478.         GameRegistry.registerItem(hazmatJacket, "Hazmat Jacket");
  479.         GameRegistry.registerItem(hazmatPants, "Hazmat Pants");
  480.     }
  481.    
  482.     private void registerOres()
  483.     {
  484.         OreDictionary.registerOre("orePlutonium", new ItemStack(orePlasma, 1, plutoniumMeta));
  485.         OreDictionary.registerOre("oreUranium", new ItemStack(orePlasma, 1, uraniumMeta));
  486.         OreDictionary.registerOre("oreLead", new ItemStack(orePlasma, 1, leadMeta));
  487.        
  488.         OreDictionary.registerOre("ingotPlutonium", new ItemStack(ingotPlutonium, 1));
  489.         OreDictionary.registerOre("ingotUranium", new ItemStack(ingotUranium, 1));
  490.         OreDictionary.registerOre("ingotLead", ingotLead);
  491.     }
  492.    
  493.     private void registerRecipes()
  494.     {
  495.         GameRegistry.addShapelessRecipe(new ItemStack(glowCloth, 1, glowClothAcidMeta), goopAcid, new ItemStack(Blocks.wool, 1, 0));
  496.         GameRegistry.addShapelessRecipe(new ItemStack(glowCloth, 1, glowClothPlutoniumMeta), goopPlutonium, new ItemStack(Blocks.wool, 1, 0));
  497.         GameRegistry.addShapelessRecipe(new ItemStack(glowCloth, 1, glowClothRadioniteMeta), goopRadionite, new ItemStack(Blocks.wool, 1, 0));
  498.         GameRegistry.addShapelessRecipe(new ItemStack(glowCloth, 1, glowClothNeptuniumMeta), goopNeptunium, new ItemStack(Blocks.wool, 1, 0));
  499.         GameRegistry.addShapelessRecipe(new ItemStack(glowCloth, 1, glowClothNetherflowMeta), goopNetherflow, new ItemStack(Blocks.wool, 1, 0));
  500.         GameRegistry.addShapelessRecipe(new ItemStack(glowCloth, 1, glowClothObsidiumMeta), goopObsidium, new ItemStack(Blocks.wool, 1, 0));
  501.         GameRegistry.addShapelessRecipe(new ItemStack(glowCloth, 1, glowClothCryoniteMeta), goopCryonite, new ItemStack(Blocks.wool, 1, 0));
  502.         GameRegistry.addShapelessRecipe(new ItemStack(glowCloth, 1, glowClothUraniumMeta), goopUranium, new ItemStack(Blocks.wool, 1, 0));
  503.        
  504.         GameRegistry.addRecipe(new ItemStack(reinforcedGlass, 4), new Object[] {
  505.             " X ", "X#X", " X ", Character.valueOf('#'), Blocks.glass, Character.valueOf('X'), Items.iron_ingot
  506.         });
  507.         GameRegistry.addRecipe(new ItemStack(causticVial, 1), new Object[] {
  508.             "X#X", "Y Y", "X#X", Character.valueOf('#'), Items.iron_ingot, Character.valueOf('Y'), reinforcedGlass, Character.valueOf('X'), Blocks.glass
  509.         });
  510. //      GameRegistry.addRecipe(new ItemStack(plasmaBench, 1), new Object[] {
  511. //          "X#X", "# #", "X#X", Character.valueOf('#'), Items.iron_ingot, Character.valueOf('X'), acidVial
  512. //      });
  513.         GameRegistry.addRecipe(new ItemStack(acidBarrier, 1), new Object[] {
  514.             " X ", "XZX", " X ", Character.valueOf('Z'), reinforcedGlass, Character.valueOf('X'), goopAcid
  515.         });
  516.         GameRegistry.addRecipe(new ItemStack(causticBoat, 1), new Object[] {
  517.             "R R", "RRR", Character.valueOf('R'), ingotRadionite
  518.         });
  519. //      GameRegistry.addRecipe(new ItemStack(acidTnt, 4), new Object[] {
  520. //          "APA", "GAG", "APA", Character.valueOf('A'), acidVial, Character.valueOf('G'), Items.gunpowder, Character.valueOf('P'), plasma
  521. //      });
  522. //      GameRegistry.addRecipe(new ItemStack(acidGrenade, 4), new Object[] {
  523. //          "X", "Y", "Z", Character.valueOf('X'), Items.iron_ingot, Character.valueOf('Y'), acidVial, Character.valueOf('Z'), plasma
  524. //      });
  525.         GameRegistry.addRecipe(new ItemStack(hazmatHood, 1), new Object[] {
  526.             "LLL", "L L", Character.valueOf('L'), plasmaLeather
  527.         });
  528.         GameRegistry.addRecipe(new ItemStack(hazmatJacket, 1), new Object[] {
  529.             "L L", "LLL", "LLL", Character.valueOf('L'), plasmaLeather
  530.         });
  531.         GameRegistry.addRecipe(new ItemStack(hazmatPants, 1), new Object[] {
  532.             "LLL", "L L", "L L", Character.valueOf('L'), plasmaLeather
  533.         });
  534.         GameRegistry.addRecipe(new ItemStack(hazmatBoots, 1), new Object[] {
  535.             "L L", "L L", Character.valueOf('L'), plasmaLeather
  536.         });
  537.         GameRegistry.addRecipe(new ItemStack(plasmaLeather, 1), new Object[] {
  538.             "N", "J", Character.valueOf('N'), goopAcid, Character.valueOf('J'), Items.leather
  539.         });
  540.         GameRegistry.addRecipe(new ItemStack(plasmagunsplit, 1), new Object[] {
  541.             "YB", Character.valueOf('B'), plasmagun, Character.valueOf('Y'), beamSplitter
  542.         });
  543.         GameRegistry.addRecipe(new ItemStack(lasergunsplit, 1), new Object[] {
  544.             "YB", Character.valueOf('B'), lasergun, Character.valueOf('Y'), beamSplitter
  545.         });
  546.         GameRegistry.addRecipe(new ItemStack(cryoblaster, 1), new Object[] {
  547.             "  A", "CBX", " DE", Character.valueOf('A'), ingotUranium, Character.valueOf('B'), goopCryonite, Character.valueOf('C'), ingotCryonite, Character.valueOf('D'),
  548.             ingotObsidium, Character.valueOf('X'), batteryCryo, Character.valueOf('E'), ingotPlutonium
  549.         });
  550.         GameRegistry.addRecipe(new ItemStack(lasershotgun, 1), new Object[] {
  551.             "  A", "BCD", " EF", Character.valueOf('A'), Items.repeater, Character.valueOf('B'), beamSplitter, Character.valueOf('C'), ingotNetherflow, Character.valueOf('D'),
  552.             batteryCharged, Character.valueOf('E'), ingotRadionite, Character.valueOf('F'), ingotPlutonium
  553.         });
  554.         GameRegistry.addRecipe(new ItemStack(lasergun, 1), new Object[] {
  555.             "ABC", " BD", Character.valueOf('A'), ingotNetherflow, Character.valueOf('B'), ingotObsidium, Character.valueOf('C'), goopNetherflow, Character.valueOf('D'), ingotPlutonium,
  556.         });
  557.         GameRegistry.addRecipe(new ItemStack(plasmagun, 1), new Object[] {
  558.             "ABC", " DC", Character.valueOf('A'), Items.diamond, Character.valueOf('B'), plasma, Character.valueOf('C'), ingotPlutonium, Character.valueOf('D'), ingotObsidium,
  559.         });
  560.         GameRegistry.addRecipe(new ItemStack(energyCell, 5), new Object[] {
  561.             " R ", "RXR", " R ", Character.valueOf('R'), ingotNeptunium, Character.valueOf('X'), goopAcid
  562.         });
  563.         GameRegistry.addRecipe(new ItemStack(batteryEmpty, 8), new Object[] {
  564.             "IRI", "I I", "IRI", Character.valueOf('R'), ingotRadionite, Character.valueOf('I'), Items.iron_ingot
  565.         });
  566.         GameRegistry.addRecipe(new ItemStack(batteryCryo, 1), new Object[] {
  567.             "R", "X", Character.valueOf('R'), goopCryonite, Character.valueOf('X'), batteryEmpty
  568.         });
  569.         GameRegistry.addRecipe(new ItemStack(batteryPlasma, 1), new Object[] {
  570.             "R", "X", Character.valueOf('R'), plasma, Character.valueOf('X'), batteryEmpty
  571.         });
  572.         GameRegistry.addRecipe(new ItemStack(batteryCharged, 1), new Object[] {
  573.             "R", "X", Character.valueOf('R'), goopPlutonium, Character.valueOf('X'), batteryEmpty
  574.         });
  575.        
  576.         GameRegistry.addShapelessRecipe(new ItemStack(goopCryonite, 4), plasma, goopCryonite);
  577.         GameRegistry.addShapelessRecipe(new ItemStack(goopNeptunium, 4), plasma, goopNeptunium);
  578.         GameRegistry.addShapelessRecipe(new ItemStack(goopNetherflow, 4), plasma, goopNetherflow);
  579.         GameRegistry.addShapelessRecipe(new ItemStack(goopObsidium, 4), plasma, goopObsidium);
  580.         GameRegistry.addShapelessRecipe(new ItemStack(goopPlutonium, 4), plasma, goopPlutonium);
  581.         GameRegistry.addShapelessRecipe(new ItemStack(goopRadionite, 4), plasma, goopRadionite);
  582.         GameRegistry.addShapelessRecipe(new ItemStack(goopUranium, 4), plasma, goopUranium);
  583.        
  584.         GameRegistry.addShapelessRecipe(new ItemStack(acidVial, 1), goopAcid, causticVial);
  585.         GameRegistry.addShapelessRecipe(new ItemStack(cryoniteVial, 1), goopCryonite, causticVial);
  586.         GameRegistry.addShapelessRecipe(new ItemStack(neptuniumVial, 1), goopNeptunium, causticVial);
  587.         GameRegistry.addShapelessRecipe(new ItemStack(netherflowVial, 1), goopNetherflow, causticVial);
  588.         GameRegistry.addShapelessRecipe(new ItemStack(obsidiumVial, 1), goopObsidium, causticVial);
  589.         GameRegistry.addShapelessRecipe(new ItemStack(plutoniumVial, 1), goopPlutonium, causticVial);
  590.         GameRegistry.addShapelessRecipe(new ItemStack(radioniteVial, 1), goopRadionite, causticVial);
  591.         GameRegistry.addShapelessRecipe(new ItemStack(uraniumVial, 1), goopUranium, causticVial);
  592.        
  593.         GameRegistry.addSmelting(oreLeadBlock, new ItemStack(ingotLead, 1), 0.1f);
  594.     }
  595.    
  596.     public static void loadConfig()
  597.     {
  598.         Configuration c;
  599.         if(FMLCommonHandler.instance().getSide() == Side.CLIENT)
  600.         {
  601.             c = new Configuration(new File(Minecraft.getMinecraft().mcDataDir, "/config/PlasmaCraft.cfg"));
  602.         }
  603.         else
  604.         {
  605.             c = new Configuration(new File("./config/PlasmaCraft.cfg"));
  606.         }
  607.         c.load();
  608.        
  609.         liquidSourceExplodesAfterCausticExplosion = c.get(Configuration.CATEGORY_GENERAL, "LiquidSourceExplodesAfterCausticExplosion", true).getBoolean(true);
  610.  
  611.         generateLead = c.get(Configuration.CATEGORY_GENERAL, "General.GenerateLead", true).getBoolean(true);
  612.         generateUranium = c.get(Configuration.CATEGORY_GENERAL, "General.GenerateUranium", true).getBoolean(true);
  613.         generatePlutonium = c.get(Configuration.CATEGORY_GENERAL, "General.GeneratePlutonium", true).getBoolean(true);
  614.        
  615.         c.save();
  616.     }
  617.  
  618.     private void registerTileEntities()
  619.     {
  620.         GameRegistry.registerTileEntity(TilePlasmaBench.class,   "tilePlasmaBench");       
  621.     }
  622. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement