Guest User

Untitled

a guest
Jan 18th, 2019
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5 12.10 KB | None | 0 0
  1. package mrkirby153.capsuels;
  2.  
  3. import java.io.File;
  4.  
  5. import net.minecraft.client.Minecraft;
  6. import net.minecraft.src.Achievement;
  7. import net.minecraft.src.AchievementList;
  8. import net.minecraft.src.AchievementMap;
  9. import net.minecraft.src.Block;
  10. import net.minecraft.src.BlockStone;
  11. import net.minecraft.src.EnumArmorMaterial;
  12. import net.minecraft.src.EnumToolMaterial;
  13. import net.minecraft.src.Item;
  14. import net.minecraft.src.ItemHoe;
  15. import net.minecraft.src.ItemSpade;
  16. import net.minecraft.src.ItemStack;
  17. import net.minecraft.src.Material;
  18. import net.minecraft.src.ModLoader;
  19. import net.minecraftforge.client.MinecraftForgeClient;
  20. import net.minecraftforge.common.Configuration;
  21. import net.minecraftforge.common.DungeonHooks;
  22. import net.minecraftforge.common.EnumHelper;
  23.  
  24. import cpw.mods.fml.client.registry.RenderingRegistry;
  25. import cpw.mods.fml.common.*;
  26. import cpw.mods.fml.common.Mod.*;
  27. import cpw.mods.fml.common.asm.SideOnly;
  28. import cpw.mods.fml.common.event.FMLInitializationEvent;
  29. import cpw.mods.fml.common.event.FMLPreInitializationEvent;
  30. import cpw.mods.fml.common.network.NetworkMod;
  31. import cpw.mods.fml.common.registry.GameRegistry;
  32. import cpw.mods.fml.common.registry.LanguageRegistry;
  33. /*
  34.  * ATTENTION!!! Add ALL preloaded textures in src.mrkirby153.Capsuels.ClientProxy.java
  35.  * Thank You! :)
  36.  */
  37.  
  38. @Mod(modid= "Capsuels Mod", name = "Capsuels Mod", version = "2.0 FULL") //Mod Version: 2.0 FULL
  39. @NetworkMod(clientSideRequired = true, serverSideRequired = false)
  40.  
  41.  
  42. public class Capsuels {
  43.     public static int jelloArmorID = 0;
  44.     private boolean canCraftRegen;
  45.     private boolean alternateToolRecipie;
  46.     private int JelloHelmetID;
  47.     private int JelloPlateID;
  48.     private int JelloLegsID;
  49.     private int JelloBootsID;
  50.     private int JelloPickID;
  51.     private int JelloShovelID;
  52.     private int JelloHoeID;
  53.     private int JelloSwordID;
  54.     private int JelloBlockID;
  55.     private int EmptyID;
  56.     private int EXPID;
  57.     private int EnergyserID;
  58.     private int RegenID;
  59.     private int SuicideID;
  60.     private int GelatonChunkID;
  61.     private int SandCoalID;
  62.     private int DigSpeedID;
  63.     private int tickCapID;
  64.     private int sunCapID;
  65.     private int FakeCapID;
  66.     @SidedProxy(clientSide = "mrkirby153.capsuels.ClientProxy",
  67.             serverSide = "mrkirby153.capsuels.CommonProxy")
  68.     public static CommonProxy proxy;
  69.     // All items called by other classes
  70.     // Define Armour.
  71.     public static Item JelloHelmet;
  72.     public static Item JelloChestPlate;
  73.     public static Item JelloLegs;
  74.     public static Item JelloBoots;
  75.     public static Item Energyser;
  76.     //Define Tools
  77.     public static Item JelloPick;
  78.     public static Item JelloShovel;
  79.     public static Item JelloHoe;
  80.     public static Item JelloSword;
  81.     //Items
  82.     public static Item gelatonChunk;
  83.     public static Item sandCoal;
  84.    
  85.     static Achievement SandAchieve;
  86.    
  87.    
  88.  
  89.  
  90.     @PreInit
  91.     public void preInit(FMLPreInitializationEvent event){
  92.         Configuration cfg = new Configuration(event.getSuggestedConfigurationFile());
  93.         try{
  94.             cfg.load();
  95.             //Define ID's for the config files
  96.             EmptyID = cfg.getItem("Empty Capsuels", 500).getInt();
  97.             EXPID = cfg.getItem("EXP Capsuels", 501).getInt();
  98.             EnergyserID = cfg.getItem("Energyser ID", 502).getInt();
  99.             RegenID = cfg.getItem("Regen ID", 503).getInt();
  100.             SuicideID = cfg.getItem("Suidcide ID", 504).getInt();
  101.             GelatonChunkID = cfg.getItem("Gelaton Chunk ID", 506).getInt();
  102.             SandCoalID = cfg.getItem("SandCoal ID", 507).getInt();
  103.             DigSpeedID = cfg.getItem("Dig Speed Capsuel", 508).getInt();
  104.             tickCapID = cfg.getItem("Rain Capsuel", 509).getInt();
  105.             sunCapID = cfg.getItem("Sun Capsuel", 510).getInt();
  106.             JelloHelmetID = cfg.getItem("Jello Helmet", 510).getInt();
  107.             JelloPlateID = cfg.getItem("Jello Chest Plate", 511).getInt();
  108.             JelloLegsID = cfg.getItem("Jello Legs", 512).getInt();
  109.             JelloBootsID = cfg.getItem("Jello Boots", 513).getInt();
  110.             JelloPickID = cfg.getItem("Jello Pick", 514).getInt();
  111.             JelloShovelID = cfg.getItem("Jello Shovel", 515).getInt();
  112.             JelloHoeID = cfg.getItem("Jello Hoe", 516).getInt();
  113.             JelloSwordID = cfg.getItem("Jello Sword", 517).getInt();
  114.             JelloBlockID = cfg.getItem("Jello Block", 518).getInt();
  115.             FakeCapID = cfg.getItem("Fake Capsuel", 519).getInt();
  116.             canCraftRegen = cfg.get(cfg.CATEGORY_GENERAL, "Enable Crafting of rgen Capsuel?" , false).getBoolean(false);
  117.             alternateToolRecipie = cfg.get(cfg.CATEGORY_GENERAL, "Enable alternate tool recipies?", true).getBoolean(true);
  118.  
  119.         }finally{
  120.             cfg.save();
  121.         }
  122.  
  123.     }
  124.  
  125.     @Init
  126.     public void load(FMLInitializationEvent event){
  127.         proxy.registerRenderInformation();
  128.         this.addAchievementLocalizations();
  129.         //Materials
  130.         EnumArmorMaterial EnumArmourMaterialJello = EnumHelper.addArmorMaterial("Jello Armour", 35, new int []{4, 9, 7, 6}, 1);
  131.         EnumToolMaterial EnumToolMaterialJello = EnumHelper.addToolMaterial("Jello", 3, 300, 10F, 5, 30);
  132.  
  133.  
  134.  
  135.  
  136.  
  137.         //Create Items
  138.         final Item emptyCap= (new ItemEmptyCap(EmptyID)).setFull3D().setIconCoord(0, 0).setItemName("ItemEmptyCap");
  139.         final Item capEXP = (new ItemEXPCap(EXPID)).setFull3D().setIconCoord(1, 0).setItemName("ItemCapEXP");
  140.         Energyser = (new ItemEnergyser(EnergyserID)).setFull3D().setIconCoord(2, 0).setItemName("ItemEnergyser").setContainerItem(Energyser);
  141.         final Item regen = (new ItemRegen(RegenID)).setFull3D().setIconCoord(3, 0).setItemName("ItemRegen");
  142.         final Item suicide = (new ItemSuicide(SuicideID)).setIconCoord(4,0).setItemName("ItemSuicide");
  143.         gelatonChunk = (new ItemGelatonChunk(GelatonChunkID)).setIconCoord(5, 0).setItemName("ItemGelatonChunk");
  144.         sandCoal = (new ItemSandCoal(SandCoalID)).setIconCoord(6, 0).setItemName("ItemSandCoal");
  145.         SandAchieve = new Achievement(2001, "SandCoalAchieve", 1, -2, sandCoal, AchievementList.blazeRod).registerAchievement().setSpecial();
  146.         final Item digSpeed = (new ItemDigSpeed(DigSpeedID)).setIconCoord(7, 0).setItemName("ItemDigSpeed");
  147.         final Item dawnCap = (new ItemDawnCap(tickCapID)).setIconCoord(8, 0).setItemName("ItemDawnCap");
  148.         final Item sunCap = (new ItemSunCap(sunCapID)).setIconCoord(9, 0).setItemName("ItemSunCap");
  149.         JelloHelmet = (new ItemJelloHelment(JelloHelmetID, EnumArmourMaterialJello, jelloArmorID, 0).setItemName("jellohelmet").setIconCoord(4, 0));
  150.         JelloChestPlate = (new ItemJelloChestPlate(JelloPlateID, EnumArmourMaterialJello, jelloArmorID, 1).setItemName("jelloChest").setIconCoord(4, 1));
  151.         JelloLegs = (new ItemJelloLegs(JelloLegsID, EnumArmourMaterialJello, jelloArmorID, 2).setItemName("jellolegs").setIconCoord(4, 2));
  152.         JelloBoots = (new ItemJelloBoots(JelloBootsID, EnumArmourMaterialJello, jelloArmorID, 3).setItemName("jelloBoots").setIconCoord(4, 3));
  153.         //Tools
  154.         JelloPick = (new ItemJelloPick(JelloPickID, EnumToolMaterialJello).setItemName("JelloPick").setIconCoord(4, 6));
  155.         JelloShovel = (new ItemSpade(JelloShovelID, EnumToolMaterialJello)).setIconCoord(4, 5).setItemName("JelloShovel");
  156.         JelloHoe = (new ItemHoe(JelloHoeID, EnumToolMaterialJello)).setIconCoord(4, 8).setItemName("JelloHoe");
  157.         JelloSword = (new ItemJelloSword(JelloSwordID, EnumToolMaterialJello).setItemName("JelloSword").setIconCoord(4, 4));
  158.         final Item fakeCap = (new ItemFakeCap(FakeCapID)).setIconCoord(0, 0).setItemName("ItemFakeCap");
  159.         //Blocks
  160.         final Block Gelaton = (new BlockJello(JelloBlockID, 0)).setHardness(2F).setResistance(300F).setStepSound(Block.soundMetalFootstep).setBlockName("JelloBlock");
  161.  
  162.  
  163.  
  164.         //Add Names
  165.         LanguageRegistry.addName(emptyCap, "Empty Capsuel");
  166.         LanguageRegistry.addName(capEXP, "EXP capsuel");
  167.         LanguageRegistry.addName(Energyser, "Energyser");
  168.         LanguageRegistry.addName(regen, "Regeneration Capsuel");
  169.         LanguageRegistry.addName(suicide, "Suicide Capsuel!");
  170.         LanguageRegistry.addName(gelatonChunk, "Gelaton Chunk");
  171.         LanguageRegistry.addName(sandCoal, "Sand and Coal mixture");
  172.         LanguageRegistry.addName(digSpeed, "Dig Speed Capsuel (Haste)");
  173.         LanguageRegistry.addName(dawnCap, "Rain Capsuel");
  174.         LanguageRegistry.addName(sunCap, "Sun Capsuel");
  175.         LanguageRegistry.addName(JelloHelmet, "Jello Helmet");
  176.         LanguageRegistry.addName(JelloChestPlate, "Jello Chest Plate");
  177.         LanguageRegistry.addName(JelloLegs, "Jello Leggings");
  178.         LanguageRegistry.addName(JelloBoots, "Jello Boots");
  179.         LanguageRegistry.addName(JelloPick, "Jello Pickaxe");
  180.         LanguageRegistry.addName(JelloShovel, "Jello Shovel");
  181.         LanguageRegistry.addName(JelloHoe, "Jello Hoe");
  182.         LanguageRegistry.addName(JelloSword, "Jello Sword");
  183.         LanguageRegistry.addName(Gelaton, "Block of Jello");
  184.         LanguageRegistry.addName(fakeCap, "Empty capsuel");
  185.         //Testing recipie
  186.         // GameRegistry.addShapelessRecipe(new ItemStack(Gelaton, 1), new Object[] {net.minecraft.src.Block.dirt});
  187.  
  188.         //Regular Recipies!
  189.         GameRegistry.addRecipe(new ItemStack(emptyCap, 3), new Object [] {" X ", "X X", " X ", 'X', gelatonChunk});
  190.         GameRegistry.addRecipe(new ItemStack(capEXP, 1), new Object[] {"#X#", "#Y#", "#Z#", 'Y', emptyCap, 'X', Block.blockDiamond,'Z', Energyser, '#', gelatonChunk});
  191.         GameRegistry.addRecipe(new ItemStack(Energyser, 50), new Object [] {"X  ", " Y ", 'X', sandCoal,'Y', gelatonChunk});
  192.         GameRegistry.addShapelessRecipe(new ItemStack(sandCoal), new Object[] {Item.coal, Block.sand});
  193.         GameRegistry.addRecipe(new ItemStack(digSpeed, 1), new Object[] {"#X#", "#Y#", "#Z#", 'X', Item.pickaxeDiamond, 'Y', emptyCap, 'Z', Energyser, '#', gelatonChunk});
  194.         GameRegistry.addRecipe(new ItemStack(dawnCap, 1), new Object [] {"#@#", "#Y#", "#Z#", '@', Item.bucketWater, 'Y', emptyCap, 'Z', Energyser});
  195.         GameRegistry.addRecipe(new ItemStack(sunCap, 1), new Object [] {"#@#", "#Y#", "#Z#", '@', Item.bucketLava, 'Y', emptyCap, 'Z', Energyser});
  196.         GameRegistry.addRecipe(new ItemStack(JelloHelmet, 1), new Object[] {"XXX", "X X", 'X', gelatonChunk});
  197.         GameRegistry.addRecipe(new ItemStack(JelloChestPlate, 1), new Object[] {"X X", "XXX", "XXX", 'X', gelatonChunk});
  198.         GameRegistry.addRecipe(new ItemStack(JelloLegs, 1), new Object[] {"XXX", "X X", "X X", 'X', gelatonChunk});
  199.         GameRegistry.addRecipe(new ItemStack(JelloBoots, 1), new Object[] {"X X", "X X", 'X', gelatonChunk});
  200.         GameRegistry.addRecipe(new ItemStack(JelloPick, 1), new Object[] {"XZX", "XYX", "XXX", 'X', gelatonChunk, 'Y', Item.pickaxeSteel, 'Z', Energyser});
  201.         GameRegistry.addRecipe(new ItemStack(JelloShovel, 1), new Object [] {"XZX", "XYX", "XXX", 'X', gelatonChunk, 'Y', Item.shovelSteel, 'Z', Energyser});
  202.         GameRegistry.addRecipe(new ItemStack(JelloSword, 1), new Object [] {"XZX", "XYX", "XXX", 'X', gelatonChunk, 'Y', Item.swordSteel,'Z', Energyser});
  203.         GameRegistry.addRecipe(new ItemStack(JelloHoe, 1), new Object [] {"XZX", "XYX", "XXX", 'X', gelatonChunk, 'Y', Item.hoeSteel, 'Z', Energyser});
  204.         GameRegistry.addRecipe(new ItemStack(Gelaton, 1), new Object [] {"XXX", "XYX", "XXX", 'X', gelatonChunk, 'Y', Block.ice});
  205.         //Smelting Recipies!
  206.         GameRegistry.addSmelting(sandCoal.shiftedIndex, new ItemStack(gelatonChunk, 4), 3);
  207.  
  208.         if(canCraftRegen){
  209.             GameRegistry.addRecipe(new ItemStack(regen, 1), new Object [] {"XXX", "XYX", "XXX", 'X', net.minecraft.src.Block.blockEmerald, 'Y', suicide});
  210.         }
  211.         if(alternateToolRecipie){
  212.             GameRegistry.addRecipe(new ItemStack(JelloPick, 1), new Object [] {"XXX", " Y " ," Y ", 'X', gelatonChunk, 'Y', Item.stick});
  213.             GameRegistry.addRecipe(new ItemStack(JelloShovel, 1), new Object[] {" X ", " Y ", " Y ", 'X', gelatonChunk, 'Y', Item.stick});
  214.             GameRegistry.addRecipe(new ItemStack(JelloSword, 1), new Object []{" X ", " Y ", " Y ", 'X', gelatonChunk, 'Y', Item.stick});
  215.             GameRegistry.addRecipe(new ItemStack(JelloHoe, 1), new Object[] {"XX ", " Y ", " Y ", 'X', gelatonChunk, 'Y', Item.stick});
  216.         }
  217.         GameRegistry.addShapelessRecipe(new ItemStack(fakeCap, 1), new Object[]{emptyCap});
  218.        
  219.  
  220.     }
  221.    
  222.     private void addAchievementName(String ach, String name){
  223.         LanguageRegistry.instance().addStringLocalization("achievement."+ach, "en_US", name);
  224.     }
  225.     private void AddAchievementDesc(String ach, String desc){
  226.         LanguageRegistry.instance().addStringLocalization("achievement."+ach+".desc", "en_US", desc);
  227.     }
  228.    
  229.     void addAchievementLocalizations(){
  230.         this.addAchievementName("SandCoalAchieve", "Got Sand Coal");
  231.         this.AddAchievementDesc("SandCoalAchieve", "You obtained Sand Coal");
  232.        
  233.     }
  234. }
  235.  
  236. /*To Do list
  237.  * TODO Find SMP alternative for Modloader.addArmour().
  238.  */
Add Comment
Please, Sign In to add comment