Tube worms, floating block fixes

This commit is contained in:
paulevsGitch 2020-12-06 05:21:35 +03:00
parent 08e31b8743
commit e3769bb20b
17 changed files with 413 additions and 9 deletions

View file

@ -16,13 +16,18 @@ import ru.betterend.registry.EndBlocks;
public class ColoredMaterial {
private final Map<DyeColor, Block> colors = Maps.newEnumMap(DyeColor.class);
public ColoredMaterial(Function<FabricBlockSettings, Block> constructor, Block source) {
public ColoredMaterial(Function<FabricBlockSettings, Block> constructor, Block source, boolean craftEight) {
String id = Registry.BLOCK.getId(source).getPath();
for (DyeColor color: DyeColor.values()) {
Block block = constructor.apply(FabricBlockSettings.copyOf(source).materialColor(color));
String blockName = id + "_" + color.getName();
EndBlocks.registerBlock(blockName, block);
GridRecipe.make(blockName, block).setList("#D").addMaterial('#', source).addMaterial('D', DyeItem.byColor(color)).build();
if (craftEight) {
GridRecipe.make(blockName, block).setOutputCount(8).setShape("###", "#D#", "###").addMaterial('#', source).addMaterial('D', DyeItem.byColor(color)).build();
}
else {
GridRecipe.make(blockName, block).setList("#D").addMaterial('#', source).addMaterial('D', DyeItem.byColor(color)).build();
}
colors.put(color, block);
}
}