[Features] **New** Hanging Signs for End Woods

This commit is contained in:
Frank 2023-06-08 14:26:35 +02:00
parent db5c3c169b
commit c9bc6dab02
93 changed files with 454 additions and 52 deletions

View file

@ -1,6 +1,8 @@
package org.betterx.betterend.complexmaterials;
import org.betterx.bclib.complexmaterials.WoodenComplexMaterial;
import org.betterx.bclib.complexmaterials.entry.SlotMap;
import org.betterx.bclib.complexmaterials.set.wood.WoodSlots;
import org.betterx.betterend.BetterEnd;
import org.betterx.betterend.registry.EndBlocks;
import org.betterx.betterend.registry.EndItems;
@ -24,6 +26,11 @@ public class EndWoodenComplexMaterial extends WoodenComplexMaterial {
);
}
@Override
protected SlotMap<WoodenComplexMaterial> createMaterialSlots() {
return super.createMaterialSlots().add(WoodSlots.HANGING_SIGN);
}
public boolean isTreeLog(Block block) {
return block == getLog() || block == getBark();
}

View file

@ -0,0 +1,42 @@
package org.betterx.betterend.complexmaterials;
import org.betterx.bclib.complexmaterials.WoodenComplexMaterial;
import org.betterx.bclib.complexmaterials.entry.RecipeEntry;
import org.betterx.bclib.complexmaterials.entry.SlotMap;
import org.betterx.bclib.complexmaterials.set.wood.HangingSign;
import org.betterx.bclib.complexmaterials.set.wood.WoodSlots;
import org.betterx.bclib.recipes.BCLRecipeBuilder;
import org.betterx.betterend.registry.EndBlocks;
import net.minecraft.data.recipes.RecipeCategory;
import net.minecraft.world.item.Items;
import net.minecraft.world.level.material.MapColor;
import java.util.function.Consumer;
public class JellyLucerniaWoodMaterial extends EndWoodenComplexMaterial {
public JellyLucerniaWoodMaterial() {
super("lucernia_jellyshroom", MapColor.COLOR_PURPLE, MapColor.COLOR_ORANGE);
}
@Override
protected SlotMap<WoodenComplexMaterial> createMaterialSlots() {
return SlotMap.of(new HangingSign() {
@Override
public void addRecipeEntry(WoodenComplexMaterial parentMaterial, Consumer<RecipeEntry> adder) {
adder.accept(new RecipeEntry(suffix, (mat, id) ->
BCLRecipeBuilder
.crafting(id, parentMaterial.getBlock(suffix))
.setOutputCount(3)
.setShape("I I", "o#o", "o#o")
.addMaterial('#', EndBlocks.LUCERNIA.getBlock(WoodSlots.STRIPPED_LOG))
.addMaterial('o', EndBlocks.JELLYSHROOM.getBlock(WoodSlots.LOG))
.addMaterial('I', Items.CHAIN)
.setGroup("sign")
.setCategory(RecipeCategory.DECORATIONS)
.build()
));
}
});
}
}

View file

@ -389,6 +389,8 @@ public class EndBlocks {
MapColor.COLOR_ORANGE
).init();
public static final EndWoodenComplexMaterial LUCERNIA_JELLY = new JellyLucerniaWoodMaterial().init();
// Small Plants //
public static final Block UMBRELLA_MOSS = registerBlock("umbrella_moss", new UmbrellaMossBlock());
public static final Block UMBRELLA_MOSS_TALL = registerBlock("umbrella_moss_tall", new UmbrellaMossTallBlock());