Inspired by 2020's April Fools' 20w14infinite Snapshot, this mod brings endless randomly generated dimensions into Minecraft.
at master 122 lines 6.2 kB view raw
1package net.lerariemann.infinity.registry.var; 2 3import static net.lerariemann.infinity.registry.core.ModItems.*; 4import static net.minecraft.world.item.Items.*; 5//? if >1.21 { 6import static net.minecraft.world.item.Items.OMINOUS_TRIAL_KEY; 7import static net.minecraft.world.item.Items.VAULT; 8//?} 9import net.lerariemann.infinity.registry.core.ModItems; 10import net.lerariemann.infinity.util.VersionMethods; 11import net.minecraft.core.registries.BuiltInRegistries; 12import net.minecraft.resources.ResourceKey; 13import net.minecraft.world.item.CreativeModeTab; 14import net.minecraft.world.item.CreativeModeTabs; 15import net.minecraft.world.item.Item; 16//? if neoforge { 17/*import net.neoforged.bus.api.SubscribeEvent; 18import net.neoforged.fml.common.EventBusSubscriber; 19import net.neoforged.neoforge.event.BuildCreativeModeTabContentsEvent; 20@EventBusSubscriber 21*///?} else if forge { 22/*import net.minecraftforge.event.BuildCreativeModeTabContentsEvent; 23import net.minecraftforge.eventbus.api.SubscribeEvent; 24import net.minecraftforge.fml.common.Mod; 25@Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.MOD) 26*///?} else { 27import net.fabricmc.fabric.api.itemgroup.v1.FabricItemGroupEntries; 28//?} 29 30public class ModItemGroups { 31 32 public static void addAfter( 33 //? forge || neoforge { 34 /*BuildCreativeModeTabContentsEvent 35 *///?} else { 36 FabricItemGroupEntries 37 //?} 38 event, Item itemBefore, Item itemAfter) { 39 //? if neoforge { 40 /*event.insertAfter(itemBefore.getDefaultInstance(), itemAfter.getDefaultInstance(), CreativeModeTab.TabVisibility.PARENT_AND_SEARCH_TABS); 41 *///?} else if fabric { 42 event.addAfter(itemBefore, itemAfter); 43 //?} else { 44 /*event.accept(itemAfter.getDefaultInstance(), CreativeModeTab.TabVisibility.PARENT_AND_SEARCH_TABS); 45 *///?} 46 } 47 public static void addAfter( 48 //? forge || neoforge { 49 /*BuildCreativeModeTabContentsEvent 50 *///?} else { 51 FabricItemGroupEntries 52 //?} 53 event, Item itemBefore) { 54 event.accept(itemBefore); 55 } 56 57 //MyItemsClass.MY_ITEM is a Supplier<? extends Item>, MyBlocksClass.MY_BLOCK is a Supplier<? extends Block> 58 //? forge || neoforge { 59 /*@SubscribeEvent 60 public static void buildContents(BuildCreativeModeTabContentsEvent event) { 61 buildContents(event.getTabKey(), event); 62 } 63 *///?} 64 65 public static void buildContents( 66 //? forge || neoforge { 67 /*ResourceKey<CreativeModeTab> creativeModeTab, BuildCreativeModeTabContentsEvent 68 *///?} else { 69 CreativeModeTab creativeModeTab, FabricItemGroupEntries 70 //?} 71 event) { 72 // Is this the tab we want to add to? 73 if (equals(creativeModeTab, CreativeModeTabs.BUILDING_BLOCKS)) { 74 addAfter(event, NETHERITE_BLOCK, ModItems.NETHERITE_SLAB_ITEM.get()); 75 addAfter(event, NETHERITE_BLOCK, ModItems.NETHERITE_STAIRS_ITEM.get()); 76 } else if (equals(creativeModeTab, CreativeModeTabs.FUNCTIONAL_BLOCKS)) { 77 addAfter(event, LECTERN, ModItems.COSMIC_ALTAR_ITEM.get()); 78 addAfter(event, LECTERN, ModItems.ALTAR_ITEM.get()); 79 addAfter(event, LODESTONE, ModItems.ANT_ITEM.get()); 80 addAfter(event, CHISELED_BOOKSHELF, ModItems.BOOK_BOX_ITEM.get()); 81 addAfter(event, VAULT, ModItems.TIME_BOMB_ITEM.get()); 82 } else if (equals(creativeModeTab, CreativeModeTabs.INGREDIENTS)) { 83 addAfter(event, DISC_FRAGMENT_5, ModItems.FOOTPRINT.get()); 84 addAfter(event, OMINOUS_TRIAL_KEY, TRANSFINITE_KEY.get()); 85 addAfter(event, NETHER_STAR, ModItems.IRIDESCENT_STAR.get()); 86 addAfter(event, NETHER_STAR, ModItems.STAR_OF_LANG.get()); 87 addAfter(event, DISC_FRAGMENT_5, ModItems.CHROMATIC_MATTER.get()); 88 addAfter(event, DISC_FRAGMENT_5, ModItems.WHITE_MATTER.get()); 89 addAfter(event, DISC_FRAGMENT_5, ModItems.BLACK_MATTER.get()); 90 addAfter(event, EXPERIENCE_BOTTLE, ModItems.BIOME_BOTTLE_ITEM.get()); 91 } else if (equals(creativeModeTab, CreativeModeTabs.FOOD_AND_DRINKS)) { 92 addAfter(event, MILK_BUCKET, ModItems.HOME_ITEM.get()); 93 addAfter(event, HONEY_BOTTLE, ModItems.IRIDESCENT_POTION.get()); 94 addAfter(event, HONEY_BOTTLE, ModItems.CHROMATIC_POTION.get()); 95 } else if (equals(creativeModeTab, CreativeModeTabs.TOOLS_AND_UTILITIES)) { 96 addAfter(event, WRITABLE_BOOK, ModItems.F4.get()); 97 addAfter(event, MUSIC_DISC_PIGSTEP, ModItems.DISC.get()); 98 addAfter(event, MILK_BUCKET, ModItems.IRIDESCENCE_BUCKET.get()); 99 } else if (equals(creativeModeTab, CreativeModeTabs.COLORED_BLOCKS)) { 100 addAfter(event, PINK_WOOL, ModItems.IRIDESCENT_WOOL.get()); 101 addAfter(event, PINK_CARPET, ModItems.IRIDESCENT_CARPET.get()); 102 addAfter(event, PINK_WOOL, ModItems.CHROMATIC_WOOL.get()); 103 addAfter(event, PINK_CARPET, ModItems.CHROMATIC_CARPET.get()); 104 addAfter(event, PINK_TERRACOTTA, ModItems.CURSOR_ITEM.get()); 105 } else if (equals(creativeModeTab, CreativeModeTabs.SPAWN_EGGS)) { 106 addAfter(event, ANT_SPAWN_EGG.get()); 107 addAfter(event, CHAOS_PAWN_SPAWN_EGG.get()); 108 addAfter(event, BISHOP_SPAWN_EGG.get()); 109 addAfter(event, CREEPER_SPAWN_EGG, CHAOS_CREEPER_SPAWN_EGG.get()); 110 addAfter(event, SKELETON_SPAWN_EGG, CHAOS_SKELETON_SPAWN_EGG.get()); 111 addAfter(event, SLIME_SPAWN_EGG, CHAOS_SLIME_SPAWN_EGG.get()); 112 } 113 } 114 115 private static boolean equals(CreativeModeTab creativeModeTab, ResourceKey<CreativeModeTab> tabKey) { 116 return creativeModeTab == VersionMethods.getFromRegistry(BuiltInRegistries.CREATIVE_MODE_TAB, tabKey); 117 } 118 119 private static boolean equals(ResourceKey<CreativeModeTab> creativeModeTab, ResourceKey<CreativeModeTab> tabKey) { 120 return creativeModeTab == tabKey; 121 } 122}