tterrag1098

Untitled

Dec 31st, 2018
215
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.24 KB | None | 0 0
  1. package net.minecraftforge.debug.client;
  2.  
  3. import java.awt.Color;
  4. import java.util.Objects;
  5.  
  6. import net.minecraft.block.Block;
  7. import net.minecraft.block.material.Material;
  8. import net.minecraft.client.renderer.block.model.ModelResourceLocation;
  9. import net.minecraft.item.Item;
  10. import net.minecraft.item.ItemBlock;
  11. import net.minecraft.util.ResourceLocation;
  12. import net.minecraftforge.client.event.ColorHandlerEvent;
  13. import net.minecraftforge.client.event.ModelRegistryEvent;
  14. import net.minecraftforge.client.model.ModelLoader;
  15. import net.minecraftforge.event.RegistryEvent;
  16. import net.minecraftforge.fml.common.Mod;
  17. import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
  18.  
  19. @Mod.EventBusSubscriber
  20. @Mod(modid = EmissivityTest.MOD_ID, name = EmissivityTest.NAME, version = "1.0", clientSideOnly = true)
  21. public class EmissivityTest
  22. {
  23. static final String MOD_ID = "emissive_test";
  24. static final String NAME = "Emissive Test";
  25.  
  26. private static Block[] blocks = new Block[4];
  27.  
  28. @SubscribeEvent
  29. public static void createBlock(RegistryEvent.Register<Block> event) {
  30. blocks = new Block[] {
  31. new Block(Material.ROCK).setRegistryName(new ResourceLocation("emissive_tint")).setUnlocalizedName("emissive_tint"),
  32. new Block(Material.ROCK).setRegistryName(new ResourceLocation("emissive_tint_same")).setUnlocalizedName("emissive_tint_same"),
  33. new Block(Material.ROCK).setRegistryName(new ResourceLocation("normal_tint")).setUnlocalizedName("normal_tint"),
  34. new Block(Material.ROCK).setRegistryName(new ResourceLocation("normal_tint_same")).setUnlocalizedName("normal_tint_same")
  35. };
  36.  
  37. event.getRegistry().registerAll(blocks);
  38. }
  39.  
  40. @SubscribeEvent
  41. public static void createItems(RegistryEvent.Register<Item> event) {
  42. for (Block block : blocks)
  43. event.getRegistry().register(new ItemBlock(block).setRegistryName(Objects.requireNonNull(block.getRegistryName())));
  44. }
  45.  
  46. @SubscribeEvent
  47. public static void createModels(ModelRegistryEvent event) {
  48. for (Block block : blocks)
  49. ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(block), 0,
  50. new ModelResourceLocation(Objects.requireNonNull(block.getRegistryName()), "inventory"));
  51. }
  52.  
  53. @SubscribeEvent
  54. public static void createItemColors(ColorHandlerEvent.Block event) {
  55. for (Block block : blocks)
  56. if (!block.getUnlocalizedName().contains("same"))
  57. event.getBlockColors().registerBlockColorHandler((state, worldIn, pos, tintIndex) -> Color.HSBtoRGB(tintIndex / 16f, 1f, 1f), block);
  58. else
  59. event.getBlockColors().registerBlockColorHandler((state, worldIn, pos, tintIndex) -> 0xFFFFFF, block);
  60. }
  61.  
  62. @SubscribeEvent
  63. public static void createItemColors(ColorHandlerEvent.Item event) {
  64. for (Block block : blocks)
  65. if (!block.getUnlocalizedName().contains("same"))
  66. event.getItemColors().registerItemColorHandler((stack, tintIndex) -> Color.HSBtoRGB(tintIndex / 16f, 1f, 1f), block);
  67. else
  68. event.getItemColors().registerItemColorHandler((stack, tintIndex) -> 0xFFFFFF, block);
  69. }
  70. }
Advertisement
Add Comment
Please, Sign In to add comment