Update Base Registry, Chests and Signs render fix
This commit is contained in:
parent
d2d9c8d2eb
commit
b7eab022fb
6 changed files with 57 additions and 57 deletions
|
@ -8,7 +8,7 @@ yarn_mappings=6
|
|||
loader_version=0.11.3
|
||||
|
||||
# Mod Properties
|
||||
mod_version = 0.1.11
|
||||
mod_version = 0.1.12
|
||||
maven_group = ru.bclib
|
||||
archives_base_name = bclib
|
||||
|
||||
|
|
|
@ -1,11 +1,24 @@
|
|||
package ru.bclib.client;
|
||||
|
||||
import net.fabricmc.api.ClientModInitializer;
|
||||
import ru.bclib.blocks.BaseChestBlock;
|
||||
import ru.bclib.blocks.BaseSignBlock;
|
||||
import ru.bclib.client.render.BaseChestBlockEntityRenderer;
|
||||
import ru.bclib.client.render.BaseSignBlockEntityRenderer;
|
||||
import ru.bclib.registry.BaseBlockEntities;
|
||||
import ru.bclib.registry.BaseBlockEntityRenders;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
public class BCLibClient implements ClientModInitializer {
|
||||
@Override
|
||||
public void onInitializeClient() {
|
||||
BaseBlockEntityRenders.register();
|
||||
Arrays.stream(BaseBlockEntities.getChests()).forEach(chest -> {
|
||||
BaseChestBlockEntityRenderer.registerRenderLayer((BaseChestBlock) chest);
|
||||
});
|
||||
Arrays.stream(BaseBlockEntities.getSigns()).forEach(sign -> {
|
||||
BaseSignBlockEntityRenderer.registerRenderLayer((BaseSignBlock) sign);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,9 +1,5 @@
|
|||
package ru.bclib.registry;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
|
||||
import net.minecraft.core.Registry;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.world.item.BlockItem;
|
||||
|
@ -36,55 +32,27 @@ public class BaseBlockEntities {
|
|||
|
||||
public static void register() {}
|
||||
|
||||
private static Block[] getChests() {
|
||||
List<Block> result = Lists.newArrayList();
|
||||
BaseRegistry.getModBlocks().forEach((item) -> {
|
||||
if (item instanceof BlockItem) {
|
||||
Block block = ((BlockItem) item).getBlock();
|
||||
if (block instanceof BaseChestBlock) {
|
||||
result.add(block);
|
||||
}
|
||||
}
|
||||
});
|
||||
return result.toArray(new Block[] {});
|
||||
public static Block[] getChests() {
|
||||
return BaseRegistry.getRegisteredBlocks().values().stream()
|
||||
.filter(item -> item instanceof BlockItem && ((BlockItem) item).getBlock() instanceof BaseChestBlock)
|
||||
.map(item -> ((BlockItem) item).getBlock()).toArray(Block[]::new);
|
||||
}
|
||||
|
||||
private static Block[] getBarrels() {
|
||||
List<Block> result = Lists.newArrayList();
|
||||
BaseRegistry.getModBlocks().forEach((item) -> {
|
||||
if (item instanceof BlockItem) {
|
||||
Block block = ((BlockItem) item).getBlock();
|
||||
if (block instanceof BaseBarrelBlock) {
|
||||
result.add(block);
|
||||
}
|
||||
}
|
||||
});
|
||||
return result.toArray(new Block[] {});
|
||||
return BaseRegistry.getRegisteredBlocks().values().stream()
|
||||
.filter(item -> item instanceof BlockItem && ((BlockItem) item).getBlock() instanceof BaseBarrelBlock)
|
||||
.map(item -> ((BlockItem) item).getBlock()).toArray(Block[]::new);
|
||||
}
|
||||
|
||||
private static Block[] getSigns() {
|
||||
List<Block> result = Lists.newArrayList();
|
||||
BaseRegistry.getModBlocks().forEach((item) -> {
|
||||
if (item instanceof BlockItem) {
|
||||
Block block = ((BlockItem) item).getBlock();
|
||||
if (block instanceof BaseSignBlock) {
|
||||
result.add(block);
|
||||
}
|
||||
}
|
||||
});
|
||||
return result.toArray(new Block[] {});
|
||||
public static Block[] getSigns() {
|
||||
return BaseRegistry.getRegisteredBlocks().values().stream()
|
||||
.filter(item -> item instanceof BlockItem && ((BlockItem) item).getBlock() instanceof BaseSignBlock)
|
||||
.map(item -> ((BlockItem) item).getBlock()).toArray(Block[]::new);
|
||||
}
|
||||
|
||||
private static Block[] getFurnaces() {
|
||||
List<Block> result = Lists.newArrayList();
|
||||
BaseRegistry.getModBlocks().forEach((item) -> {
|
||||
if (item instanceof BlockItem) {
|
||||
Block block = ((BlockItem) item).getBlock();
|
||||
if (block instanceof BaseFurnaceBlock) {
|
||||
result.add(block);
|
||||
}
|
||||
}
|
||||
});
|
||||
return result.toArray(new Block[] {});
|
||||
return BaseRegistry.getRegisteredBlocks().values().stream()
|
||||
.filter(item -> item instanceof BlockItem && ((BlockItem) item).getBlock() instanceof BaseFurnaceBlock)
|
||||
.map(item -> ((BlockItem) item).getBlock()).toArray(Block[]::new);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package ru.bclib.registry;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.common.collect.Maps;
|
||||
import net.fabricmc.fabric.api.item.v1.FabricItemSettings;
|
||||
import net.minecraft.core.Registry;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
|
@ -8,24 +9,42 @@ import net.minecraft.world.item.*;
|
|||
import ru.bclib.BCLib;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public abstract class BaseRegistry<T> {
|
||||
|
||||
private static final List<BaseRegistry<?>> REGISTRIES = Lists.newArrayList();
|
||||
private static final Map<String, List<Item>> MOD_BLOCKS = Maps.newHashMap();
|
||||
private static final Map<String, List<Item>> MOD_ITEMS = Maps.newHashMap();
|
||||
|
||||
protected static final List<Item> MOD_BLOCKS = Lists.newArrayList();
|
||||
protected static final List<Item> MOD_ITEMS = Lists.newArrayList();
|
||||
|
||||
public static List<Item> getModBlocks() {
|
||||
public static Map<String, List<Item>> getRegisteredBlocks() {
|
||||
return MOD_BLOCKS;
|
||||
}
|
||||
|
||||
public static List<Item> getModItems() {
|
||||
public static Map<String, List<Item>> getRegisteredItems() {
|
||||
return MOD_ITEMS;
|
||||
}
|
||||
|
||||
public static List<Item> getModBlocks(String modId) {
|
||||
if (MOD_BLOCKS.containsKey(modId)) {
|
||||
return MOD_BLOCKS.get(modId);
|
||||
}
|
||||
List<Item> modBlocks = Lists.newArrayList();
|
||||
MOD_BLOCKS.put(modId, modBlocks);
|
||||
return modBlocks;
|
||||
}
|
||||
|
||||
public static List<Item> getModItems(String modId) {
|
||||
if (MOD_ITEMS.containsKey(modId)) {
|
||||
return MOD_ITEMS.get(modId);
|
||||
}
|
||||
List<Item> modBlocks = Lists.newArrayList();
|
||||
MOD_ITEMS.put(modId, modBlocks);
|
||||
return modBlocks;
|
||||
}
|
||||
|
||||
public static void register() {
|
||||
REGISTRIES.forEach(BaseRegistry::registerDependency);
|
||||
REGISTRIES.forEach(BaseRegistry::registerInternal);
|
||||
}
|
||||
|
||||
protected final CreativeModeTab creativeTab;
|
||||
|
@ -57,5 +76,5 @@ public abstract class BaseRegistry<T> {
|
|||
return (FabricItemSettings) properties.tab(creativeTab);
|
||||
}
|
||||
|
||||
private void registerDependency() {}
|
||||
private void registerInternal() {}
|
||||
}
|
||||
|
|
|
@ -43,7 +43,7 @@ public abstract class BlocksRegistry extends BaseRegistry<Block> {
|
|||
}
|
||||
|
||||
public Item registerBlockItem(ResourceLocation id, Item item) {
|
||||
registerItem(id, item, BaseRegistry.MOD_BLOCKS);
|
||||
registerItem(id, item, BaseRegistry.getModBlocks(id.getNamespace()));
|
||||
return item;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -38,13 +38,13 @@ public abstract class ItemsRegistry extends BaseRegistry<Item> {
|
|||
|
||||
@Override
|
||||
public Item register(ResourceLocation itemId, Item item) {
|
||||
registerItem(itemId, item, BaseRegistry.MOD_ITEMS);
|
||||
registerItem(itemId, item, BaseRegistry.getModItems(itemId.getNamespace()));
|
||||
return item;
|
||||
}
|
||||
|
||||
public TieredItem registerTool(String name, TieredItem item) {
|
||||
ResourceLocation id = createModId(name);
|
||||
registerItem(id, item, BaseRegistry.MOD_ITEMS);
|
||||
registerItem(id, item, BaseRegistry.getModItems(id.getNamespace()));
|
||||
|
||||
if (item instanceof ShovelItem) {
|
||||
TagHelper.addTag((Tag.Named<Item>) FabricToolTags.SHOVELS, item);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue