added quickiepowder ore

This commit is contained in:
Jottyfan
2025-07-02 00:16:10 +02:00
parent 12660b2525
commit 063dbdf0e4
25 changed files with 242 additions and 3 deletions

View File

@ -9,7 +9,7 @@ yarn_mappings=1.21.7+build.2
loader_version=0.16.14 loader_version=0.16.14
# Mod Properties # Mod Properties
mod_version=1.21.7.0 mod_version=1.21.7.1
maven_group=de.jottyfan.quickiemod maven_group=de.jottyfan.quickiemod
archives_base_name=quickiemod archives_base_name=quickiemod

View File

@ -0,0 +1,31 @@
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.util.Identifier;
/**
*
* @author jotty
*
*/
public class BlockOreDeepslateSpeedpowder extends ExperienceDroppingBlock {
public BlockOreDeepslateSpeedpowder(Identifier identifier) {
super(IntProviderHelper.of(0, 2), Settings.create().strength(2.5f).hardness(1.9f).requiresTool().registryKey(RegistryKey.of(RegistryKeys.BLOCK, identifier)));
}
@Override
public List<ItemStack> getDroppedStacks(BlockState state, Builder builder) {
return Arrays.asList(new ItemStack[] { new ItemStack(ModItems.ITEM_SPEEDPOWDER, 2) });
}
}

View File

@ -0,0 +1,31 @@
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.util.Identifier;
/**
*
* @author jotty
*
*/
public class BlockOreSpeedpowder extends ExperienceDroppingBlock {
public BlockOreSpeedpowder(Identifier identifier) {
super(IntProviderHelper.of(0, 2), Settings.create().strength(2.5f).hardness(1.9f).requiresTool().registryKey(RegistryKey.of(RegistryKeys.BLOCK, identifier)));
}
@Override
public List<ItemStack> getDroppedStacks(BlockState state, Builder builder) {
return Arrays.asList(new ItemStack[] { new ItemStack(ModItems.ITEM_SPEEDPOWDER) });
}
}

View File

@ -53,6 +53,10 @@ public class ModBlocks {
new BlockOreSandSalpeter(ModIdentifiers.BLOCK_ORESANDSALPETER)); new BlockOreSandSalpeter(ModIdentifiers.BLOCK_ORESANDSALPETER));
public static final Block BLOCK_ORESULFOR = registerBlock(ModIdentifiers.BLOCK_ORESULFOR, public static final Block BLOCK_ORESULFOR = registerBlock(ModIdentifiers.BLOCK_ORESULFOR,
new BlockOreSulphor(ModIdentifiers.BLOCK_ORESULFOR)); new BlockOreSulphor(ModIdentifiers.BLOCK_ORESULFOR));
public static final Block BLOCK_ORESPEEDPOWDER = registerBlock(ModIdentifiers.BLOCK_ORESPEEDPOWDER,
new BlockOreSpeedpowder(ModIdentifiers.BLOCK_ORESPEEDPOWDER));
public static final Block BLOCK_OREDEEPSLATESPEEDPOWDER = registerBlock(ModIdentifiers.BLOCK_OREDEEPSLATESPEEDPOWDER,
new BlockOreDeepslateSpeedpowder(ModIdentifiers.BLOCK_OREDEEPSLATESPEEDPOWDER));
public static final Block BLOCK_SANDSALPETER = registerBlock(ModIdentifiers.BLOCK_SANDSALPETER, public static final Block BLOCK_SANDSALPETER = registerBlock(ModIdentifiers.BLOCK_SANDSALPETER,
new BlockSandSalpeter(ModIdentifiers.BLOCK_SANDSALPETER)); new BlockSandSalpeter(ModIdentifiers.BLOCK_SANDSALPETER));
public static final Block BLOCK_KELPSTACK = registerBlock(ModIdentifiers.BLOCK_KELPSTACK, public static final Block BLOCK_KELPSTACK = registerBlock(ModIdentifiers.BLOCK_KELPSTACK,
@ -114,6 +118,8 @@ public class ModBlocks {
blocks.add(BLOCK_ORESALPETER); blocks.add(BLOCK_ORESALPETER);
blocks.add(BLOCK_ORESANDSALPETER); blocks.add(BLOCK_ORESANDSALPETER);
blocks.add(BLOCK_ORESULFOR); blocks.add(BLOCK_ORESULFOR);
blocks.add(BLOCK_ORESPEEDPOWDER);
blocks.add(BLOCK_OREDEEPSLATESPEEDPOWDER);
blocks.add(BLOCK_SANDSALPETER); blocks.add(BLOCK_SANDSALPETER);
blocks.add(BLOCK_KELPSTACK); blocks.add(BLOCK_KELPSTACK);
blocks.add(BLOCK_DRILL_DOWN); blocks.add(BLOCK_DRILL_DOWN);

View File

@ -26,6 +26,7 @@ public class ModFeatures {
public static final RegistryKey<ConfiguredFeature<?, ?>> CF_DIRTSALPETER = genCf("dirtsalpeter"); public static final RegistryKey<ConfiguredFeature<?, ?>> CF_DIRTSALPETER = genCf("dirtsalpeter");
public static final RegistryKey<ConfiguredFeature<?, ?>> CF_SANDSALPETER = genCf("sandsalpeter"); public static final RegistryKey<ConfiguredFeature<?, ?>> CF_SANDSALPETER = genCf("sandsalpeter");
public static final RegistryKey<ConfiguredFeature<?, ?>> CF_ORESANDSALPETER = genCf("oresandsalpeter"); public static final RegistryKey<ConfiguredFeature<?, ?>> CF_ORESANDSALPETER = genCf("oresandsalpeter");
public static final RegistryKey<ConfiguredFeature<?, ?>> CF_ORESPEEDPOWDER = genCf("orespeedpowder");
public static final RegistryKey<PlacedFeature> PF_ORESULPHOR = genPf("oresulphor"); public static final RegistryKey<PlacedFeature> PF_ORESULPHOR = genPf("oresulphor");
public static final RegistryKey<PlacedFeature> PF_OREDEEPSLATESULPHOR = genPf("oredeepslatesulphor"); public static final RegistryKey<PlacedFeature> PF_OREDEEPSLATESULPHOR = genPf("oredeepslatesulphor");
@ -35,6 +36,7 @@ public class ModFeatures {
public static final RegistryKey<PlacedFeature> PF_DIRTSALPETER = genPf("dirtsalpeter"); public static final RegistryKey<PlacedFeature> PF_DIRTSALPETER = genPf("dirtsalpeter");
public static final RegistryKey<PlacedFeature> PF_SANDSALPETER = genPf("sandsalpeter"); public static final RegistryKey<PlacedFeature> PF_SANDSALPETER = genPf("sandsalpeter");
public static final RegistryKey<PlacedFeature> PF_ORESANDSALPETER = genPf("oresandsalpeter"); public static final RegistryKey<PlacedFeature> PF_ORESANDSALPETER = genPf("oresandsalpeter");
public static final RegistryKey<PlacedFeature> PF_ORESPEEDPOWDER = genPf("orespeedpowder");
private static final RegistryKey<ConfiguredFeature<?, ?>> genCf(String name) { private static final RegistryKey<ConfiguredFeature<?, ?>> genCf(String name) {
return RegistryKey.of(RegistryKeys.CONFIGURED_FEATURE, Identifier.of(Quickiemod.MOD_ID, name)); return RegistryKey.of(RegistryKeys.CONFIGURED_FEATURE, Identifier.of(Quickiemod.MOD_ID, name));
@ -54,6 +56,7 @@ public class ModFeatures {
bmc.getGenerationSettings().addFeature(GenerationStep.Feature.UNDERGROUND_ORES, PF_SANDSALPETER); 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_ORESANDSALPETER);
bmc.getGenerationSettings().addFeature(GenerationStep.Feature.UNDERGROUND_ORES, PF_OREDEEPSLATESULPHOR); bmc.getGenerationSettings().addFeature(GenerationStep.Feature.UNDERGROUND_ORES, PF_OREDEEPSLATESULPHOR);
bmc.getGenerationSettings().addFeature(GenerationStep.Feature.UNDERGROUND_ORES, PF_ORESPEEDPOWDER);
}); });
// Nether features // Nether features

View File

@ -59,6 +59,8 @@ public class ModIdentifiers {
public static final Identifier BLOCK_ORESALPETER = Identifier.of(Quickiemod.MOD_ID, "oresalpeter"); 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_ORESANDSALPETER = Identifier.of(Quickiemod.MOD_ID, "oresandsalpeter");
public static final Identifier BLOCK_ORESULFOR = Identifier.of(Quickiemod.MOD_ID, "oresulphor"); public static final Identifier BLOCK_ORESULFOR = Identifier.of(Quickiemod.MOD_ID, "oresulphor");
public static final Identifier BLOCK_ORESPEEDPOWDER = Identifier.of(Quickiemod.MOD_ID, "orespeedpowder");
public static final Identifier BLOCK_OREDEEPSLATESPEEDPOWDER = Identifier.of(Quickiemod.MOD_ID, "oredeepslatespeedpowder");
public static final Identifier BLOCK_SANDSALPETER = Identifier.of(Quickiemod.MOD_ID, "sandsalpeter"); public static final Identifier BLOCK_SANDSALPETER = Identifier.of(Quickiemod.MOD_ID, "sandsalpeter");
public static final Identifier BLOCK_KELPSTACK = Identifier.of(Quickiemod.MOD_ID, "kelpstack"); public static final Identifier BLOCK_KELPSTACK = Identifier.of(Quickiemod.MOD_ID, "kelpstack");
public static final Identifier BLOCK_COTTONPLANT = Identifier.of(Quickiemod.MOD_ID, "blockcottonplant"); public static final Identifier BLOCK_COTTONPLANT = Identifier.of(Quickiemod.MOD_ID, "blockcottonplant");

View File

@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "quickiemod:block/oredeepslatespeedpowder"
}
}
}

View File

@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "quickiemod:block/orespeedpowder"
}
}
}

View File

@ -0,0 +1,6 @@
{
"model": {
"type": "minecraft:model",
"model": "quickiemod:block/oredeepslatespeedpowder"
}
}

View File

@ -0,0 +1,6 @@
{
"model": {
"type": "minecraft:model",
"model": "quickiemod:block/orespeedpowder"
}
}

View File

@ -59,6 +59,8 @@
"block.quickiemod.oresandsalpeter": "Salpetergestein", "block.quickiemod.oresandsalpeter": "Salpetergestein",
"block.quickiemod.oresulphor": "Schwefelgestein", "block.quickiemod.oresulphor": "Schwefelgestein",
"block.quickiemod.oredeepslatesulphor": "Schwefeltiefengestein", "block.quickiemod.oredeepslatesulphor": "Schwefeltiefengestein",
"block.quickiemod.orespeedpowder": "Eilpulvererz",
"block.quickiemod.oredeepslatespeedpowder": "Eilpulvertiefengesteinerz",
"block.quickiemod.dirtsalpeter": "Salpetererde", "block.quickiemod.dirtsalpeter": "Salpetererde",
"block.quickiemod.sandsalpeter": "Salpetersand", "block.quickiemod.sandsalpeter": "Salpetersand",
"block.quickiemod.constructionborder": "Bauplangrenzblock", "block.quickiemod.constructionborder": "Bauplangrenzblock",

View File

@ -59,6 +59,8 @@
"block.quickiemod.oresandsalpeter": "salpeter stone", "block.quickiemod.oresandsalpeter": "salpeter stone",
"block.quickiemod.oresulphor": "sulfur stone", "block.quickiemod.oresulphor": "sulfur stone",
"block.quickiemod.oredeepslatesulphor": "deepslate sulfur stone", "block.quickiemod.oredeepslatesulphor": "deepslate sulfur stone",
"block.quickiemod.orespeedpowder": "speed powder ore",
"block.quickiemod.oredeepslatespeedpowder": "deepslate speed powder ore",
"block.quickiemod.dirtsalpeter": "salpeter dirt", "block.quickiemod.dirtsalpeter": "salpeter dirt",
"block.quickiemod.sandsalpeter": "salpeter sand", "block.quickiemod.sandsalpeter": "salpeter sand",
"block.quickiemod.constructionborder": "building plan border block", "block.quickiemod.constructionborder": "building plan border block",

View File

@ -0,0 +1,6 @@
{
"parent": "block/cube_all",
"textures": {
"all": "quickiemod:block/oredeepslatespeedpowder"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "block/cube_all",
"textures": {
"all": "quickiemod:block/orespeedpowder"
}
}

View File

@ -0,0 +1,10 @@
{
"parent": "quickiemod:block/oredeepslatespeedpowder",
"display": {
"thirdperson": {
"rotation": [ 10, -45, 170 ],
"translation": [ 0, 1.5, -2.75 ],
"scale": [ 0.375, 0.375, 0.375 ]
}
}
}

View File

@ -0,0 +1,10 @@
{
"parent": "quickiemod:block/orespeedpowder",
"display": {
"thirdperson": {
"rotation": [ 10, -45, 170 ],
"translation": [ 0, 1.5, -2.75 ],
"scale": [ 0.375, 0.375, 0.375 ]
}
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

View File

@ -12,6 +12,8 @@
"quickiemod:oresalpeter", "quickiemod:oresalpeter",
"quickiemod:oresandsalpeter", "quickiemod:oresandsalpeter",
"quickiemod:sandsalpeter", "quickiemod:sandsalpeter",
"quickiemod:dirtsalpeter" "quickiemod:dirtsalpeter",
"quickiemod:orespeedpowder",
"quickiemod:oredeepslatespeedpowder"
] ]
} }

View File

@ -0,0 +1,20 @@
{
"type": "minecraft:block",
"pools": [
{
"bonus_rolls": 0.0,
"conditions": [
{
"condition": "minecraft:survives_explosion"
}
],
"entries": [
{
"type": "minecraft:item",
"name": "quickiefabric:speedpowder"
}
],
"rolls": 1.0
}
]
}

View File

@ -0,0 +1,20 @@
{
"type": "minecraft:block",
"pools": [
{
"bonus_rolls": 0.0,
"conditions": [
{
"condition": "minecraft:survives_explosion"
}
],
"entries": [
{
"type": "minecraft:item",
"name": "quickiefabric:speedpowder"
}
],
"rolls": 1.0
}
]
}

View File

@ -0,0 +1,6 @@
{
"replace": false,
"values": [
"quickiemod:orespeedpowder"
]
}

View File

@ -7,6 +7,8 @@
"quickiemod:oresalpeter", "quickiemod:oresalpeter",
"quickiemod:oresandsalpeter", "quickiemod:oresandsalpeter",
"quickiemod:sandsalpeter", "quickiemod:sandsalpeter",
"quickiemod:dirtsalpeter" "quickiemod:dirtsalpeter",
"quickiemod:orespeedpowder",
"quickiemod:oredeepslatespeedpowder"
] ]
} }

View File

@ -0,0 +1,27 @@
{
"type": "minecraft:ore",
"config": {
"discard_chance_on_air_exposure": 0.0,
"size": 7,
"targets": [
{
"state": {
"Name": "quickiemod:orespeedpowder"
},
"target": {
"predicate_type": "minecraft:tag_match",
"tag": "minecraft:stone_ore_replaceables"
}
},
{
"state": {
"Name": "quickiemod:oredeepslatespeedpowder"
},
"target": {
"predicate_type": "minecraft:tag_match",
"tag": "minecraft:deepslate_ore_replaceables"
}
}
]
}
}

View File

@ -0,0 +1,27 @@
{
"feature": "quickiemod:orespeedpowder",
"placement": [
{
"type": "minecraft:count",
"count": 12
},
{
"type": "minecraft:in_square"
},
{
"type": "minecraft:height_range",
"height": {
"type": "minecraft:trapezoid",
"max_inclusive": {
"absolute": 60
},
"min_inclusive": {
"absolute": -120
}
}
},
{
"type": "minecraft:biome"
}
]
}