Removed CreativeModeTab from Registries

This commit is contained in:
Frank 2023-05-17 23:54:03 +02:00
parent b652f4fbce
commit 89aef7867c
3 changed files with 13 additions and 11 deletions

View file

@ -3,7 +3,6 @@ package org.betterx.bclib.registry;
import org.betterx.bclib.config.PathConfig; import org.betterx.bclib.config.PathConfig;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.CreativeModeTab;
import net.minecraft.world.item.Item; import net.minecraft.world.item.Item;
import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Block;
@ -12,18 +11,16 @@ import com.google.common.collect.Maps;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import org.jetbrains.annotations.ApiStatus;
public abstract class BaseRegistry<T> { public abstract class BaseRegistry<T> {
private static final List<BaseRegistry<?>> REGISTRIES = Lists.newArrayList(); private static final List<BaseRegistry<?>> REGISTRIES = Lists.newArrayList();
private static final Map<String, List<Item>> MOD_BLOCK_ITEMS = Maps.newHashMap(); private static final Map<String, List<Item>> MOD_BLOCK_ITEMS = Maps.newHashMap();
private static final Map<String, List<Block>> MOD_BLOCKS = Maps.newHashMap(); private static final Map<String, List<Block>> MOD_BLOCKS = Maps.newHashMap();
private static final Map<String, List<Item>> MOD_ITEMS = Maps.newHashMap(); private static final Map<String, List<Item>> MOD_ITEMS = Maps.newHashMap();
protected final CreativeModeTab creativeTab;
protected final PathConfig config; protected final PathConfig config;
protected BaseRegistry(CreativeModeTab creativeTab, PathConfig config) { protected BaseRegistry(PathConfig config) {
this.creativeTab = creativeTab;
this.config = config; this.config = config;
REGISTRIES.add(this); REGISTRIES.add(this);
} }
@ -75,6 +72,7 @@ public abstract class BaseRegistry<T> {
return modBlocks; return modBlocks;
} }
@ApiStatus.Internal
public static void register() { public static void register() {
REGISTRIES.forEach(BaseRegistry::registerInternal); REGISTRIES.forEach(BaseRegistry::registerInternal);
} }

View file

@ -17,16 +17,18 @@ import net.minecraft.resources.ResourceLocation;
import net.minecraft.tags.BlockTags; import net.minecraft.tags.BlockTags;
import net.minecraft.tags.ItemTags; import net.minecraft.tags.ItemTags;
import net.minecraft.world.item.BlockItem; import net.minecraft.world.item.BlockItem;
import net.minecraft.world.item.CreativeModeTab;
import net.minecraft.world.item.Item; import net.minecraft.world.item.Item;
import net.minecraft.world.item.Items; import net.minecraft.world.item.Items;
import net.minecraft.world.item.SignItem;
import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.block.Blocks;
import net.minecraft.world.level.block.SignBlock;
import net.fabricmc.fabric.api.registry.FlammableBlockRegistry; import net.fabricmc.fabric.api.registry.FlammableBlockRegistry;
public class BlockRegistry extends BaseRegistry<Block> { public class BlockRegistry extends BaseRegistry<Block> {
public BlockRegistry(CreativeModeTab creativeTab, PathConfig config) { public BlockRegistry(PathConfig config) {
super(creativeTab, config); super(config);
} }
@Override @Override
@ -36,7 +38,9 @@ public class BlockRegistry extends BaseRegistry<Block> {
return block; return block;
} }
BlockItem item = null; BlockItem item = null;
if (block instanceof CustomItemProvider) { if (block instanceof SignBlock sb) {
item = new SignItem(makeItemSettings().stacksTo(16), sb, Blocks.SPRUCE_WALL_SIGN);
} else if (block instanceof CustomItemProvider) {
item = ((CustomItemProvider) block).getCustomItem(id, makeItemSettings()); item = ((CustomItemProvider) block).getCustomItem(id, makeItemSettings());
} else { } else {
item = new BlockItem(block, makeItemSettings()); item = new BlockItem(block, makeItemSettings());

View file

@ -31,8 +31,8 @@ import net.minecraft.world.item.*;
import net.minecraft.world.level.block.DispenserBlock; import net.minecraft.world.level.block.DispenserBlock;
public class ItemRegistry extends BaseRegistry<Item> { public class ItemRegistry extends BaseRegistry<Item> {
public ItemRegistry(CreativeModeTab creativeTab, PathConfig config) { public ItemRegistry(PathConfig config) {
super(creativeTab, config); super(config);
} }
public Item registerDisc(ResourceLocation itemId, int power, SoundEvent sound, int lengthInSeconds) { public Item registerDisc(ResourceLocation itemId, int power, SoundEvent sound, int lengthInSeconds) {