Advertisement
Guest User

Untitled

a guest
Oct 29th, 2020
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.96 KB | None | 0 0
  1. package com.pickleface.sapphire;
  2.  
  3. import com.google.common.collect.Ordering;
  4. import com.pickleface.sapphire.util.Registry;
  5. import net.minecraft.block.Block;
  6. import net.minecraft.block.BlockState;
  7. import net.minecraft.client.renderer.RenderType;
  8. import net.minecraft.client.renderer.RenderTypeLookup;
  9. import net.minecraft.item.Item;
  10. import net.minecraft.item.ItemGroup;
  11. import net.minecraft.item.ItemStack;
  12. import net.minecraft.util.NonNullList;
  13. import net.minecraft.util.math.BlockPos;
  14. import net.minecraft.world.IBlockReader;
  15. import net.minecraftforge.common.MinecraftForge;
  16. import net.minecraftforge.fml.common.Mod;
  17. import net.minecraftforge.fml.config.ModConfig;
  18. import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent;
  19. import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
  20. import org.apache.logging.log4j.LogManager;
  21. import org.apache.logging.log4j.Logger;
  22.  
  23. import java.util.Arrays;
  24. import java.util.Comparator;
  25. import java.util.List;
  26.  
  27. @Mod("sapphire")
  28. public class Sapphire {
  29. //private static final Logger LOGGER = LogManager.getLogger();
  30. public static final String MOD_ID = "sapphire";
  31. public static boolean needsPostProcessing(BlockState state, IBlockReader reader, BlockPos pos) {
  32. return true;
  33. }
  34. private static void getCutout(Block block) {
  35. RenderTypeLookup.setRenderLayer(block, RenderType.getCutout());
  36. }
  37.  
  38. // Sort inventory Tab (made by diesieben07)
  39. private static final List<Item> groupTabList = Arrays.asList(Registry.SAPPHIRE_ORE_ITEM.get(), Registry.BLOCK_OF_SAPPHIRE_ITEM.get(), Registry.SAPPHIRE_LANTERN_ITEM.get(), Registry.SAPPHIRE_SWORD.get(), Registry.SAPPHIRE_HELMET.get(), Registry.SAPPHIRE_CHESTPLATE.get(), Registry.SAPPHIRE_LEGGINGS.get(), Registry.SAPPHIRE_BOOTS.get(),
  40. Registry.SAPPHIRE_PICKAXE.get(), Registry.SAPPHIRE_AXE.get(), Registry.SAPPHIRE_SHOVEL.get(), Registry.SAPPHIRE_HOE.get());
  41. private static final Comparator<ItemStack> sortedTab = Ordering.explicit(groupTabList).onResultOf(ItemStack::getItem);
  42.  
  43. public Sapphire() {
  44. FMLJavaModLoadingContext.get().getModEventBus().addListener(this::setup);
  45. FMLJavaModLoadingContext.get().getModEventBus().addListener(this::doClientStuff);
  46.  
  47. Registry.init();
  48.  
  49. MinecraftForge.EVENT_BUS.register(this);
  50. }
  51.  
  52. private void setup(final ModConfig.ModConfigEvent event) {
  53. // Hey, quit decompiling my mod! >:(
  54. // Also, expect this to be done in a future update :>
  55. }
  56.  
  57. private void doClientStuff(final FMLClientSetupEvent event) {
  58. getCutout(Registry.SAPPHIRE_LANTERN.get());
  59. }
  60.  
  61. public static final ItemGroup TAB = new ItemGroup("simpleTab") {
  62. @Override
  63. public ItemStack createIcon() {
  64. return new ItemStack(Registry.SAPPHIRE.get());
  65. }
  66. @Override
  67. public void fill(NonNullList<ItemStack> items) {
  68. items.sort(sortedTab);
  69. super.fill(items);
  70. }
  71. };
  72. }
  73.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement