Add compressed bedrock and stalinium ore blocks

This commit is contained in:
IM23a-spirgif
2025-05-12 21:10:16 +02:00
parent 2c868cb3e7
commit bd18873afa
8 changed files with 34 additions and 11 deletions
@@ -17,10 +17,23 @@ public class ModBlocks {
public static final DeferredRegister.Blocks BLOCKS =
DeferredRegister.createBlocks(Stalinium.MODID);
public static final DeferredBlock<Block> COMPRESSED_BEDROCK = registerBlock("compressed_bedrock",
() -> new Block(BlockBehaviour.Properties.of()
.strength(50f, 1200f)
.requiresCorrectToolForDrops()
.sound(SoundType.STONE)));
public static final DeferredBlock<Block> STALINIUM_ORE = registerBlock("stalinium_ore",
() -> new Block(BlockBehaviour.Properties.of()
.strength(5f, 6f)
.requiresCorrectToolForDrops()
.sound(SoundType.NETHER_ORE)));
public static final DeferredBlock<Block> STALINIUM_BLOCK = registerBlock("stalinium_block",
() -> new Block(BlockBehaviour.Properties.of()
.strength(5f).requiresCorrectToolForDrops().sound(SoundType.NETHERITE_BLOCK)));
.strength(10f, 15f)
.requiresCorrectToolForDrops()
.sound(SoundType.NETHERITE_BLOCK)));
private static <T extends Block> DeferredBlock<T> registerBlock(String name, Supplier<T> block) {
DeferredBlock<T> toReturn = BLOCKS.register(name, block);
@@ -35,4 +48,4 @@ public class ModBlocks {
public static void register(IEventBus eventBus) {
BLOCKS.register(eventBus);
}
}
}
@@ -25,17 +25,15 @@ public class DataGenerators {
ExistingFileHelper existingFileHelper = event.getExistingFileHelper();
CompletableFuture<HolderLookup.Provider> lookupProvider = event.getLookupProvider();
generator.addProvider(event.includeServer(), new LootTableProvider(packOutput, Collections.emptySet(),
List.of(new LootTableProvider.SubProviderEntry(ModBlockLootTableProvider::new, LootContextParamSets.BLOCK)), lookupProvider));
generator.addProvider(event.includeServer(), new LootTableProvider(packOutput, Collections.emptySet(), List.of(new LootTableProvider.SubProviderEntry(ModBlockLootTableProvider::new, LootContextParamSets.BLOCK)), lookupProvider));
generator.addProvider(event.includeServer(), new ModRecipeProvider(packOutput, lookupProvider));
BlockTagsProvider blockTagsProvider = new ModBlockTagProvider(packOutput, lookupProvider, existingFileHelper);
generator.addProvider(event.includeServer(), blockTagsProvider);
generator.addProvider(event.includeServer(), new ModItemTagProvider(packOutput, lookupProvider, blockTagsProvider.contentsGetter(), existingFileHelper));
generator.addProvider(event.includeClient(), new ModItemModelProvider(packOutput, existingFileHelper));
generator.addProvider(event.includeClient(), new ModBlockStateProvider(packOutput, existingFileHelper));
generator.addProvider(event.includeClient(), new ModItemModelProvider(packOutput, existingFileHelper));
generator.addProvider(event.includeServer(), new ModDatapackProvider(packOutput, lookupProvider));
}
}
@@ -25,7 +25,9 @@ public class ModBlockLootTableProvider extends BlockLootSubProvider {
@Override
protected void generate() {
dropSelf(ModBlocks.STALINIUM_ORE.get());
dropSelf(ModBlocks.STALINIUM_BLOCK.get());
dropSelf(ModBlocks.COMPRESSED_BEDROCK.get());
}
protected LootTable.Builder createMultipleOreDrops(Block pBlock, Item item, float minDrops, float maxDrops) {
@@ -14,9 +14,15 @@ public class ModBlockStateProvider extends BlockStateProvider {
@Override
protected void registerStatesAndModels() {
blockWithItem(ModBlocks.STALINIUM_BLOCK);
simpleBlock(ModBlocks.COMPRESSED_BEDROCK.get(),
models().cubeAll("compressed_bedrock", modLoc("block/compressed_bedrock")));
simpleBlock(ModBlocks.STALINIUM_ORE.get(),
models().cubeAll("stalinium_ore", modLoc("block/stalinium_ore")));
simpleBlock(ModBlocks.STALINIUM_BLOCK.get(),
models().cubeAll("stalinium_block", modLoc("block/stalinium_block")));
}
private void blockWithItem(DeferredBlock<?> deferredBlock) {
simpleBlockWithItem(deferredBlock.get(), cubeAll(deferredBlock.get()));
}
@@ -16,7 +16,6 @@ import java.util.concurrent.CompletableFuture;
public class ModDatapackProvider extends DatapackBuiltinEntriesProvider {
public static final RegistrySetBuilder BUILDER = new RegistrySetBuilder()
.add(Registries.CONFIGURED_FEATURE, ModConfiguredFeatures::bootstrap)
.add(Registries.PLACED_FEATURE, ModPlacedFeatures::bootstrap)
.add(NeoForgeRegistries.Keys.BIOME_MODIFIERS, ModBiomeModifiers::bootstrap);
@@ -13,7 +13,12 @@ public class ModItemModelProvider extends ItemModelProvider {
@Override
protected void registerModels() {
basicItem(ModItems.STALINIUM_INGOT.get());
basicItem(ModItems.SOVIET_ANTHEM_MUSIC_DISC.get());
withExistingParent("compressed_bedrock", modLoc("block/compressed_bedrock"));
withExistingParent("stalinium_ore", modLoc("block/stalinium_ore"));
withExistingParent("stalinium_block", modLoc("block/stalinium_block"));
singleTexture("stalinium_ingot",
mcLoc("item/generated"),
"layer0",
modLoc("item/stalinium_ingot"));
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 169 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 677 B