Add Lemonwood

This commit is contained in:
Vos
2025-11-03 19:02:58 -06:00
parent c8c4d495e5
commit 7f52936025
15 changed files with 127 additions and 4 deletions
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "acesbs:block/lemonwood_planks"
}
}
}
@@ -0,0 +1,6 @@
{
"parent": "minecraft:block/cube_all",
"textures": {
"all": "acesbs:block/lemonwood_planks"
}
}
@@ -0,0 +1,3 @@
{
"parent": "acesbs:block/lemonwood_planks"
}
@@ -0,0 +1,32 @@
{
"parent": "minecraft:recipes/root",
"criteria": {
"has_lemon": {
"conditions": {
"items": [
{
"items": "acesbs:lemon"
}
]
},
"trigger": "minecraft:inventory_changed"
},
"has_the_recipe": {
"conditions": {
"recipe": "acesbs:lemonwood_planks"
},
"trigger": "minecraft:recipe_unlocked"
}
},
"requirements": [
[
"has_the_recipe",
"has_lemon"
]
],
"rewards": {
"recipes": [
"acesbs:lemonwood_planks"
]
}
}
@@ -0,0 +1,20 @@
{
"type": "minecraft:block",
"pools": [
{
"bonus_rolls": 0.0,
"conditions": [
{
"condition": "minecraft:survives_explosion"
}
],
"entries": [
{
"type": "minecraft:item",
"name": "acesbs:lemonwood_planks"
}
],
"rolls": 1.0
}
]
}
@@ -0,0 +1,25 @@
{
"type": "minecraft:crafting_shapeless",
"category": "building",
"ingredients": [
{
"item": "minecraft:birch_planks"
},
{
"item": "minecraft:birch_planks"
},
{
"item": "minecraft:birch_planks"
},
{
"item": "minecraft:birch_planks"
},
{
"item": "acesbs:lemon"
}
],
"result": {
"count": 4,
"id": "acesbs:lemonwood_planks"
}
}
@@ -0,0 +1,5 @@
{
"values": [
"acesbs:lemonwood_planks"
]
}
@@ -3,12 +3,11 @@ package com.acethewildfire.acesbs.block;
import com.acethewildfire.acesbs.AcesBS;
import com.acethewildfire.acesbs.block.custom.EntropyBlock;
import com.acethewildfire.acesbs.block.custom.StableEntropyBlock;
import net.minecraft.block.AbstractBlock;
import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.block.ExperienceDroppingBlock;
import net.minecraft.block.*;
import net.minecraft.block.enums.NoteBlockInstrument;
import net.minecraft.item.BlockItem;
import net.minecraft.item.Item;
import net.minecraft.item.Items;
import net.minecraft.registry.Registries;
import net.minecraft.registry.Registry;
import net.minecraft.sound.BlockSoundGroup;
@@ -31,6 +30,7 @@ public class ModBlocks {
.requiresTool()
.sounds(BlockSoundGroup.STONE)));
public static final Block STABLE_ENTROPY_BLOCK = registerBlock("stable_entropy_block",
new StableEntropyBlock(AbstractBlock.Settings.create()
.strength(5f)
@@ -43,6 +43,16 @@ public class ModBlocks {
.requiresTool()
.sounds(BlockSoundGroup.LODESTONE)));
public static final Block LEMONWOOD_PLANKS = registerBlock("lemonwood_planks",
new Block(
AbstractBlock.Settings.create()
.mapColor(MapColor.PALE_YELLOW)
.instrument(NoteBlockInstrument.BASS)
.strength(2.0F, 3.0F)
.sounds(BlockSoundGroup.WOOD)
.burnable()
));
private static Block registerBlock(String name, Block block){
registerBlockItem(name, block);
return Registry.register(Registries.BLOCK, Identifier.of(AcesBS.MOD_ID, name), block);
@@ -24,5 +24,7 @@ public class ModBlockTagProvider extends FabricTagProvider.BlockTagProvider {
getOrCreateTagBuilder(BlockTags.NEEDS_IRON_TOOL)
.add(ModBlocks.ENTROPY_ORE)
.add(ModBlocks.ENTROPY_BLOCK);
getOrCreateTagBuilder(BlockTags.AXE_MINEABLE)
.add(ModBlocks.LEMONWOOD_PLANKS);
}
}
@@ -29,6 +29,7 @@ public class ModLootTableProvider extends FabricBlockLootTableProvider {
public void generate() {
addDrop(ModBlocks.ENTROPY_BLOCK);
addDrop(ModBlocks.STABLE_ENTROPY_BLOCK);
addDrop(ModBlocks.LEMONWOOD_PLANKS);
addDrop(ModBlocks.ENTROPY_ORE, multipleOreDrops(ModBlocks.ENTROPY_ORE, ModItems.RAW_ENTROPY, 1, 5));
}
@@ -20,6 +20,8 @@ public class ModModelProvider extends FabricModelProvider {
// blockStateModelGenerator.registerSimpleCubeAll(ModBlocks.ENTROPY_BLOCK);
// Has a complex texture, use the default blockbench method.
blockStateModelGenerator.registerSimpleCubeAll(ModBlocks.STABLE_ENTROPY_BLOCK);
blockStateModelGenerator.registerSimpleCubeAll(ModBlocks.LEMONWOOD_PLANKS);
}
@Override
@@ -5,8 +5,10 @@ import com.acethewildfire.acesbs.block.ModBlocks;
import com.acethewildfire.acesbs.item.ModItems;
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider;
import net.minecraft.block.Blocks;
import net.minecraft.data.server.recipe.RecipeExporter;
import net.minecraft.data.server.recipe.ShapedRecipeJsonBuilder;
import net.minecraft.data.server.recipe.ShapelessRecipeJsonBuilder;
import net.minecraft.item.ItemConvertible;
import net.minecraft.recipe.CampfireCookingRecipe;
import net.minecraft.recipe.RecipeSerializer;
@@ -45,6 +47,12 @@ public class ModRecipeProvider extends FabricRecipeProvider {
.criterion(hasItem(ModItems.LEMON), conditionsFromItem(ModItems.LEMON))
.offerTo(recipeExporter);
ShapelessRecipeJsonBuilder.create(RecipeCategory.BUILDING_BLOCKS, ModBlocks.LEMONWOOD_PLANKS, 4)
.input(Blocks.BIRCH_PLANKS, 4)
.input(ModItems.LEMON, 1)
.criterion(hasItem(ModItems.LEMON), conditionsFromItem(ModItems.LEMON))
.offerTo(recipeExporter);
// For 2+ recipes with the same RESULT use
// .offerTo(recipeExporter, Identifier.of(AcesBS.MOD_ID, "output_item_from_input_item"));
}
@@ -35,6 +35,7 @@ public class ModItemGroups {
entries.add(ModBlocks.ENTROPY_ORE);
entries.add(ModBlocks.ENTROPY_BLOCK);
entries.add(ModBlocks.STABLE_ENTROPY_BLOCK);
entries.add(ModBlocks.LEMONWOOD_PLANKS);
})
.build());
@@ -14,6 +14,7 @@
"block.acesbs.entropy_block": "Block of Entropy",
"block.acesbs.entropy_ore": "Entropic Ore",
"block.acesbs.stable_entropy_block": "Block of Stabilized Entropy",
"block.acesbs.lemonwood_planks": "Lemonwood Planks",
"itemgroup.acesbs.items": "Ace's BS Items",
"itemgroup.acesbs.blocks": "Ace's BS Blocks",
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB