wasliebob

Untitled

May 5th, 2014
208
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.79 KB | None | 0 0
  1. package fmpintegration.main;
  2.  
  3. import java.util.ArrayList;
  4.  
  5. import net.minecraft.block.Block;
  6. import net.minecraft.item.Item;
  7. import net.minecraft.item.ItemStack;
  8. import codechicken.microblock.BlockMicroMaterial;
  9. import codechicken.microblock.MicroMaterialRegistry;
  10. import fmpintegration.api.FMPIntegration;
  11.  
  12. public class Micropart {
  13. public static void init()
  14. {
  15. initParts();
  16. initMicroparts();
  17. }
  18.  
  19. public static void initParts(){}
  20.  
  21. public static void initMicroparts()
  22. {
  23. for(Object o : Block.blockRegistry.getKeys()){
  24. String s = (String)o;
  25. Block b = Block.getBlockFromName(s);
  26. // && b.renderAsNormalBlock()
  27. if(MicroMaterialRegistry.getMaterial(s) == null && !FMPIntegration.isBanned(b) && b != null && Item.getItemFromBlock(b) != null){
  28. ArrayList<String> known = new ArrayList<String>();
  29. for(int meta = 0; meta < 16; meta++){
  30. String name = new ItemStack(b, 1, meta).getUnlocalizedName();
  31. if(!known.contains(name) && !containsNumber(name)){
  32. known.add(name);
  33. registerMultipart(b, meta);}};
  34. }
  35. }
  36. }
  37.  
  38. public static boolean containsNumber(String name)
  39. {
  40. String[] numb = new String[]{"2", "3", "4", "5", "6", "7", "8", "9", "11", "0"};
  41. for(int i = 0; i < numb.length; i++)
  42. if(name != null && numb != null && name.contains(numb[i]))
  43. return true;
  44.  
  45. return false;
  46. }
  47.  
  48. public static void registerMetadata(Block block, int maxMeta){
  49. for (int i = 0; i <= maxMeta; i ++)
  50. registerMultipart(block, i);
  51. }
  52.  
  53. private static void registerMultipart(Block block, int meta)
  54. {
  55. System.out.println("[FMPI] " + " registering multipart for " + block.getLocalizedName());
  56. MicroMaterialRegistry.registerMaterial(new BlockMicroMaterial(block, meta), block.getUnlocalizedName() + (meta == 0 ? "" : "_" + meta));
  57. }
  58. }
Advertisement
Add Comment
Please, Sign In to add comment