Merge pull request '1.21.1/feat/31-implement_composting' (#33) from 1.21.1/feat/31-implement_composting into 1.21.1/dev
Reviewed-on: #33
This commit is contained in:
@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"values": {
|
||||||
|
"firefly_bush_backport:firefly_bush": {
|
||||||
|
"chance": 0.3
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -1,9 +1,6 @@
|
|||||||
package dev.micle.firefly_bush_backport.block;
|
package dev.micle.firefly_bush_backport.block;
|
||||||
|
|
||||||
import dev.micle.firefly_bush_backport.FireflyBushBackport;
|
import dev.micle.firefly_bush_backport.FireflyBushBackport;
|
||||||
import dev.micle.firefly_bush_backport.item.ModItems;
|
|
||||||
import net.minecraft.world.item.BlockItem;
|
|
||||||
import net.minecraft.world.item.Item;
|
|
||||||
import net.minecraft.world.level.block.Block;
|
import net.minecraft.world.level.block.Block;
|
||||||
import net.minecraft.world.level.block.SoundType;
|
import net.minecraft.world.level.block.SoundType;
|
||||||
import net.minecraft.world.level.block.state.BlockBehaviour;
|
import net.minecraft.world.level.block.state.BlockBehaviour;
|
||||||
@ -13,12 +10,10 @@ import net.neoforged.bus.api.IEventBus;
|
|||||||
import net.neoforged.neoforge.registries.DeferredHolder;
|
import net.neoforged.neoforge.registries.DeferredHolder;
|
||||||
import net.neoforged.neoforge.registries.DeferredRegister;
|
import net.neoforged.neoforge.registries.DeferredRegister;
|
||||||
|
|
||||||
import java.util.function.Supplier;
|
|
||||||
|
|
||||||
public class ModBlocks {
|
public class ModBlocks {
|
||||||
public static final DeferredRegister<Block> BLOCKS = DeferredRegister.createBlocks(FireflyBushBackport.MOD_ID);
|
public static final DeferredRegister<Block> BLOCKS = DeferredRegister.createBlocks(FireflyBushBackport.MOD_ID);
|
||||||
|
|
||||||
public static DeferredHolder<Block, FireflyBushBlock> FIREFLY_BUSH = registerBlock("firefly_bush",
|
public static DeferredHolder<Block, FireflyBushBlock> FIREFLY_BUSH = BLOCKS.register("firefly_bush",
|
||||||
() -> new FireflyBushBlock(BlockBehaviour.Properties.of()
|
() -> new FireflyBushBlock(BlockBehaviour.Properties.of()
|
||||||
.mapColor(MapColor.PLANT)
|
.mapColor(MapColor.PLANT)
|
||||||
.ignitedByLava()
|
.ignitedByLava()
|
||||||
@ -32,14 +27,4 @@ public class ModBlocks {
|
|||||||
public static void register(IEventBus modEventBus) {
|
public static void register(IEventBus modEventBus) {
|
||||||
BLOCKS.register(modEventBus);
|
BLOCKS.register(modEventBus);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static <T extends Block> DeferredHolder<Item, BlockItem> registerBlockItem(String name, DeferredHolder<Block, T> block) {
|
|
||||||
return ModItems.ITEMS.register(name, () -> new BlockItem(block.get(), new Item.Properties()));
|
|
||||||
}
|
|
||||||
|
|
||||||
private static <T extends Block> DeferredHolder<Block, T> registerBlock(String name, Supplier<T> block) {
|
|
||||||
DeferredHolder<Block, T> ret = BLOCKS.register(name, block);
|
|
||||||
registerBlockItem(name, ret);
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
package dev.micle.firefly_bush_backport.data;
|
package dev.micle.firefly_bush_backport.data;
|
||||||
|
|
||||||
import dev.micle.firefly_bush_backport.data.client.ModBlockStateProvider;
|
import dev.micle.firefly_bush_backport.data.client.ModBlockStateProvider;
|
||||||
|
import dev.micle.firefly_bush_backport.data.client.ModDataMapProvider;
|
||||||
import dev.micle.firefly_bush_backport.data.client.ModItemModelProvider;
|
import dev.micle.firefly_bush_backport.data.client.ModItemModelProvider;
|
||||||
import dev.micle.firefly_bush_backport.data.client.ModSoundDefinitionsProvider;
|
import dev.micle.firefly_bush_backport.data.client.ModSoundDefinitionsProvider;
|
||||||
import dev.micle.firefly_bush_backport.data.server.ModLootTableProvider;
|
import dev.micle.firefly_bush_backport.data.server.ModLootTableProvider;
|
||||||
@ -25,6 +26,7 @@ public class DataGenerators {
|
|||||||
generator.addProvider(event.includeClient(), new ModBlockStateProvider(generator, existingFileHelper));
|
generator.addProvider(event.includeClient(), new ModBlockStateProvider(generator, existingFileHelper));
|
||||||
generator.addProvider(event.includeClient(), new ModItemModelProvider(generator, existingFileHelper));
|
generator.addProvider(event.includeClient(), new ModItemModelProvider(generator, existingFileHelper));
|
||||||
generator.addProvider(event.includeClient(), new ModSoundDefinitionsProvider(generator, existingFileHelper));
|
generator.addProvider(event.includeClient(), new ModSoundDefinitionsProvider(generator, existingFileHelper));
|
||||||
|
generator.addProvider(event.includeClient(), new ModDataMapProvider(generator, lookupProvider));
|
||||||
|
|
||||||
generator.addProvider(event.includeServer(), new ModLootTableProvider(generator, lookupProvider));
|
generator.addProvider(event.includeServer(), new ModLootTableProvider(generator, lookupProvider));
|
||||||
generator.addProvider(event.includeServer(), new ModWorldGenProvider(generator, lookupProvider));
|
generator.addProvider(event.includeServer(), new ModWorldGenProvider(generator, lookupProvider));
|
||||||
|
|||||||
@ -0,0 +1,24 @@
|
|||||||
|
package dev.micle.firefly_bush_backport.data.client;
|
||||||
|
|
||||||
|
import dev.micle.firefly_bush_backport.item.ModItems;
|
||||||
|
import net.minecraft.core.HolderLookup;
|
||||||
|
import net.minecraft.data.DataGenerator;
|
||||||
|
import net.neoforged.neoforge.common.data.DataMapProvider;
|
||||||
|
import net.neoforged.neoforge.registries.datamaps.builtin.Compostable;
|
||||||
|
import net.neoforged.neoforge.registries.datamaps.builtin.NeoForgeDataMaps;
|
||||||
|
|
||||||
|
import javax.annotation.ParametersAreNonnullByDefault;
|
||||||
|
import java.util.concurrent.CompletableFuture;
|
||||||
|
|
||||||
|
public class ModDataMapProvider extends DataMapProvider {
|
||||||
|
public ModDataMapProvider(DataGenerator generator, CompletableFuture<HolderLookup.Provider> lookupProvider) {
|
||||||
|
super(generator.getPackOutput(), lookupProvider);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@ParametersAreNonnullByDefault
|
||||||
|
protected void gather(HolderLookup.Provider provider) {
|
||||||
|
this.builder(NeoForgeDataMaps.COMPOSTABLES)
|
||||||
|
.add(ModItems.FIREFLY_BUSH, new Compostable(0.3F), false);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -1,14 +1,26 @@
|
|||||||
package dev.micle.firefly_bush_backport.item;
|
package dev.micle.firefly_bush_backport.item;
|
||||||
|
|
||||||
import dev.micle.firefly_bush_backport.FireflyBushBackport;
|
import dev.micle.firefly_bush_backport.FireflyBushBackport;
|
||||||
|
import dev.micle.firefly_bush_backport.block.ModBlocks;
|
||||||
|
import net.minecraft.world.item.BlockItem;
|
||||||
import net.minecraft.world.item.Item;
|
import net.minecraft.world.item.Item;
|
||||||
|
import net.minecraft.world.level.block.Block;
|
||||||
import net.neoforged.bus.api.IEventBus;
|
import net.neoforged.bus.api.IEventBus;
|
||||||
|
import net.neoforged.neoforge.registries.DeferredHolder;
|
||||||
import net.neoforged.neoforge.registries.DeferredRegister;
|
import net.neoforged.neoforge.registries.DeferredRegister;
|
||||||
|
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
public class ModItems {
|
public class ModItems {
|
||||||
public static final DeferredRegister<Item> ITEMS = DeferredRegister.createItems(FireflyBushBackport.MOD_ID);
|
public static final DeferredRegister<Item> ITEMS = DeferredRegister.createItems(FireflyBushBackport.MOD_ID);
|
||||||
|
|
||||||
|
public static final DeferredHolder<Item, BlockItem> FIREFLY_BUSH = registerBlock(ModBlocks.FIREFLY_BUSH);
|
||||||
|
|
||||||
public static void register(IEventBus modEventBus) {
|
public static void register(IEventBus modEventBus) {
|
||||||
ITEMS.register(modEventBus);
|
ITEMS.register(modEventBus);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static <T extends Block> DeferredHolder<Item, BlockItem> registerBlock(DeferredHolder<Block, T> block) {
|
||||||
|
return ITEMS.register(Objects.requireNonNull(block.getId()).getPath(), () -> new BlockItem(block.get(), new Item.Properties()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user