From 529f40395e6ee5578b7d5859353af6430496726b Mon Sep 17 00:00:00 2001 From: Jottyfan Date: Sat, 23 Nov 2024 23:04:56 +0100 Subject: [PATCH] added ores --- .../de/jottyfan/quickiemod/Quickiemod.java | 2 + .../quickiemod/block/BlockDirtSalpeter.java | 48 ++++++++++++++ .../block/BlockOreDeepslateSulphor.java | 33 ++++++++++ .../block/BlockOreNetherSulphor.java | 33 ++++++++++ .../quickiemod/block/BlockOreSalpeter.java | 34 ++++++++++ .../block/BlockOreSandSalpeter.java | 34 ++++++++++ .../quickiemod/block/BlockOreSulphor.java | 33 ++++++++++ .../quickiemod/block/BlockSandSalpeter.java | 43 ++++++++++++ .../jottyfan/quickiemod/block/ModBlocks.java | 21 ++++++ .../block/help/IntProviderHelper.java | 37 +++++++++++ .../quickiemod/feature/ModFeatures.java | 66 +++++++++++++++++++ .../quickiemod/identifier/ModIdentifiers.java | 7 ++ .../quickiemod/blockstates/dirtsalpeter.json | 7 ++ .../blockstates/oredeepslatesulphor.json | 7 ++ .../blockstates/orenethersulphor.json | 7 ++ .../quickiemod/blockstates/oresalpeter.json | 7 ++ .../blockstates/oresandsalpeter.json | 7 ++ .../quickiemod/blockstates/oresulphor.json | 7 ++ .../quickiemod/blockstates/sandsalpeter.json | 7 ++ .../quickiemod/models/block/dirtsalpeter.json | 6 ++ .../models/block/oredeepslatesulphor.json | 6 ++ .../models/block/orenethersulphor.json | 6 ++ .../quickiemod/models/block/oresalpeter.json | 6 ++ .../models/block/oresandsalpeter.json | 7 ++ .../quickiemod/models/block/oresulphor.json | 6 ++ .../quickiemod/models/block/sandsalpeter.json | 6 ++ .../quickiemod/models/item/dirtsalpeter.json | 10 +++ .../models/item/oredeepslatesulphor.json | 10 +++ .../models/item/orenethersulphor.json | 10 +++ .../quickiemod/models/item/oresalpeter.json | 10 +++ .../models/item/oresandsalpeter.json | 10 +++ .../quickiemod/models/item/oresulphor.json | 10 +++ .../quickiemod/models/item/sandsalpeter.json | 10 +++ .../tags/block/mineable/pickaxe.json | 9 ++- .../tag/items/ores/oresalpeter.json | 6 ++ .../quickiemod/tag/items/ores/oresulphor.json | 6 ++ .../tags/block/mineable/pickaxe.json | 12 ++++ .../configured_feature/blocksulphor.json | 18 +++++ .../configured_feature/dirtsalpeter.json | 18 +++++ .../oredeepslatesulphor.json | 18 +++++ .../configured_feature/orenethersulphor.json | 18 +++++ .../configured_feature/oresalpeter.json | 18 +++++ .../configured_feature/oresandsalpeter.json | 18 +++++ .../configured_feature/oresulphor.json | 18 +++++ .../configured_feature/sandsalpeter.json | 18 +++++ .../worldgen/placed_feature/blocksulphor.json | 27 ++++++++ .../worldgen/placed_feature/dirtsalpeter.json | 27 ++++++++ .../placed_feature/oredeepslatesulphor.json | 27 ++++++++ .../placed_feature/orenethersulphor.json | 27 ++++++++ .../worldgen/placed_feature/oresalpeter.json | 27 ++++++++ .../placed_feature/oresandsalpeter.json | 27 ++++++++ .../worldgen/placed_feature/oresulphor.json | 27 ++++++++ .../worldgen/placed_feature/sandsalpeter.json | 27 ++++++++ 53 files changed, 945 insertions(+), 1 deletion(-) create mode 100644 src/main/java/de/jottyfan/quickiemod/block/BlockDirtSalpeter.java create mode 100644 src/main/java/de/jottyfan/quickiemod/block/BlockOreDeepslateSulphor.java create mode 100644 src/main/java/de/jottyfan/quickiemod/block/BlockOreNetherSulphor.java create mode 100644 src/main/java/de/jottyfan/quickiemod/block/BlockOreSalpeter.java create mode 100644 src/main/java/de/jottyfan/quickiemod/block/BlockOreSandSalpeter.java create mode 100644 src/main/java/de/jottyfan/quickiemod/block/BlockOreSulphor.java create mode 100644 src/main/java/de/jottyfan/quickiemod/block/BlockSandSalpeter.java create mode 100644 src/main/java/de/jottyfan/quickiemod/block/help/IntProviderHelper.java create mode 100644 src/main/java/de/jottyfan/quickiemod/feature/ModFeatures.java create mode 100644 src/main/resources/assets/quickiemod/blockstates/dirtsalpeter.json create mode 100644 src/main/resources/assets/quickiemod/blockstates/oredeepslatesulphor.json create mode 100644 src/main/resources/assets/quickiemod/blockstates/orenethersulphor.json create mode 100644 src/main/resources/assets/quickiemod/blockstates/oresalpeter.json create mode 100644 src/main/resources/assets/quickiemod/blockstates/oresandsalpeter.json create mode 100644 src/main/resources/assets/quickiemod/blockstates/oresulphor.json create mode 100644 src/main/resources/assets/quickiemod/blockstates/sandsalpeter.json create mode 100644 src/main/resources/assets/quickiemod/models/block/dirtsalpeter.json create mode 100644 src/main/resources/assets/quickiemod/models/block/oredeepslatesulphor.json create mode 100644 src/main/resources/assets/quickiemod/models/block/orenethersulphor.json create mode 100644 src/main/resources/assets/quickiemod/models/block/oresalpeter.json create mode 100644 src/main/resources/assets/quickiemod/models/block/oresandsalpeter.json create mode 100644 src/main/resources/assets/quickiemod/models/block/oresulphor.json create mode 100644 src/main/resources/assets/quickiemod/models/block/sandsalpeter.json create mode 100644 src/main/resources/assets/quickiemod/models/item/dirtsalpeter.json create mode 100644 src/main/resources/assets/quickiemod/models/item/oredeepslatesulphor.json create mode 100644 src/main/resources/assets/quickiemod/models/item/orenethersulphor.json create mode 100644 src/main/resources/assets/quickiemod/models/item/oresalpeter.json create mode 100644 src/main/resources/assets/quickiemod/models/item/oresandsalpeter.json create mode 100644 src/main/resources/assets/quickiemod/models/item/oresulphor.json create mode 100644 src/main/resources/assets/quickiemod/models/item/sandsalpeter.json create mode 100644 src/main/resources/data/quickiemod/tag/items/ores/oresalpeter.json create mode 100644 src/main/resources/data/quickiemod/tag/items/ores/oresulphor.json create mode 100644 src/main/resources/data/quickiemod/tags/block/mineable/pickaxe.json create mode 100644 src/main/resources/data/quickiemod/worldgen/configured_feature/blocksulphor.json create mode 100644 src/main/resources/data/quickiemod/worldgen/configured_feature/dirtsalpeter.json create mode 100644 src/main/resources/data/quickiemod/worldgen/configured_feature/oredeepslatesulphor.json create mode 100644 src/main/resources/data/quickiemod/worldgen/configured_feature/orenethersulphor.json create mode 100644 src/main/resources/data/quickiemod/worldgen/configured_feature/oresalpeter.json create mode 100644 src/main/resources/data/quickiemod/worldgen/configured_feature/oresandsalpeter.json create mode 100644 src/main/resources/data/quickiemod/worldgen/configured_feature/oresulphor.json create mode 100644 src/main/resources/data/quickiemod/worldgen/configured_feature/sandsalpeter.json create mode 100644 src/main/resources/data/quickiemod/worldgen/placed_feature/blocksulphor.json create mode 100644 src/main/resources/data/quickiemod/worldgen/placed_feature/dirtsalpeter.json create mode 100644 src/main/resources/data/quickiemod/worldgen/placed_feature/oredeepslatesulphor.json create mode 100644 src/main/resources/data/quickiemod/worldgen/placed_feature/orenethersulphor.json create mode 100644 src/main/resources/data/quickiemod/worldgen/placed_feature/oresalpeter.json create mode 100644 src/main/resources/data/quickiemod/worldgen/placed_feature/oresandsalpeter.json create mode 100644 src/main/resources/data/quickiemod/worldgen/placed_feature/oresulphor.json create mode 100644 src/main/resources/data/quickiemod/worldgen/placed_feature/sandsalpeter.json diff --git a/src/main/java/de/jottyfan/quickiemod/Quickiemod.java b/src/main/java/de/jottyfan/quickiemod/Quickiemod.java index 360075c..08ef398 100644 --- a/src/main/java/de/jottyfan/quickiemod/Quickiemod.java +++ b/src/main/java/de/jottyfan/quickiemod/Quickiemod.java @@ -8,6 +8,7 @@ import org.slf4j.LoggerFactory; import de.jottyfan.quickiemod.block.ModBlocks; import de.jottyfan.quickiemod.blockentity.ModBlockentity; import de.jottyfan.quickiemod.event.EventBlockBreak; +import de.jottyfan.quickiemod.feature.ModFeatures; import de.jottyfan.quickiemod.item.ModItems; import de.jottyfan.quickiemod.itemgroup.ModItemGroup; import net.fabricmc.api.ModInitializer; @@ -29,6 +30,7 @@ public class Quickiemod implements ModInitializer { ModBlockentity.registerModBlockentities(); List items = ModItems.registerModItems(); List blocks = ModBlocks.registerModBlocks(); + ModFeatures.registerFeatures(); ModItemGroup.registerItemGroup(items, blocks); PlayerBlockBreakEvents.AFTER.register((world, player, pos, state, blockEntity) -> { diff --git a/src/main/java/de/jottyfan/quickiemod/block/BlockDirtSalpeter.java b/src/main/java/de/jottyfan/quickiemod/block/BlockDirtSalpeter.java new file mode 100644 index 0000000..131fe61 --- /dev/null +++ b/src/main/java/de/jottyfan/quickiemod/block/BlockDirtSalpeter.java @@ -0,0 +1,48 @@ +package de.jottyfan.quickiemod.block; + +import java.util.Arrays; +import java.util.List; +import java.util.Random; + +import com.mojang.serialization.MapCodec; + +import de.jottyfan.quickiemod.item.ModItems; +import net.minecraft.block.AbstractBlock; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.FallingBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; +import net.minecraft.loot.context.LootWorldContext.Builder; +import net.minecraft.registry.RegistryKey; +import net.minecraft.registry.RegistryKeys; +import net.minecraft.util.Identifier; + +/** + * + * @author jotty + * + */ +public class BlockDirtSalpeter extends FallingBlock { + + public BlockDirtSalpeter(Identifier identifier) { + super(AbstractBlock.Settings.create().hardness(3.1f).registryKey(RegistryKey.of(RegistryKeys.BLOCK, identifier))); + } + + @Override + public List getDroppedStacks(BlockState blockState, Builder builder) { + Integer count = (Double.valueOf(new Random().nextDouble() * 10).intValue() / 4) + 1; + boolean spawnBoneMeal = new Random().nextDouble() > 0.5f; + ItemStack boneMealStack = new ItemStack(Items.BONE_MEAL); + ItemStack salpeterStack = new ItemStack(ModItems.ITEM_SALPETER, count); + ItemStack dirtStack = new ItemStack(Blocks.DIRT); + ItemStack[] spawnies = spawnBoneMeal ? new ItemStack[] { boneMealStack, salpeterStack, dirtStack } + : new ItemStack[] { salpeterStack, dirtStack }; + return Arrays.asList(spawnies); + } + + @Override + protected MapCodec getCodec() { + return null; + } +} diff --git a/src/main/java/de/jottyfan/quickiemod/block/BlockOreDeepslateSulphor.java b/src/main/java/de/jottyfan/quickiemod/block/BlockOreDeepslateSulphor.java new file mode 100644 index 0000000..4c3063a --- /dev/null +++ b/src/main/java/de/jottyfan/quickiemod/block/BlockOreDeepslateSulphor.java @@ -0,0 +1,33 @@ +package de.jottyfan.quickiemod.block; + +import java.util.Arrays; +import java.util.List; + +import de.jottyfan.quickiemod.block.help.IntProviderHelper; +import de.jottyfan.quickiemod.item.ModItems; +import net.minecraft.block.BlockState; +import net.minecraft.block.ExperienceDroppingBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.context.LootWorldContext.Builder; +import net.minecraft.registry.RegistryKey; +import net.minecraft.registry.RegistryKeys; +import net.minecraft.sound.BlockSoundGroup; +import net.minecraft.util.Identifier; + +/** + * + * @author jotty + * + */ +public class BlockOreDeepslateSulphor extends ExperienceDroppingBlock { + + public BlockOreDeepslateSulphor(Identifier identifier) { + super(IntProviderHelper.of(0, 2), Settings.create().strength(2.5f).hardness(1.9f).sounds(BlockSoundGroup.SOUL_SAND) + .requiresTool().registryKey(RegistryKey.of(RegistryKeys.BLOCK, identifier))); + } + + @Override + public List getDroppedStacks(BlockState state, Builder builder) { + return Arrays.asList(new ItemStack[] { new ItemStack(ModItems.ITEM_SULFOR, 4) }); + } +} diff --git a/src/main/java/de/jottyfan/quickiemod/block/BlockOreNetherSulphor.java b/src/main/java/de/jottyfan/quickiemod/block/BlockOreNetherSulphor.java new file mode 100644 index 0000000..6bdf663 --- /dev/null +++ b/src/main/java/de/jottyfan/quickiemod/block/BlockOreNetherSulphor.java @@ -0,0 +1,33 @@ +package de.jottyfan.quickiemod.block; + +import java.util.Arrays; +import java.util.List; + +import de.jottyfan.quickiemod.block.help.IntProviderHelper; +import de.jottyfan.quickiemod.item.ModItems; +import net.minecraft.block.BlockState; +import net.minecraft.block.ExperienceDroppingBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.context.LootWorldContext.Builder; +import net.minecraft.registry.RegistryKey; +import net.minecraft.registry.RegistryKeys; +import net.minecraft.sound.BlockSoundGroup; +import net.minecraft.util.Identifier; + +/** + * + * @author jotty + * + */ +public class BlockOreNetherSulphor extends ExperienceDroppingBlock { + + public BlockOreNetherSulphor(Identifier identifier) { + super(IntProviderHelper.of(0, 2), Settings.create().strength(2.5f).hardness(2.1f).sounds(BlockSoundGroup.SOUL_SAND) + .requiresTool().registryKey(RegistryKey.of(RegistryKeys.BLOCK, identifier))); + } + + @Override + public List getDroppedStacks(BlockState state, Builder builder) { + return Arrays.asList(new ItemStack[] { new ItemStack(ModItems.ITEM_SULFOR) }); + } +} diff --git a/src/main/java/de/jottyfan/quickiemod/block/BlockOreSalpeter.java b/src/main/java/de/jottyfan/quickiemod/block/BlockOreSalpeter.java new file mode 100644 index 0000000..aec1a06 --- /dev/null +++ b/src/main/java/de/jottyfan/quickiemod/block/BlockOreSalpeter.java @@ -0,0 +1,34 @@ +package de.jottyfan.quickiemod.block; + +import java.util.Arrays; +import java.util.List; + +import de.jottyfan.quickiemod.block.help.IntProviderHelper; +import de.jottyfan.quickiemod.item.ModItems; +import net.minecraft.block.BlockState; +import net.minecraft.block.ExperienceDroppingBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.context.LootWorldContext.Builder; +import net.minecraft.registry.RegistryKey; +import net.minecraft.registry.RegistryKeys; +import net.minecraft.sound.BlockSoundGroup; +import net.minecraft.util.Identifier; +import net.minecraft.util.math.random.Random; + +/** + * + * @author jotty + * + */ +public class BlockOreSalpeter extends ExperienceDroppingBlock { + + public BlockOreSalpeter(Identifier identifier) { + super(IntProviderHelper.of(0, 2), Settings.create().strength(2.5f).hardness(3.1f).sounds(BlockSoundGroup.SOUL_SAND) + .requiresTool().registryKey(RegistryKey.of(RegistryKeys.BLOCK, identifier))); + } + + @Override + public List getDroppedStacks(BlockState state, Builder builder) { + return Arrays.asList(new ItemStack[] { new ItemStack(ModItems.ITEM_SALPETER, 2 + Random.create().nextInt(3)) }); + } +} diff --git a/src/main/java/de/jottyfan/quickiemod/block/BlockOreSandSalpeter.java b/src/main/java/de/jottyfan/quickiemod/block/BlockOreSandSalpeter.java new file mode 100644 index 0000000..368ba80 --- /dev/null +++ b/src/main/java/de/jottyfan/quickiemod/block/BlockOreSandSalpeter.java @@ -0,0 +1,34 @@ +package de.jottyfan.quickiemod.block; + +import java.util.Arrays; +import java.util.List; + +import de.jottyfan.quickiemod.block.help.IntProviderHelper; +import de.jottyfan.quickiemod.item.ModItems; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.ExperienceDroppingBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.context.LootWorldContext.Builder; +import net.minecraft.registry.RegistryKey; +import net.minecraft.registry.RegistryKeys; +import net.minecraft.sound.BlockSoundGroup; +import net.minecraft.util.Identifier; +import net.minecraft.util.math.random.Random; + +/** + * + * @author jotty + * + */ +public class BlockOreSandSalpeter extends ExperienceDroppingBlock { + + public BlockOreSandSalpeter(Identifier identifier) { + super(IntProviderHelper.of(0, 2), Settings.create().strength(2.5f).hardness(2.9f).sounds(BlockSoundGroup.SOUL_SAND).requiresTool().registryKey(RegistryKey.of(RegistryKeys.BLOCK, identifier))); + } + + @Override + public List getDroppedStacks(BlockState state, Builder builder) { + return Arrays.asList(new ItemStack[] { new ItemStack(ModItems.ITEM_SALPETER, 7 + Random.create().nextInt(4)), new ItemStack(Blocks.SAND) }); + } +} diff --git a/src/main/java/de/jottyfan/quickiemod/block/BlockOreSulphor.java b/src/main/java/de/jottyfan/quickiemod/block/BlockOreSulphor.java new file mode 100644 index 0000000..3b81fd7 --- /dev/null +++ b/src/main/java/de/jottyfan/quickiemod/block/BlockOreSulphor.java @@ -0,0 +1,33 @@ +package de.jottyfan.quickiemod.block; + +import java.util.Arrays; +import java.util.List; + +import de.jottyfan.quickiemod.block.help.IntProviderHelper; +import de.jottyfan.quickiemod.item.ModItems; +import net.minecraft.block.BlockState; +import net.minecraft.block.ExperienceDroppingBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.context.LootWorldContext.Builder; +import net.minecraft.registry.RegistryKey; +import net.minecraft.registry.RegistryKeys; +import net.minecraft.sound.BlockSoundGroup; +import net.minecraft.util.Identifier; + +/** + * + * @author jotty + * + */ +public class BlockOreSulphor extends ExperienceDroppingBlock { + + public BlockOreSulphor(Identifier identifier) { + super(IntProviderHelper.of(0, 2), Settings.create().strength(2.5f).hardness(1.9f).sounds(BlockSoundGroup.SOUL_SAND) + .requiresTool().registryKey(RegistryKey.of(RegistryKeys.BLOCK, identifier))); + } + + @Override + public List getDroppedStacks(BlockState state, Builder builder) { + return Arrays.asList(new ItemStack[] { new ItemStack(ModItems.ITEM_SULFOR) }); + } +} diff --git a/src/main/java/de/jottyfan/quickiemod/block/BlockSandSalpeter.java b/src/main/java/de/jottyfan/quickiemod/block/BlockSandSalpeter.java new file mode 100644 index 0000000..ab9637b --- /dev/null +++ b/src/main/java/de/jottyfan/quickiemod/block/BlockSandSalpeter.java @@ -0,0 +1,43 @@ +package de.jottyfan.quickiemod.block; + +import java.util.Arrays; +import java.util.List; + +import com.mojang.serialization.MapCodec; + +import de.jottyfan.quickiemod.item.ModItems; +import net.minecraft.block.BlockState; +import net.minecraft.block.Blocks; +import net.minecraft.block.FallingBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.loot.context.LootWorldContext.Builder; +import net.minecraft.registry.RegistryKey; +import net.minecraft.registry.RegistryKeys; +import net.minecraft.sound.BlockSoundGroup; +import net.minecraft.util.Identifier; +import net.minecraft.util.math.random.Random; + +/** + * + * @author jotty + * + */ +public class BlockSandSalpeter extends FallingBlock { + + public BlockSandSalpeter(Identifier identifier) { + super(Settings.create().strength(2.5f).hardness(3.1f).sounds(BlockSoundGroup.SOUL_SAND).requiresTool() + .registryKey(RegistryKey.of(RegistryKeys.BLOCK, identifier))); + } + + @Override + public List getDroppedStacks(BlockState state, Builder builder) { + return Arrays.asList(new ItemStack[] { new ItemStack(ModItems.ITEM_SALPETER, 3 + Random.create().nextInt(2)), + new ItemStack(Blocks.SAND) }); + } + + @Override + protected MapCodec getCodec() { + // TODO Auto-generated method stub + return null; + } +} diff --git a/src/main/java/de/jottyfan/quickiemod/block/ModBlocks.java b/src/main/java/de/jottyfan/quickiemod/block/ModBlocks.java index 3342fb3..c3a5934 100644 --- a/src/main/java/de/jottyfan/quickiemod/block/ModBlocks.java +++ b/src/main/java/de/jottyfan/quickiemod/block/ModBlocks.java @@ -39,6 +39,20 @@ public class ModBlocks { new BlockEmptyLavahoarder(ModIdentifiers.BLOCK_EMPTYLAVAHOARDER)); public static final Block BLOCK_ITEMHOARDER = registerBlock(ModIdentifiers.BLOCK_ITEMHOARDER, new BlockItemhoarder(ModIdentifiers.BLOCK_ITEMHOARDER)); + public static final Block BLOCK_DIRTSALPETER = registerBlock(ModIdentifiers.BLOCK_DIRTSALPETER, + new BlockDirtSalpeter(ModIdentifiers.BLOCK_DIRTSALPETER)); + public static final Block BLOCK_OREDEEPSLATESULFOR = registerBlock(ModIdentifiers.BLOCK_OREDEEPSLATESULFOR, + new BlockOreDeepslateSulphor(ModIdentifiers.BLOCK_OREDEEPSLATESULFOR)); + public static final Block BLOCK_ORENETHERSULFOR = registerBlock(ModIdentifiers.BLOCK_ORENETHERSULFOR, + new BlockOreNetherSulphor(ModIdentifiers.BLOCK_ORENETHERSULFOR)); + public static final Block BLOCK_ORESALPETER = registerBlock(ModIdentifiers.BLOCK_ORESALPETER, + new BlockOreSalpeter(ModIdentifiers.BLOCK_ORESALPETER)); + public static final Block BLOCK_ORESANDSALPETER = registerBlock(ModIdentifiers.BLOCK_ORESANDSALPETER, + new BlockOreSandSalpeter(ModIdentifiers.BLOCK_ORESANDSALPETER)); + public static final Block BLOCK_ORESULFOR = registerBlock(ModIdentifiers.BLOCK_ORESULFOR, + new BlockOreSulphor(ModIdentifiers.BLOCK_ORESULFOR)); + public static final Block BLOCK_SANDSALPETER = registerBlock(ModIdentifiers.BLOCK_SANDSALPETER, + new BlockSandSalpeter(ModIdentifiers.BLOCK_SANDSALPETER)); private static final Block registerBlock(Identifier identifier, Block block) { Registry.register(Registries.ITEM, identifier, new BlockItem(block, new Item.Settings() @@ -58,6 +72,13 @@ public class ModBlocks { blocks.add(BLOCK_EMPTYLAVAHOARDER); blocks.add(BLOCK_LAVAHOARDER); blocks.add(BLOCK_ITEMHOARDER); + blocks.add(BLOCK_DIRTSALPETER); + blocks.add(BLOCK_OREDEEPSLATESULFOR); + blocks.add(BLOCK_ORENETHERSULFOR); + blocks.add(BLOCK_ORESALPETER); + blocks.add(BLOCK_ORESANDSALPETER); + blocks.add(BLOCK_ORESULFOR); + blocks.add(BLOCK_SANDSALPETER); return blocks; } } diff --git a/src/main/java/de/jottyfan/quickiemod/block/help/IntProviderHelper.java b/src/main/java/de/jottyfan/quickiemod/block/help/IntProviderHelper.java new file mode 100644 index 0000000..56abe99 --- /dev/null +++ b/src/main/java/de/jottyfan/quickiemod/block/help/IntProviderHelper.java @@ -0,0 +1,37 @@ +package de.jottyfan.quickiemod.block.help; + +import net.minecraft.util.math.intprovider.IntProvider; +import net.minecraft.util.math.intprovider.IntProviderType; +import net.minecraft.util.math.random.Random; + +/** + * + * @author jotty + * + */ +public class IntProviderHelper { + public static final IntProvider of(Integer min, Integer max) { + return new IntProvider() { + + @Override + public IntProviderType getType() { + return IntProviderType.CONSTANT; + } + + @Override + public int getMin() { + return min; + } + + @Override + public int getMax() { + return max; + } + + @Override + public int get(Random random) { + return random.nextBetween(min, max); + } + }; + } +} diff --git a/src/main/java/de/jottyfan/quickiemod/feature/ModFeatures.java b/src/main/java/de/jottyfan/quickiemod/feature/ModFeatures.java new file mode 100644 index 0000000..30350e4 --- /dev/null +++ b/src/main/java/de/jottyfan/quickiemod/feature/ModFeatures.java @@ -0,0 +1,66 @@ +package de.jottyfan.quickiemod.feature; + +import de.jottyfan.quickiemod.Quickiemod; +import net.fabricmc.fabric.api.biome.v1.BiomeModifications; +import net.fabricmc.fabric.api.biome.v1.BiomeSelectors; +import net.fabricmc.fabric.api.biome.v1.ModificationPhase; +import net.minecraft.registry.RegistryKey; +import net.minecraft.registry.RegistryKeys; +import net.minecraft.util.Identifier; +import net.minecraft.world.gen.GenerationStep; +import net.minecraft.world.gen.feature.ConfiguredFeature; +import net.minecraft.world.gen.feature.PlacedFeature; + +/** + * + * @author jotty + * + */ +public class ModFeatures { + + public static final RegistryKey> CF_ORESULFUR = genCf("oresulphor"); + public static final RegistryKey> CF_OREDEEPSLATESULFUR = genCf("oredepslatesulphor"); + public static final RegistryKey> CF_ORESALPETER = genCf("oresalpeter"); + public static final RegistryKey> CF_ORENETHERSULPHOR = genCf("orenethersulphore"); + public static final RegistryKey> CF_BLOCKSULPHOR = genCf("blocksulphor"); + public static final RegistryKey> CF_DIRTSALPETER = genCf("dirtsalpeter"); + public static final RegistryKey> CF_SANDSALPETER = genCf("sandsalpeter"); + public static final RegistryKey> CF_ORESANDSALPETER = genCf("oresandsalpeter"); + + public static final RegistryKey PF_ORESULPHOR = genPf("oresulphor"); + public static final RegistryKey PF_OREDEEPSLATESULPHOR = genPf("oredeepslatesulphor"); + public static final RegistryKey PF_ORESALPETER = genPf("oresalpeter"); + public static final RegistryKey PF_ORENETHERSULPHOR = genPf("orenethersulphor"); + public static final RegistryKey PF_BLOCKSULPHOR = genPf("blocksulphor"); + public static final RegistryKey PF_DIRTSALPETER = genPf("dirtsalpeter"); + public static final RegistryKey PF_SANDSALPETER = genPf("sandsalpeter"); + public static final RegistryKey PF_ORESANDSALPETER = genPf("oresandsalpeter"); + + private static final RegistryKey> genCf(String name) { + return RegistryKey.of(RegistryKeys.CONFIGURED_FEATURE, Identifier.of(Quickiemod.MOD_ID, name)); + } + + private static final RegistryKey genPf(String name) { + return RegistryKey.of(RegistryKeys.PLACED_FEATURE, Identifier.of(Quickiemod.MOD_ID, name)); + } + + public static final void registerFeatures() { + // Overworld features + BiomeModifications.create(Identifier.of(Quickiemod.MOD_ID, "features")).add(ModificationPhase.ADDITIONS, + BiomeSelectors.foundInOverworld(), (bsc, bmc) -> { + bmc.getGenerationSettings().addFeature(GenerationStep.Feature.UNDERGROUND_ORES, PF_ORESULPHOR); + bmc.getGenerationSettings().addFeature(GenerationStep.Feature.UNDERGROUND_ORES, PF_ORESALPETER); + bmc.getGenerationSettings().addFeature(GenerationStep.Feature.UNDERGROUND_ORES, PF_DIRTSALPETER); + bmc.getGenerationSettings().addFeature(GenerationStep.Feature.UNDERGROUND_ORES, PF_SANDSALPETER); + bmc.getGenerationSettings().addFeature(GenerationStep.Feature.UNDERGROUND_ORES, PF_ORESANDSALPETER); + bmc.getGenerationSettings().addFeature(GenerationStep.Feature.UNDERGROUND_ORES, PF_OREDEEPSLATESULPHOR); + }); + + // Nether features + BiomeModifications.create(Identifier.of(Quickiemod.MOD_ID, "nether_features")).add(ModificationPhase.ADDITIONS, + BiomeSelectors.foundInTheNether(), (bsc, bmc) -> { + bmc.getGenerationSettings().addFeature(GenerationStep.Feature.UNDERGROUND_ORES, PF_ORENETHERSULPHOR); + bmc.getGenerationSettings().addFeature(GenerationStep.Feature.UNDERGROUND_ORES, PF_BLOCKSULPHOR); + }); + } +} diff --git a/src/main/java/de/jottyfan/quickiemod/identifier/ModIdentifiers.java b/src/main/java/de/jottyfan/quickiemod/identifier/ModIdentifiers.java index 2fb98ac..afac175 100644 --- a/src/main/java/de/jottyfan/quickiemod/identifier/ModIdentifiers.java +++ b/src/main/java/de/jottyfan/quickiemod/identifier/ModIdentifiers.java @@ -40,6 +40,13 @@ public class ModIdentifiers { public static final Identifier BLOCK_LAVAHOARDER = Identifier.of(Quickiemod.MOD_ID, "lavahoarder"); public static final Identifier BLOCK_EMPTYLAVAHOARDER = Identifier.of(Quickiemod.MOD_ID, "emptylavahoarder"); public static final Identifier BLOCK_ITEMHOARDER = Identifier.of(Quickiemod.MOD_ID, "itemhoarder"); + public static final Identifier BLOCK_DIRTSALPETER = Identifier.of(Quickiemod.MOD_ID, "dirtsalpeter"); + public static final Identifier BLOCK_OREDEEPSLATESULFOR = Identifier.of(Quickiemod.MOD_ID, "oredeepslatesulphor"); + public static final Identifier BLOCK_ORENETHERSULFOR = Identifier.of(Quickiemod.MOD_ID, "orenethersulphor"); + public static final Identifier BLOCK_ORESALPETER = Identifier.of(Quickiemod.MOD_ID, "oresalpeter"); + public static final Identifier BLOCK_ORESANDSALPETER = Identifier.of(Quickiemod.MOD_ID, "oresandsalpeter"); + public static final Identifier BLOCK_ORESULFOR = Identifier.of(Quickiemod.MOD_ID, "oresulphor"); + public static final Identifier BLOCK_SANDSALPETER = Identifier.of(Quickiemod.MOD_ID, "sandsalpeter"); public static final Identifier BLOCKENTITY_ITEMHOARDER = Identifier.of(Quickiemod.MOD_ID, "itemhoarderblockentity"); public static final Identifier BLOCKENTITY_BLOCKSTACKER = Identifier.of(Quickiemod.MOD_ID, "blockstackerblockentity"); diff --git a/src/main/resources/assets/quickiemod/blockstates/dirtsalpeter.json b/src/main/resources/assets/quickiemod/blockstates/dirtsalpeter.json new file mode 100644 index 0000000..9bd7b2f --- /dev/null +++ b/src/main/resources/assets/quickiemod/blockstates/dirtsalpeter.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "quickiemod:block/dirtsalpeter" + } + } +} diff --git a/src/main/resources/assets/quickiemod/blockstates/oredeepslatesulphor.json b/src/main/resources/assets/quickiemod/blockstates/oredeepslatesulphor.json new file mode 100644 index 0000000..55bcfb7 --- /dev/null +++ b/src/main/resources/assets/quickiemod/blockstates/oredeepslatesulphor.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "quickiemod:block/oredeepslatesulphor" + } + } +} diff --git a/src/main/resources/assets/quickiemod/blockstates/orenethersulphor.json b/src/main/resources/assets/quickiemod/blockstates/orenethersulphor.json new file mode 100644 index 0000000..96fe466 --- /dev/null +++ b/src/main/resources/assets/quickiemod/blockstates/orenethersulphor.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "quickiemod:block/orenethersulphor" + } + } +} diff --git a/src/main/resources/assets/quickiemod/blockstates/oresalpeter.json b/src/main/resources/assets/quickiemod/blockstates/oresalpeter.json new file mode 100644 index 0000000..5e645db --- /dev/null +++ b/src/main/resources/assets/quickiemod/blockstates/oresalpeter.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "quickiemod:block/oresalpeter" + } + } +} diff --git a/src/main/resources/assets/quickiemod/blockstates/oresandsalpeter.json b/src/main/resources/assets/quickiemod/blockstates/oresandsalpeter.json new file mode 100644 index 0000000..aaea60d --- /dev/null +++ b/src/main/resources/assets/quickiemod/blockstates/oresandsalpeter.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "quickiemod:block/oresandsalpeter" + } + } +} diff --git a/src/main/resources/assets/quickiemod/blockstates/oresulphor.json b/src/main/resources/assets/quickiemod/blockstates/oresulphor.json new file mode 100644 index 0000000..fb0d815 --- /dev/null +++ b/src/main/resources/assets/quickiemod/blockstates/oresulphor.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "quickiemod:block/oresulphor" + } + } +} diff --git a/src/main/resources/assets/quickiemod/blockstates/sandsalpeter.json b/src/main/resources/assets/quickiemod/blockstates/sandsalpeter.json new file mode 100644 index 0000000..f187967 --- /dev/null +++ b/src/main/resources/assets/quickiemod/blockstates/sandsalpeter.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "quickiemod:block/sandsalpeter" + } + } +} diff --git a/src/main/resources/assets/quickiemod/models/block/dirtsalpeter.json b/src/main/resources/assets/quickiemod/models/block/dirtsalpeter.json new file mode 100644 index 0000000..863507e --- /dev/null +++ b/src/main/resources/assets/quickiemod/models/block/dirtsalpeter.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "quickiemod:block/dirtsalpeter" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickiemod/models/block/oredeepslatesulphor.json b/src/main/resources/assets/quickiemod/models/block/oredeepslatesulphor.json new file mode 100644 index 0000000..c8f4f98 --- /dev/null +++ b/src/main/resources/assets/quickiemod/models/block/oredeepslatesulphor.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "quickiemod:block/oredeepslatesulphor" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickiemod/models/block/orenethersulphor.json b/src/main/resources/assets/quickiemod/models/block/orenethersulphor.json new file mode 100644 index 0000000..95df982 --- /dev/null +++ b/src/main/resources/assets/quickiemod/models/block/orenethersulphor.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "quickiemod:block/orenethersulphor" + } +} diff --git a/src/main/resources/assets/quickiemod/models/block/oresalpeter.json b/src/main/resources/assets/quickiemod/models/block/oresalpeter.json new file mode 100644 index 0000000..67cedfc --- /dev/null +++ b/src/main/resources/assets/quickiemod/models/block/oresalpeter.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "quickiemod:block/oresalpeter" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickiemod/models/block/oresandsalpeter.json b/src/main/resources/assets/quickiemod/models/block/oresandsalpeter.json new file mode 100644 index 0000000..0b6e904 --- /dev/null +++ b/src/main/resources/assets/quickiemod/models/block/oresandsalpeter.json @@ -0,0 +1,7 @@ +{ + "parent": "block/cube_column", + "textures": { + "end" : "minecraft:block/sandstone_top", + "side": "quickiemod:block/oresandsalpeter" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickiemod/models/block/oresulphor.json b/src/main/resources/assets/quickiemod/models/block/oresulphor.json new file mode 100644 index 0000000..b247f00 --- /dev/null +++ b/src/main/resources/assets/quickiemod/models/block/oresulphor.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "quickiemod:block/oresulphor" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickiemod/models/block/sandsalpeter.json b/src/main/resources/assets/quickiemod/models/block/sandsalpeter.json new file mode 100644 index 0000000..1b1260f --- /dev/null +++ b/src/main/resources/assets/quickiemod/models/block/sandsalpeter.json @@ -0,0 +1,6 @@ +{ + "parent": "block/cube_all", + "textures": { + "all": "quickiemod:block/sandsalpeter" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickiemod/models/item/dirtsalpeter.json b/src/main/resources/assets/quickiemod/models/item/dirtsalpeter.json new file mode 100644 index 0000000..e3ca1fd --- /dev/null +++ b/src/main/resources/assets/quickiemod/models/item/dirtsalpeter.json @@ -0,0 +1,10 @@ +{ + "parent": "quickiemod:block/dirtsalpeter", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickiemod/models/item/oredeepslatesulphor.json b/src/main/resources/assets/quickiemod/models/item/oredeepslatesulphor.json new file mode 100644 index 0000000..bc87ddc --- /dev/null +++ b/src/main/resources/assets/quickiemod/models/item/oredeepslatesulphor.json @@ -0,0 +1,10 @@ +{ + "parent": "quickiemod:block/oredeepslatesulphor", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickiemod/models/item/orenethersulphor.json b/src/main/resources/assets/quickiemod/models/item/orenethersulphor.json new file mode 100644 index 0000000..f1f86d7 --- /dev/null +++ b/src/main/resources/assets/quickiemod/models/item/orenethersulphor.json @@ -0,0 +1,10 @@ +{ + "parent": "quickiemod:block/orenethersulphor", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickiemod/models/item/oresalpeter.json b/src/main/resources/assets/quickiemod/models/item/oresalpeter.json new file mode 100644 index 0000000..c8e2ce9 --- /dev/null +++ b/src/main/resources/assets/quickiemod/models/item/oresalpeter.json @@ -0,0 +1,10 @@ +{ + "parent": "quickiemod:block/oresalpeter", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickiemod/models/item/oresandsalpeter.json b/src/main/resources/assets/quickiemod/models/item/oresandsalpeter.json new file mode 100644 index 0000000..ce2e6e3 --- /dev/null +++ b/src/main/resources/assets/quickiemod/models/item/oresandsalpeter.json @@ -0,0 +1,10 @@ +{ + "parent": "quickiemod:block/oresandsalpeter", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickiemod/models/item/oresulphor.json b/src/main/resources/assets/quickiemod/models/item/oresulphor.json new file mode 100644 index 0000000..06fdb4c --- /dev/null +++ b/src/main/resources/assets/quickiemod/models/item/oresulphor.json @@ -0,0 +1,10 @@ +{ + "parent": "quickiemod:block/oresulphor", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/quickiemod/models/item/sandsalpeter.json b/src/main/resources/assets/quickiemod/models/item/sandsalpeter.json new file mode 100644 index 0000000..228b847 --- /dev/null +++ b/src/main/resources/assets/quickiemod/models/item/sandsalpeter.json @@ -0,0 +1,10 @@ +{ + "parent": "quickiemod:block/sandsalpeter", + "display": { + "thirdperson": { + "rotation": [ 10, -45, 170 ], + "translation": [ 0, 1.5, -2.75 ], + "scale": [ 0.375, 0.375, 0.375 ] + } + } +} \ No newline at end of file diff --git a/src/main/resources/data/minecraft/tags/block/mineable/pickaxe.json b/src/main/resources/data/minecraft/tags/block/mineable/pickaxe.json index 9cc4ff4..d22f488 100644 --- a/src/main/resources/data/minecraft/tags/block/mineable/pickaxe.json +++ b/src/main/resources/data/minecraft/tags/block/mineable/pickaxe.json @@ -5,6 +5,13 @@ "quickiemod:blocksalpeter", "quickiemod:monsterhoarder", "quickiemod:lavahoarder", - "quickiemod:emptylavahoarder" + "quickiemod:emptylavahoarder", + "quickiemod:oresulphor", + "quickiemod:oredeepslatesulphor", + "quickiemod:orenethersulphor", + "quickiemod:oresalpeter", + "quickiemod:oresandsalpeter", + "quickiemod:sandsalpeter", + "quickiemod:dirtsalpeter" ] } \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/tag/items/ores/oresalpeter.json b/src/main/resources/data/quickiemod/tag/items/ores/oresalpeter.json new file mode 100644 index 0000000..ca98968 --- /dev/null +++ b/src/main/resources/data/quickiemod/tag/items/ores/oresalpeter.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "quickiemod:oresalpeter" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/tag/items/ores/oresulphor.json b/src/main/resources/data/quickiemod/tag/items/ores/oresulphor.json new file mode 100644 index 0000000..7345052 --- /dev/null +++ b/src/main/resources/data/quickiemod/tag/items/ores/oresulphor.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "quickiemod:oresulphor" + ] +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/tags/block/mineable/pickaxe.json b/src/main/resources/data/quickiemod/tags/block/mineable/pickaxe.json new file mode 100644 index 0000000..406d026 --- /dev/null +++ b/src/main/resources/data/quickiemod/tags/block/mineable/pickaxe.json @@ -0,0 +1,12 @@ + { + "replace": false, + "values": [ + "quickiemod:oresulphor", + "quickiemod:oredeepslatesulphor", + "quickiemod:orenethersulphor", + "quickiemod:oresalpeter", + "quickiemod:oresandsalpeter", + "quickiemod:sandsalpeter", + "quickiemod:dirtsalpeter" + ] + } \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/worldgen/configured_feature/blocksulphor.json b/src/main/resources/data/quickiemod/worldgen/configured_feature/blocksulphor.json new file mode 100644 index 0000000..a736aeb --- /dev/null +++ b/src/main/resources/data/quickiemod/worldgen/configured_feature/blocksulphor.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:ore", + "config": { + "discard_chance_on_air_exposure": 0.0, + "size": 3, + "targets": [ + { + "state": { + "Name": "quickiemod:blocksulphor" + }, + "target": { + "predicate_type": "minecraft:block_match", + "block": "minecraft:netherrack" + } + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/worldgen/configured_feature/dirtsalpeter.json b/src/main/resources/data/quickiemod/worldgen/configured_feature/dirtsalpeter.json new file mode 100644 index 0000000..f48442f --- /dev/null +++ b/src/main/resources/data/quickiemod/worldgen/configured_feature/dirtsalpeter.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:ore", + "config": { + "discard_chance_on_air_exposure": 0.0, + "size": 4, + "targets": [ + { + "state": { + "Name": "quickiemod:dirtsalpeter" + }, + "target": { + "predicate_type": "minecraft:block_match", + "block": "minecraft:dirt" + } + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/worldgen/configured_feature/oredeepslatesulphor.json b/src/main/resources/data/quickiemod/worldgen/configured_feature/oredeepslatesulphor.json new file mode 100644 index 0000000..906a1e4 --- /dev/null +++ b/src/main/resources/data/quickiemod/worldgen/configured_feature/oredeepslatesulphor.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:ore", + "config": { + "discard_chance_on_air_exposure": 0.0, + "size": 20, + "targets": [ + { + "state": { + "Name": "quickiemod:oredeepslatesulphor" + }, + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:deepslate_ore_replaceables" + } + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/worldgen/configured_feature/orenethersulphor.json b/src/main/resources/data/quickiemod/worldgen/configured_feature/orenethersulphor.json new file mode 100644 index 0000000..98720cd --- /dev/null +++ b/src/main/resources/data/quickiemod/worldgen/configured_feature/orenethersulphor.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:ore", + "config": { + "discard_chance_on_air_exposure": 0.0, + "size": 20, + "targets": [ + { + "state": { + "Name": "quickiemod:orenethersulphor" + }, + "target": { + "predicate_type": "minecraft:block_match", + "block": "minecraft:netherrack" + } + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/worldgen/configured_feature/oresalpeter.json b/src/main/resources/data/quickiemod/worldgen/configured_feature/oresalpeter.json new file mode 100644 index 0000000..0c2fe76 --- /dev/null +++ b/src/main/resources/data/quickiemod/worldgen/configured_feature/oresalpeter.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:ore", + "config": { + "discard_chance_on_air_exposure": 0.0, + "size": 12, + "targets": [ + { + "state": { + "Name": "quickiemod:oresalpeter" + }, + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:stone_ore_replaceables" + } + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/worldgen/configured_feature/oresandsalpeter.json b/src/main/resources/data/quickiemod/worldgen/configured_feature/oresandsalpeter.json new file mode 100644 index 0000000..b52da16 --- /dev/null +++ b/src/main/resources/data/quickiemod/worldgen/configured_feature/oresandsalpeter.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:ore", + "config": { + "discard_chance_on_air_exposure": 0.0, + "size": 6, + "targets": [ + { + "state": { + "Name": "quickiemod:oresandsalpeter" + }, + "target": { + "predicate_type": "minecraft:block_match", + "block": "minecraft:sandstone" + } + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/worldgen/configured_feature/oresulphor.json b/src/main/resources/data/quickiemod/worldgen/configured_feature/oresulphor.json new file mode 100644 index 0000000..fa022cd --- /dev/null +++ b/src/main/resources/data/quickiemod/worldgen/configured_feature/oresulphor.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:ore", + "config": { + "discard_chance_on_air_exposure": 0.0, + "size": 10, + "targets": [ + { + "state": { + "Name": "quickiemod:oresulphor" + }, + "target": { + "predicate_type": "minecraft:tag_match", + "tag": "minecraft:stone_ore_replaceables" + } + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/worldgen/configured_feature/sandsalpeter.json b/src/main/resources/data/quickiemod/worldgen/configured_feature/sandsalpeter.json new file mode 100644 index 0000000..f539992 --- /dev/null +++ b/src/main/resources/data/quickiemod/worldgen/configured_feature/sandsalpeter.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:ore", + "config": { + "discard_chance_on_air_exposure": 0.0, + "size": 8, + "targets": [ + { + "state": { + "Name": "quickiemod:sandsalpeter" + }, + "target": { + "predicate_type": "minecraft:block_match", + "block": "minecraft:sand" + } + } + ] + } +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/worldgen/placed_feature/blocksulphor.json b/src/main/resources/data/quickiemod/worldgen/placed_feature/blocksulphor.json new file mode 100644 index 0000000..5248784 --- /dev/null +++ b/src/main/resources/data/quickiemod/worldgen/placed_feature/blocksulphor.json @@ -0,0 +1,27 @@ +{ + "feature": "quickiemod:blocksulphor", + "placement": [ + { + "type": "minecraft:count", + "count": 4 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:trapezoid", + "max_inclusive": { + "absolute": 125 + }, + "min_inclusive": { + "absolute": 5 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/worldgen/placed_feature/dirtsalpeter.json b/src/main/resources/data/quickiemod/worldgen/placed_feature/dirtsalpeter.json new file mode 100644 index 0000000..fce5675 --- /dev/null +++ b/src/main/resources/data/quickiemod/worldgen/placed_feature/dirtsalpeter.json @@ -0,0 +1,27 @@ +{ + "feature": "quickiemod:dirtsalpeter", + "placement": [ + { + "type": "minecraft:count", + "count": 5 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:trapezoid", + "max_inclusive": { + "absolute": 125 + }, + "min_inclusive": { + "absolute": 16 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/worldgen/placed_feature/oredeepslatesulphor.json b/src/main/resources/data/quickiemod/worldgen/placed_feature/oredeepslatesulphor.json new file mode 100644 index 0000000..7d6a9e6 --- /dev/null +++ b/src/main/resources/data/quickiemod/worldgen/placed_feature/oredeepslatesulphor.json @@ -0,0 +1,27 @@ +{ + "feature": "quickiemod:oredeepslatesulphor", + "placement": [ + { + "type": "minecraft:count", + "count": 9 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:trapezoid", + "max_inclusive": { + "absolute": 0 + }, + "min_inclusive": { + "absolute": -125 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/worldgen/placed_feature/orenethersulphor.json b/src/main/resources/data/quickiemod/worldgen/placed_feature/orenethersulphor.json new file mode 100644 index 0000000..b0d3c7a --- /dev/null +++ b/src/main/resources/data/quickiemod/worldgen/placed_feature/orenethersulphor.json @@ -0,0 +1,27 @@ +{ + "feature": "quickiemod:orenethersulphor", + "placement": [ + { + "type": "minecraft:count", + "count": 12 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:trapezoid", + "max_inclusive": { + "absolute": 125 + }, + "min_inclusive": { + "absolute": 5 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/worldgen/placed_feature/oresalpeter.json b/src/main/resources/data/quickiemod/worldgen/placed_feature/oresalpeter.json new file mode 100644 index 0000000..ef3d295 --- /dev/null +++ b/src/main/resources/data/quickiemod/worldgen/placed_feature/oresalpeter.json @@ -0,0 +1,27 @@ +{ + "feature": "quickiemod:oresalpeter", + "placement": [ + { + "type": "minecraft:count", + "count": 10 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:trapezoid", + "max_inclusive": { + "absolute": 125 + }, + "min_inclusive": { + "absolute": 0 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/worldgen/placed_feature/oresandsalpeter.json b/src/main/resources/data/quickiemod/worldgen/placed_feature/oresandsalpeter.json new file mode 100644 index 0000000..9869c1e --- /dev/null +++ b/src/main/resources/data/quickiemod/worldgen/placed_feature/oresandsalpeter.json @@ -0,0 +1,27 @@ +{ + "feature": "quickiemod:oresandsalpeter", + "placement": [ + { + "type": "minecraft:count", + "count": 15 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:trapezoid", + "max_inclusive": { + "absolute": 125 + }, + "min_inclusive": { + "absolute": 32 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/worldgen/placed_feature/oresulphor.json b/src/main/resources/data/quickiemod/worldgen/placed_feature/oresulphor.json new file mode 100644 index 0000000..9903c6a --- /dev/null +++ b/src/main/resources/data/quickiemod/worldgen/placed_feature/oresulphor.json @@ -0,0 +1,27 @@ +{ + "feature": "quickiemod:oresulphor", + "placement": [ + { + "type": "minecraft:count", + "count": 9 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:trapezoid", + "max_inclusive": { + "absolute": 64 + }, + "min_inclusive": { + "absolute": 0 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file diff --git a/src/main/resources/data/quickiemod/worldgen/placed_feature/sandsalpeter.json b/src/main/resources/data/quickiemod/worldgen/placed_feature/sandsalpeter.json new file mode 100644 index 0000000..8653de0 --- /dev/null +++ b/src/main/resources/data/quickiemod/worldgen/placed_feature/sandsalpeter.json @@ -0,0 +1,27 @@ +{ + "feature": "quickiemod:sandsalpeter", + "placement": [ + { + "type": "minecraft:count", + "count": 10 + }, + { + "type": "minecraft:in_square" + }, + { + "type": "minecraft:height_range", + "height": { + "type": "minecraft:trapezoid", + "max_inclusive": { + "absolute": 125 + }, + "min_inclusive": { + "absolute": 32 + } + } + }, + { + "type": "minecraft:biome" + } + ] +} \ No newline at end of file