Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.MOD)
- public class Blocks implements IModBusEvent {
- public static final DeferredRegister<Block> BLOCKS;
- public static final DeferredRegister<Item> ITEMS;
- public static final RegistryObject<MiniChest> MINI_CHEST;
- static {
- BLOCKS = DeferredRegister.create(ForgeRegistries.BLOCKS, TenChest.MODID);
- ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS, TenChest.MODID);
- MINI_CHEST = register("mini_chest", MiniChest::new, Blocks::miniChestRenderer);
- }
- @OnlyIn(Dist.CLIENT)
- private static Callable<ItemStackTileEntityRenderer> miniChestRenderer() {
- return () -> new BaseChestItemStackRenderer(MiniChestTileEntity::new);
- }
- private static <T extends Block> RegistryObject<T> register(String name, Supplier<? extends T> sup, Supplier<Callable<ItemStackTileEntityRenderer>> renderMethod) {
- return register(name, sup, (block) -> item(block, renderMethod));
- }
- private static <T extends Block> RegistryObject<T> register(String name, Supplier<? extends T> sup, Function<RegistryObject<T>, Supplier<? extends Item>> itemCreator) {
- RegistryObject<T> ret = registerNoItem(name, sup);
- ITEMS.register(name, (Supplier) itemCreator.apply(ret));
- return ret;
- }
- private static <T extends Block> RegistryObject<T> registerNoItem(String name, Supplier<? extends T> sup) {
- return BLOCKS.register(name, sup);
- }
- private static Supplier<BlockItem> item(RegistryObject<? extends Block> block, Supplier<Callable<ItemStackTileEntityRenderer>> renderMethod) {
- return () -> new BlockItem(block.get(), (new Item.Properties().tab(TenChest.MOD_GROUP).setISTER(renderMethod)));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement