Correction texture diamond shard ore

This commit is contained in:
2025-12-30 14:03:14 +01:00
commit ea4bcfbbeb
9109 changed files with 344849 additions and 0 deletions
@@ -0,0 +1,85 @@
package net.mcreator.customoregen;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
import net.minecraftforge.network.simple.SimpleChannel;
import net.minecraftforge.network.NetworkRegistry;
import net.minecraftforge.network.NetworkEvent;
import net.minecraftforge.fml.util.thread.SidedThreadGroups;
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.eventbus.api.IEventBus;
import net.minecraftforge.event.TickEvent;
import net.minecraftforge.common.MinecraftForge;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.network.FriendlyByteBuf;
import net.mcreator.customoregen.init.CustomOreGenModTabs;
import net.mcreator.customoregen.init.CustomOreGenModItems;
import net.mcreator.customoregen.init.CustomOreGenModBlocks;
import java.util.function.Supplier;
import java.util.function.Function;
import java.util.function.BiConsumer;
import java.util.concurrent.ConcurrentLinkedQueue;
import java.util.List;
import java.util.Collection;
import java.util.ArrayList;
import java.util.AbstractMap;
@Mod("custom_ore_gen")
public class CustomOreGenMod {
public static final Logger LOGGER = LogManager.getLogger(CustomOreGenMod.class);
public static final String MODID = "custom_ore_gen";
public CustomOreGenMod() {
// Start of user code block mod constructor
// End of user code block mod constructor
MinecraftForge.EVENT_BUS.register(this);
IEventBus bus = FMLJavaModLoadingContext.get().getModEventBus();
CustomOreGenModBlocks.REGISTRY.register(bus);
CustomOreGenModItems.REGISTRY.register(bus);
CustomOreGenModTabs.REGISTRY.register(bus);
// Start of user code block mod init
// End of user code block mod init
}
// Start of user code block mod methods
// End of user code block mod methods
private static final String PROTOCOL_VERSION = "1";
public static final SimpleChannel PACKET_HANDLER = NetworkRegistry.newSimpleChannel(new ResourceLocation(MODID, MODID), () -> PROTOCOL_VERSION, PROTOCOL_VERSION::equals, PROTOCOL_VERSION::equals);
private static int messageID = 0;
public static <T> void addNetworkMessage(Class<T> messageType, BiConsumer<T, FriendlyByteBuf> encoder, Function<FriendlyByteBuf, T> decoder, BiConsumer<T, Supplier<NetworkEvent.Context>> messageConsumer) {
PACKET_HANDLER.registerMessage(messageID, messageType, encoder, decoder, messageConsumer);
messageID++;
}
private static final Collection<AbstractMap.SimpleEntry<Runnable, Integer>> workQueue = new ConcurrentLinkedQueue<>();
public static void queueServerWork(int tick, Runnable action) {
if (Thread.currentThread().getThreadGroup() == SidedThreadGroups.SERVER)
workQueue.add(new AbstractMap.SimpleEntry<>(action, tick));
}
@SubscribeEvent
public void tick(TickEvent.ServerTickEvent event) {
if (event.phase == TickEvent.Phase.END) {
List<AbstractMap.SimpleEntry<Runnable, Integer>> actions = new ArrayList<>();
workQueue.forEach(work -> {
work.setValue(work.getValue() - 1);
if (work.getValue() == 0)
actions.add(work);
});
actions.forEach(e -> e.getKey().run());
workQueue.removeAll(actions);
}
}
}
@@ -0,0 +1,32 @@
package net.mcreator.customoregen.block;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.BlockBehaviour;
import net.minecraft.world.level.block.SoundType;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.entity.player.Player;
import net.minecraft.core.BlockPos;
import net.mcreator.customoregen.procedures.OreexperienceProcedure;
public class ConcentratedcoaloreBlock extends Block {
public ConcentratedcoaloreBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.STONE).strength(3f, 15f).requiresCorrectToolForDrops());
}
@Override
public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
return 15;
}
@Override
public boolean onDestroyedByPlayer(BlockState blockstate, Level world, BlockPos pos, Player entity, boolean willHarvest, FluidState fluid) {
boolean retval = super.onDestroyedByPlayer(blockstate, world, pos, entity, willHarvest, fluid);
OreexperienceProcedure.execute(world, pos.getX(), pos.getY(), pos.getZ(), entity);
return retval;
}
}
@@ -0,0 +1,40 @@
package net.mcreator.customoregen.block;
import net.minecraft.world.phys.HitResult;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.BlockBehaviour;
import net.minecraft.world.level.block.SoundType;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.entity.player.Player;
import net.minecraft.core.BlockPos;
import net.mcreator.customoregen.procedures.OreexperienceProcedure;
import net.mcreator.customoregen.init.CustomOreGenModBlocks;
public class ConcentrateddiamondoreBlock extends Block {
public ConcentrateddiamondoreBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.STONE).strength(3f, 11f).requiresCorrectToolForDrops());
}
@Override
public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
return 15;
}
@Override
public ItemStack getCloneItemStack(BlockState state, HitResult target, BlockGetter world, BlockPos pos, Player player) {
return new ItemStack(CustomOreGenModBlocks.CONCENTRATEDDIAMONDORE.get());
}
@Override
public boolean onDestroyedByPlayer(BlockState blockstate, Level world, BlockPos pos, Player entity, boolean willHarvest, FluidState fluid) {
boolean retval = super.onDestroyedByPlayer(blockstate, world, pos, entity, willHarvest, fluid);
OreexperienceProcedure.execute(world, pos.getX(), pos.getY(), pos.getZ(), entity);
return retval;
}
}
@@ -0,0 +1,32 @@
package net.mcreator.customoregen.block;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.BlockBehaviour;
import net.minecraft.world.level.block.SoundType;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.entity.player.Player;
import net.minecraft.core.BlockPos;
import net.mcreator.customoregen.procedures.OreexperienceProcedure;
public class CopperhighoreBlock extends Block {
public CopperhighoreBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.GRAVEL).strength(1f, 10f).requiresCorrectToolForDrops());
}
@Override
public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
return 15;
}
@Override
public boolean onDestroyedByPlayer(BlockState blockstate, Level world, BlockPos pos, Player entity, boolean willHarvest, FluidState fluid) {
boolean retval = super.onDestroyedByPlayer(blockstate, world, pos, entity, willHarvest, fluid);
OreexperienceProcedure.execute(world, pos.getX(), pos.getY(), pos.getZ(), entity);
return retval;
}
}
@@ -0,0 +1,32 @@
package net.mcreator.customoregen.block;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.BlockBehaviour;
import net.minecraft.world.level.block.SoundType;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.entity.player.Player;
import net.minecraft.core.BlockPos;
import net.mcreator.customoregen.procedures.OreexperienceProcedure;
public class CopperloweroreBlock extends Block {
public CopperloweroreBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.STONE).strength(4.5f, 10f).requiresCorrectToolForDrops());
}
@Override
public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
return 15;
}
@Override
public boolean onDestroyedByPlayer(BlockState blockstate, Level world, BlockPos pos, Player entity, boolean willHarvest, FluidState fluid) {
boolean retval = super.onDestroyedByPlayer(blockstate, world, pos, entity, willHarvest, fluid);
OreexperienceProcedure.execute(world, pos.getX(), pos.getY(), pos.getZ(), entity);
return retval;
}
}
@@ -0,0 +1,32 @@
package net.mcreator.customoregen.block;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.BlockBehaviour;
import net.minecraft.world.level.block.SoundType;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.entity.player.Player;
import net.minecraft.core.BlockPos;
import net.mcreator.customoregen.procedures.OreexperienceProcedure;
public class DeepslateironoreBlock extends Block {
public DeepslateironoreBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.STONE).strength(3f, 10f).requiresCorrectToolForDrops());
}
@Override
public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
return 15;
}
@Override
public boolean onDestroyedByPlayer(BlockState blockstate, Level world, BlockPos pos, Player entity, boolean willHarvest, FluidState fluid) {
boolean retval = super.onDestroyedByPlayer(blockstate, world, pos, entity, willHarvest, fluid);
OreexperienceProcedure.execute(world, pos.getX(), pos.getY(), pos.getZ(), entity);
return retval;
}
}
@@ -0,0 +1,32 @@
package net.mcreator.customoregen.block;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.BlockBehaviour;
import net.minecraft.world.level.block.SoundType;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.entity.player.Player;
import net.minecraft.core.BlockPos;
import net.mcreator.customoregen.procedures.OreexperienceProcedure;
public class DeepslatelapisoreBlock extends Block {
public DeepslatelapisoreBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.STONE).strength(4.5f, 10f).requiresCorrectToolForDrops());
}
@Override
public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
return 15;
}
@Override
public boolean onDestroyedByPlayer(BlockState blockstate, Level world, BlockPos pos, Player entity, boolean willHarvest, FluidState fluid) {
boolean retval = super.onDestroyedByPlayer(blockstate, world, pos, entity, willHarvest, fluid);
OreexperienceProcedure.execute(world, pos.getX(), pos.getY(), pos.getZ(), entity);
return retval;
}
}
@@ -0,0 +1,32 @@
package net.mcreator.customoregen.block;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.BlockBehaviour;
import net.minecraft.world.level.block.SoundType;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.entity.player.Player;
import net.minecraft.core.BlockPos;
import net.mcreator.customoregen.procedures.OreexperienceProcedure;
public class DeepslatepuregoldenoreBlock extends Block {
public DeepslatepuregoldenoreBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.STONE).strength(3f, 10f).requiresCorrectToolForDrops());
}
@Override
public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
return 15;
}
@Override
public boolean onDestroyedByPlayer(BlockState blockstate, Level world, BlockPos pos, Player entity, boolean willHarvest, FluidState fluid) {
boolean retval = super.onDestroyedByPlayer(blockstate, world, pos, entity, willHarvest, fluid);
OreexperienceProcedure.execute(world, pos.getX(), pos.getY(), pos.getZ(), entity);
return retval;
}
}
@@ -0,0 +1,34 @@
package net.mcreator.customoregen.block;
import org.checkerframework.checker.units.qual.s;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.BlockBehaviour;
import net.minecraft.world.level.block.SoundType;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.entity.player.Player;
import net.minecraft.core.BlockPos;
import net.mcreator.customoregen.procedures.OreexperienceProcedure;
public class DeepslateredstoneoreBlock extends Block {
public DeepslateredstoneoreBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.STONE).strength(3f, 10f).lightLevel(s -> 1).requiresCorrectToolForDrops().hasPostProcess((bs, br, bp) -> true).emissiveRendering((bs, br, bp) -> true));
}
@Override
public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
return 15;
}
@Override
public boolean onDestroyedByPlayer(BlockState blockstate, Level world, BlockPos pos, Player entity, boolean willHarvest, FluidState fluid) {
boolean retval = super.onDestroyedByPlayer(blockstate, world, pos, entity, willHarvest, fluid);
OreexperienceProcedure.execute(world, pos.getX(), pos.getY(), pos.getZ(), entity);
return retval;
}
}
@@ -0,0 +1,32 @@
package net.mcreator.customoregen.block;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.BlockBehaviour;
import net.minecraft.world.level.block.SoundType;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.entity.player.Player;
import net.minecraft.core.BlockPos;
import net.mcreator.customoregen.procedures.OreexperienceProcedure;
public class DeepslatesharddiamondoreBlock extends Block {
public DeepslatesharddiamondoreBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.STONE).strength(3f, 14.5f).requiresCorrectToolForDrops());
}
@Override
public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
return 15;
}
@Override
public boolean onDestroyedByPlayer(BlockState blockstate, Level world, BlockPos pos, Player entity, boolean willHarvest, FluidState fluid) {
boolean retval = super.onDestroyedByPlayer(blockstate, world, pos, entity, willHarvest, fluid);
OreexperienceProcedure.execute(world, pos.getX(), pos.getY(), pos.getZ(), entity);
return retval;
}
}
@@ -0,0 +1,32 @@
package net.mcreator.customoregen.block;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.BlockBehaviour;
import net.minecraft.world.level.block.SoundType;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.entity.player.Player;
import net.minecraft.core.BlockPos;
import net.mcreator.customoregen.procedures.OreexperienceProcedure;
public class HighemeraldoreBlock extends Block {
public HighemeraldoreBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.STONE).strength(3f, 10f).requiresCorrectToolForDrops());
}
@Override
public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
return 15;
}
@Override
public boolean onDestroyedByPlayer(BlockState blockstate, Level world, BlockPos pos, Player entity, boolean willHarvest, FluidState fluid) {
boolean retval = super.onDestroyedByPlayer(blockstate, world, pos, entity, willHarvest, fluid);
OreexperienceProcedure.execute(world, pos.getX(), pos.getY(), pos.getZ(), entity);
return retval;
}
}
@@ -0,0 +1,32 @@
package net.mcreator.customoregen.block;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.BlockBehaviour;
import net.minecraft.world.level.block.SoundType;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.entity.player.Player;
import net.minecraft.core.BlockPos;
import net.mcreator.customoregen.procedures.OreexperienceProcedure;
public class IronoreBlock extends Block {
public IronoreBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.STONE).strength(2f, 10f).requiresCorrectToolForDrops());
}
@Override
public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
return 15;
}
@Override
public boolean onDestroyedByPlayer(BlockState blockstate, Level world, BlockPos pos, Player entity, boolean willHarvest, FluidState fluid) {
boolean retval = super.onDestroyedByPlayer(blockstate, world, pos, entity, willHarvest, fluid);
OreexperienceProcedure.execute(world, pos.getX(), pos.getY(), pos.getZ(), entity);
return retval;
}
}
@@ -0,0 +1,32 @@
package net.mcreator.customoregen.block;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.BlockBehaviour;
import net.minecraft.world.level.block.SoundType;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.entity.player.Player;
import net.minecraft.core.BlockPos;
import net.mcreator.customoregen.procedures.OreexperienceProcedure;
public class LapisoreBlock extends Block {
public LapisoreBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.STONE).strength(3f, 10f).requiresCorrectToolForDrops());
}
@Override
public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
return 15;
}
@Override
public boolean onDestroyedByPlayer(BlockState blockstate, Level world, BlockPos pos, Player entity, boolean willHarvest, FluidState fluid) {
boolean retval = super.onDestroyedByPlayer(blockstate, world, pos, entity, willHarvest, fluid);
OreexperienceProcedure.execute(world, pos.getX(), pos.getY(), pos.getZ(), entity);
return retval;
}
}
@@ -0,0 +1,32 @@
package net.mcreator.customoregen.block;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.BlockBehaviour;
import net.minecraft.world.level.block.SoundType;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.entity.player.Player;
import net.minecraft.core.BlockPos;
import net.mcreator.customoregen.procedures.OreexperienceProcedure;
public class LoweremeraldoreBlock extends Block {
public LoweremeraldoreBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.STONE).strength(4.5f, 10f).requiresCorrectToolForDrops());
}
@Override
public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
return 15;
}
@Override
public boolean onDestroyedByPlayer(BlockState blockstate, Level world, BlockPos pos, Player entity, boolean willHarvest, FluidState fluid) {
boolean retval = super.onDestroyedByPlayer(blockstate, world, pos, entity, willHarvest, fluid);
OreexperienceProcedure.execute(world, pos.getX(), pos.getY(), pos.getZ(), entity);
return retval;
}
}
@@ -0,0 +1,32 @@
package net.mcreator.customoregen.block;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.BlockBehaviour;
import net.minecraft.world.level.block.SoundType;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.entity.player.Player;
import net.minecraft.core.BlockPos;
import net.mcreator.customoregen.procedures.OreexperienceProcedure;
public class PuregoldenoreBlock extends Block {
public PuregoldenoreBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.STONE).strength(3f, 10f));
}
@Override
public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
return 15;
}
@Override
public boolean onDestroyedByPlayer(BlockState blockstate, Level world, BlockPos pos, Player entity, boolean willHarvest, FluidState fluid) {
boolean retval = super.onDestroyedByPlayer(blockstate, world, pos, entity, willHarvest, fluid);
OreexperienceProcedure.execute(world, pos.getX(), pos.getY(), pos.getZ(), entity);
return retval;
}
}
@@ -0,0 +1,34 @@
package net.mcreator.customoregen.block;
import org.checkerframework.checker.units.qual.s;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.BlockBehaviour;
import net.minecraft.world.level.block.SoundType;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.entity.player.Player;
import net.minecraft.core.BlockPos;
import net.mcreator.customoregen.procedures.OreexperienceProcedure;
public class RedstoneoreBlock extends Block {
public RedstoneoreBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.STONE).strength(3f, 10f).lightLevel(s -> 1).requiresCorrectToolForDrops());
}
@Override
public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
return 15;
}
@Override
public boolean onDestroyedByPlayer(BlockState blockstate, Level world, BlockPos pos, Player entity, boolean willHarvest, FluidState fluid) {
boolean retval = super.onDestroyedByPlayer(blockstate, world, pos, entity, willHarvest, fluid);
OreexperienceProcedure.execute(world, pos.getX(), pos.getY(), pos.getZ(), entity);
return retval;
}
}
@@ -0,0 +1,32 @@
package net.mcreator.customoregen.block;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.BlockBehaviour;
import net.minecraft.world.level.block.SoundType;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.entity.player.Player;
import net.minecraft.core.BlockPos;
import net.mcreator.customoregen.procedures.OreexperienceProcedure;
public class SharddiamondblockoreBlock extends Block {
public SharddiamondblockoreBlock() {
super(BlockBehaviour.Properties.of().sound(SoundType.STONE).strength(1.3f, 10f).requiresCorrectToolForDrops());
}
@Override
public int getLightBlock(BlockState state, BlockGetter worldIn, BlockPos pos) {
return 15;
}
@Override
public boolean onDestroyedByPlayer(BlockState blockstate, Level world, BlockPos pos, Player entity, boolean willHarvest, FluidState fluid) {
boolean retval = super.onDestroyedByPlayer(blockstate, world, pos, entity, willHarvest, fluid);
OreexperienceProcedure.execute(world, pos.getX(), pos.getY(), pos.getZ(), entity);
return retval;
}
}
@@ -0,0 +1,70 @@
package net.mcreator.customoregen.config;
import net.minecraftforge.fml.ModList;
public class ConfigHelper {
// Helper method to safely access config values
public static boolean isFeatureEnabled(String featureName) {
switch (featureName) {
case "shardDiamondTools":
return ModConfigs.FEATURES.enableShardDiamondTools.get();
case "shardDiamondOre":
return ModConfigs.FEATURES.enableShardDiamondOre.get();
case "concentratedOres":
return ModConfigs.FEATURES.enableConcentratedOres.get();
case "impureOres":
return ModConfigs.FEATURES.enableImpureOres.get();
case "ashCoalOre":
return ModConfigs.FEATURES.enableAshCoalOre.get();
case "pureGoldenOre":
return ModConfigs.FEATURES.enablePureGoldenOre.get();
case "customEmeraldOres":
return ModConfigs.FEATURES.enableCustomEmeraldOres.get();
case "customCopperOres":
return ModConfigs.FEATURES.enableCustomCopperOres.get();
case "vanillaOreVariants":
return ModConfigs.FEATURES.enableVanillaOreVariants.get();
default:
return true;
}
}
public static int getShardDiamondToolDurability(String toolType) {
switch (toolType) {
case "pickaxe":
return ModConfigs.TOOL_STATS.shardDiamondPickaxeDurability.get();
case "axe":
return ModConfigs.TOOL_STATS.shardDiamondAxeDurability.get();
case "shovel":
return ModConfigs.TOOL_STATS.shardDiamondShovelDurability.get();
default:
return 200;
}
}
public static float getShardDiamondToolSpeed(String toolType) {
switch (toolType) {
case "pickaxe":
return ModConfigs.TOOL_STATS.shardDiamondPickaxeSpeed.get().floatValue();
case "axe":
return ModConfigs.TOOL_STATS.shardDiamondAxeSpeed.get().floatValue();
case "shovel":
return ModConfigs.TOOL_STATS.shardDiamondShovelSpeed.get().floatValue();
default:
return 7.0f;
}
}
public static int getShardDiamondToolDamage(String toolType) {
switch (toolType) {
case "pickaxe":
return ModConfigs.TOOL_STATS.shardDiamondPickaxeAttackDamage.get();
case "axe":
return ModConfigs.TOOL_STATS.shardDiamondAxeAttackDamage.get();
case "shovel":
return ModConfigs.TOOL_STATS.shardDiamondShovelAttackDamage.get();
default:
return 1;
}
}
}
@@ -0,0 +1,330 @@
package net.mcreator.customoregen.config;
import net.minecraftforge.common.ForgeConfigSpec;
public class ModConfigs {
public static final ForgeConfigSpec.Builder BUILDER = new ForgeConfigSpec.Builder();
public static final ForgeConfigSpec SPEC;
public static final OreGenConfig ORE_GEN;
public static final ToolStatsConfig TOOL_STATS;
public static final DropsConfig DROPS;
public static final FeatureToggleConfig FEATURES;
static {
BUILDER.push("Custom Ore Gem Configuration");
ORE_GEN = new OreGenConfig(BUILDER);
TOOL_STATS = new ToolStatsConfig(BUILDER);
DROPS = new DropsConfig(BUILDER);
FEATURES = new FeatureToggleConfig(BUILDER);
BUILDER.pop();
SPEC = BUILDER.build();
}
// Configuration pour la génération des minerais
public static class OreGenConfig {
public final ForgeConfigSpec.ConfigValue<Integer> shardDiamondOreMinHeight;
public final ForgeConfigSpec.ConfigValue<Integer> shardDiamondOreMaxHeight;
public final ForgeConfigSpec.ConfigValue<Integer> shardDiamondOreCount;
public final ForgeConfigSpec.ConfigValue<Integer> shardDiamondOreSize;
public final ForgeConfigSpec.ConfigValue<Integer> concentratedDiamondOreCount;
public final ForgeConfigSpec.ConfigValue<Integer> concentratedDiamondOreSize;
public final ForgeConfigSpec.ConfigValue<Integer> pureGoldenOreCount;
public final ForgeConfigSpec.ConfigValue<Integer> pureGoldenOreMinHeight;
public final ForgeConfigSpec.ConfigValue<Integer> pureGoldenOreMaxHeight;
public final ForgeConfigSpec.ConfigValue<Integer> concentratedCoalOreCount;
public final ForgeConfigSpec.ConfigValue<Integer> impureIronOreCount;
public final ForgeConfigSpec.ConfigValue<Integer> impureGoldOreCount;
public final ForgeConfigSpec.ConfigValue<Integer> highEmeraldOreCount;
public final ForgeConfigSpec.ConfigValue<Integer> lowerEmeraldOreCount;
public final ForgeConfigSpec.ConfigValue<Integer> highCopperOreCount;
public final ForgeConfigSpec.ConfigValue<Integer> lowerCopperOreCount;
public OreGenConfig(ForgeConfigSpec.Builder builder) {
builder.push("ore_generation");
builder.push("shard_diamond_ore");
shardDiamondOreMinHeight = builder
.comment("Minimum height for Shard Diamond Ore generation (default: 0)")
.defineInRange("minHeight", 0, -64, 320);
shardDiamondOreMaxHeight = builder
.comment("Maximum height for Shard Diamond Ore generation (default: 15)")
.defineInRange("maxHeight", 15, -64, 320);
shardDiamondOreCount = builder
.comment("Number of Shard Diamond Ore veins per chunk (default: 1)")
.defineInRange("veinsPerChunk", 1, 0, 20);
shardDiamondOreSize = builder
.comment("Size of Shard Diamond Ore veins (default: 8)")
.defineInRange("veinSize", 8, 1, 32);
builder.pop();
builder.push("concentrated_diamond_ore");
concentratedDiamondOreCount = builder
.comment("Number of Concentrated Diamond Ore veins per chunk (default: 1)")
.defineInRange("veinsPerChunk", 1, 0, 20);
concentratedDiamondOreSize = builder
.comment("Size of Concentrated Diamond Ore veins (default: 8)")
.defineInRange("veinSize", 8, 1, 32);
builder.pop();
builder.push("pure_golden_ore");
pureGoldenOreCount = builder
.comment("Number of Pure Golden Ore veins per chunk (default: 4)")
.defineInRange("veinsPerChunk", 4, 0, 20);
pureGoldenOreMinHeight = builder
.comment("Minimum height for Pure Golden Ore generation (default: 0)")
.defineInRange("minHeight", 0, -64, 320);
pureGoldenOreMaxHeight = builder
.comment("Maximum height for Pure Golden Ore generation (default: 256)")
.defineInRange("maxHeight", 256, -64, 320);
builder.pop();
builder.push("concentrated_coal_ore");
concentratedCoalOreCount = builder
.comment("Number of Concentrated Coal Ore veins per chunk (default: 2)")
.defineInRange("veinsPerChunk", 2, 0, 20);
builder.pop();
builder.push("impure_ores");
impureIronOreCount = builder
.comment("Number of Impure Iron Ore veins per chunk (default: 2)")
.defineInRange("ironVeinsPerChunk", 2, 0, 20);
impureGoldOreCount = builder
.comment("Number of Impure Gold Ore veins per chunk (default: 2)")
.defineInRange("goldVeinsPerChunk", 2, 0, 20);
builder.pop();
builder.push("emerald_ores");
highEmeraldOreCount = builder
.comment("Number of High Emerald Ore veins per chunk (default: 1)")
.defineInRange("highVeinsPerChunk", 1, 0, 20);
lowerEmeraldOreCount = builder
.comment("Number of Lower Emerald Ore veins per chunk (default: 1)")
.defineInRange("lowerVeinsPerChunk", 1, 0, 20);
builder.pop();
builder.push("copper_ores");
highCopperOreCount = builder
.comment("Number of High Copper Ore veins per chunk (default: 2)")
.defineInRange("highVeinsPerChunk", 2, 0, 20);
lowerCopperOreCount = builder
.comment("Number of Lower Copper Ore veins per chunk (default: 2)")
.defineInRange("lowerVeinsPerChunk", 2, 0, 20);
builder.pop();
builder.pop();
}
}
// Configuration pour les stats des outils
public static class ToolStatsConfig {
public final ForgeConfigSpec.ConfigValue<Integer> shardDiamondPickaxeDurability;
public final ForgeConfigSpec.DoubleValue shardDiamondPickaxeSpeed;
public final ForgeConfigSpec.ConfigValue<Integer> shardDiamondPickaxeAttackDamage;
public final ForgeConfigSpec.ConfigValue<Integer> shardDiamondAxeDurability;
public final ForgeConfigSpec.DoubleValue shardDiamondAxeSpeed;
public final ForgeConfigSpec.ConfigValue<Integer> shardDiamondAxeAttackDamage;
public final ForgeConfigSpec.ConfigValue<Integer> shardDiamondShovelDurability;
public final ForgeConfigSpec.DoubleValue shardDiamondShovelSpeed;
public final ForgeConfigSpec.ConfigValue<Integer> shardDiamondShovelAttackDamage;
public ToolStatsConfig(ForgeConfigSpec.Builder builder) {
builder.push("tool_stats");
builder.push("shard_diamond_tools");
shardDiamondPickaxeDurability = builder
.comment("Durability of Shard Diamond Pickaxe (default: 200)")
.defineInRange("pickaxeDurability", 200, 1, 5000);
shardDiamondPickaxeSpeed = builder
.comment("Mining speed of Shard Diamond Pickaxe (default: 7.0)")
.defineInRange("pickaxeSpeed", 7.0, 0.1, 20.0);
shardDiamondPickaxeAttackDamage = builder
.comment("Attack damage of Shard Diamond Pickaxe (default: 1)")
.defineInRange("pickaxeAttackDamage", 1, 0, 20);
shardDiamondAxeDurability = builder
.comment("Durability of Shard Diamond Axe (default: 200)")
.defineInRange("axeDurability", 200, 1, 5000);
shardDiamondAxeSpeed = builder
.comment("Mining speed of Shard Diamond Axe (default: 7.0)")
.defineInRange("axeSpeed", 7.0, 0.1, 20.0);
shardDiamondAxeAttackDamage = builder
.comment("Attack damage of Shard Diamond Axe (default: 6)")
.defineInRange("axeAttackDamage", 6, 0, 20);
shardDiamondShovelDurability = builder
.comment("Durability of Shard Diamond Shovel (default: 200)")
.defineInRange("shovelDurability", 200, 1, 5000);
shardDiamondShovelSpeed = builder
.comment("Mining speed of Shard Diamond Shovel (default: 4.0)")
.defineInRange("shovelSpeed", 4.0, 0.1, 20.0);
shardDiamondShovelAttackDamage = builder
.comment("Attack damage of Shard Diamond Shovel (default: 2)")
.defineInRange("shovelAttackDamage", 2, 0, 20);
builder.pop();
builder.pop();
}
}
// Configuration pour les drops des minerais
public static class DropsConfig {
public final ForgeConfigSpec.ConfigValue<Integer> shardDiamondOreMinDrops;
public final ForgeConfigSpec.ConfigValue<Integer> shardDiamondOreMaxDrops;
public final ForgeConfigSpec.ConfigValue<Boolean> shardDiamondOreEnableFortune;
public final ForgeConfigSpec.ConfigValue<Integer> concentratedDiamondOreMinDrops;
public final ForgeConfigSpec.ConfigValue<Integer> concentratedDiamondOreMaxDrops;
public final ForgeConfigSpec.ConfigValue<Boolean> concentratedDiamondOreEnableFortune;
public final ForgeConfigSpec.ConfigValue<Integer> concentratedCoalOreMinDrops;
public final ForgeConfigSpec.ConfigValue<Integer> concentratedCoalOreMaxDrops;
public final ForgeConfigSpec.ConfigValue<Integer> pureGoldenOreMinDrops;
public final ForgeConfigSpec.ConfigValue<Integer> pureGoldenOreMaxDrops;
public final ForgeConfigSpec.ConfigValue<Integer> ashCoalOreMinDrops;
public final ForgeConfigSpec.ConfigValue<Integer> ashCoalOreMaxDrops;
public final ForgeConfigSpec.ConfigValue<Integer> impureIronOreMinDrops;
public final ForgeConfigSpec.ConfigValue<Integer> impureIronOreMaxDrops;
public final ForgeConfigSpec.ConfigValue<Integer> impureGoldOreMinDrops;
public final ForgeConfigSpec.ConfigValue<Integer> impureGoldOreMaxDrops;
public final ForgeConfigSpec.ConfigValue<Integer> oreExperienceDrops;
public DropsConfig(ForgeConfigSpec.Builder builder) {
builder.push("drops");
builder.push("shard_diamond_ore");
shardDiamondOreMinDrops = builder
.comment("Minimum shards dropped by Shard Diamond Ore (default: 1)")
.defineInRange("minDrops", 1, 0, 64);
shardDiamondOreMaxDrops = builder
.comment("Maximum shards dropped by Shard Diamond Ore (default: 2)")
.defineInRange("maxDrops", 2, 0, 64);
shardDiamondOreEnableFortune = builder
.comment("Enable Fortune enchantment on Shard Diamond Ore (default: true)")
.define("enableFortune", true);
builder.pop();
builder.push("concentrated_diamond_ore");
concentratedDiamondOreMinDrops = builder
.comment("Minimum diamonds dropped by Concentrated Diamond Ore (default: 1)")
.defineInRange("minDrops", 1, 0, 64);
concentratedDiamondOreMaxDrops = builder
.comment("Maximum diamonds dropped by Concentrated Diamond Ore (default: 2)")
.defineInRange("maxDrops", 2, 0, 64);
concentratedDiamondOreEnableFortune = builder
.comment("Enable Fortune enchantment on Concentrated Diamond Ore (default: true)")
.define("enableFortune", true);
builder.pop();
builder.push("concentrated_coal_ore");
concentratedCoalOreMinDrops = builder
.comment("Minimum coal dropped by Concentrated Coal Ore (default: 2)")
.defineInRange("minDrops", 2, 0, 64);
concentratedCoalOreMaxDrops = builder
.comment("Maximum coal dropped by Concentrated Coal Ore (default: 4)")
.defineInRange("maxDrops", 4, 0, 64);
builder.pop();
builder.push("pure_golden_ore");
pureGoldenOreMinDrops = builder
.comment("Minimum gold nuggets dropped by Pure Golden Ore (default: 2)")
.defineInRange("minDrops", 2, 0, 64);
pureGoldenOreMaxDrops = builder
.comment("Maximum gold nuggets dropped by Pure Golden Ore (default: 4)")
.defineInRange("maxDrops", 4, 0, 64);
builder.pop();
builder.push("ash_coal_ore");
ashCoalOreMinDrops = builder
.comment("Minimum ash coal dropped by Ash Coal Ore (default: 1)")
.defineInRange("minDrops", 1, 0, 64);
ashCoalOreMaxDrops = builder
.comment("Maximum ash coal dropped by Ash Coal Ore (default: 2)")
.defineInRange("maxDrops", 2, 0, 64);
builder.pop();
builder.push("impure_ores");
impureIronOreMinDrops = builder
.comment("Minimum impure iron dropped by Impure Iron Ore (default: 1)")
.defineInRange("ironMinDrops", 1, 0, 64);
impureIronOreMaxDrops = builder
.comment("Maximum impure iron dropped by Impure Iron Ore (default: 2)")
.defineInRange("ironMaxDrops", 2, 0, 64);
impureGoldOreMinDrops = builder
.comment("Minimum impure gold dropped by Impure Gold Ore (default: 1)")
.defineInRange("goldMinDrops", 1, 0, 64);
impureGoldOreMaxDrops = builder
.comment("Maximum impure gold dropped by Impure Gold Ore (default: 2)")
.defineInRange("goldMaxDrops", 2, 0, 64);
builder.pop();
oreExperienceDrops = builder
.comment("Experience dropped when mining custom ores (default: 2)")
.defineInRange("oreExperience", 2, 0, 100);
builder.pop();
}
}
// Configuration pour activer/désactiver les fonctionnalités
public static class FeatureToggleConfig {
public final ForgeConfigSpec.ConfigValue<Boolean> enableShardDiamondTools;
public final ForgeConfigSpec.ConfigValue<Boolean> enableShardDiamondOre;
public final ForgeConfigSpec.ConfigValue<Boolean> enableConcentratedOres;
public final ForgeConfigSpec.ConfigValue<Boolean> enableImpureOres;
public final ForgeConfigSpec.ConfigValue<Boolean> enableAshCoalOre;
public final ForgeConfigSpec.ConfigValue<Boolean> enablePureGoldenOre;
public final ForgeConfigSpec.ConfigValue<Boolean> enableCustomEmeraldOres;
public final ForgeConfigSpec.ConfigValue<Boolean> enableCustomCopperOres;
public final ForgeConfigSpec.ConfigValue<Boolean> enableVanillaOreVariants;
public FeatureToggleConfig(ForgeConfigSpec.Builder builder) {
builder.push("features");
enableShardDiamondTools = builder
.comment("Enable Shard Diamond Tools (default: true)")
.define("enableShardDiamondTools", true);
enableShardDiamondOre = builder
.comment("Enable Shard Diamond Ore generation (default: true)")
.define("enableShardDiamondOre", true);
enableConcentratedOres = builder
.comment("Enable Concentrated Ores (Diamond, Coal) (default: true)")
.define("enableConcentratedOres", true);
enableImpureOres = builder
.comment("Enable Impure Ores (Iron, Gold) (default: true)")
.define("enableImpureOres", true);
enableAshCoalOre = builder
.comment("Enable Ash Coal Ore (default: true)")
.define("enableAshCoalOre", true);
enablePureGoldenOre = builder
.comment("Enable Pure Golden Ore (default: true)")
.define("enablePureGoldenOre", true);
enableCustomEmeraldOres = builder
.comment("Enable Custom Emerald Ores (High, Lower) (default: true)")
.define("enableCustomEmeraldOres", true);
enableCustomCopperOres = builder
.comment("Enable Custom Copper Ores (High, Lower) (default: true)")
.define("enableCustomCopperOres", true);
enableVanillaOreVariants = builder
.comment("Enable Vanilla Ore variants (Iron, Redstone, Lapis, etc.) (default: true)")
.define("enableVanillaOreVariants", true);
builder.pop();
}
}
}
@@ -0,0 +1,51 @@
/*
* MCreator note: This file will be REGENERATED on each build.
*/
package net.mcreator.customoregen.init;
import net.minecraftforge.registries.RegistryObject;
import net.minecraftforge.registries.ForgeRegistries;
import net.minecraftforge.registries.DeferredRegister;
import net.minecraft.world.level.block.Block;
import net.mcreator.customoregen.block.SharddiamondblockoreBlock;
import net.mcreator.customoregen.block.RedstoneoreBlock;
import net.mcreator.customoregen.block.PuregoldenoreBlock;
import net.mcreator.customoregen.block.LoweremeraldoreBlock;
import net.mcreator.customoregen.block.LapisoreBlock;
import net.mcreator.customoregen.block.IronoreBlock;
import net.mcreator.customoregen.block.HighemeraldoreBlock;
import net.mcreator.customoregen.block.DeepslatesharddiamondoreBlock;
import net.mcreator.customoregen.block.DeepslateredstoneoreBlock;
import net.mcreator.customoregen.block.DeepslatepuregoldenoreBlock;
import net.mcreator.customoregen.block.DeepslatelapisoreBlock;
import net.mcreator.customoregen.block.DeepslateironoreBlock;
import net.mcreator.customoregen.block.CopperloweroreBlock;
import net.mcreator.customoregen.block.CopperhighoreBlock;
import net.mcreator.customoregen.block.ConcentrateddiamondoreBlock;
import net.mcreator.customoregen.block.ConcentratedcoaloreBlock;
import net.mcreator.customoregen.CustomOreGenMod;
public class CustomOreGenModBlocks {
public static final DeferredRegister<Block> REGISTRY = DeferredRegister.create(ForgeRegistries.BLOCKS, CustomOreGenMod.MODID);
public static final RegistryObject<Block> SHARDDIAMONDBLOCKORE = REGISTRY.register("sharddiamondblockore", () -> new SharddiamondblockoreBlock());
public static final RegistryObject<Block> PUREGOLDENORE = REGISTRY.register("puregoldenore", () -> new PuregoldenoreBlock());
public static final RegistryObject<Block> DEEPSLATEPUREGOLDENORE = REGISTRY.register("deepslatepuregoldenore", () -> new DeepslatepuregoldenoreBlock());
public static final RegistryObject<Block> CONCENTRATEDCOALORE = REGISTRY.register("concentratedcoalore", () -> new ConcentratedcoaloreBlock());
public static final RegistryObject<Block> DEEPSLATESHARDDIAMONDORE = REGISTRY.register("deepslatesharddiamondore", () -> new DeepslatesharddiamondoreBlock());
public static final RegistryObject<Block> CONCENTRATEDDIAMONDORE = REGISTRY.register("concentrateddiamondore", () -> new ConcentrateddiamondoreBlock());
public static final RegistryObject<Block> LAPISORE = REGISTRY.register("lapisore", () -> new LapisoreBlock());
public static final RegistryObject<Block> DEEPSLATELAPISORE = REGISTRY.register("deepslatelapisore", () -> new DeepslatelapisoreBlock());
public static final RegistryObject<Block> REDSTONEORE = REGISTRY.register("redstoneore", () -> new RedstoneoreBlock());
public static final RegistryObject<Block> DEEPSLATEREDSTONEORE = REGISTRY.register("deepslateredstoneore", () -> new DeepslateredstoneoreBlock());
public static final RegistryObject<Block> COPPERHIGHORE = REGISTRY.register("copperhighore", () -> new CopperhighoreBlock());
public static final RegistryObject<Block> COPPERLOWERORE = REGISTRY.register("copperlowerore", () -> new CopperloweroreBlock());
public static final RegistryObject<Block> HIGHEMERALDORE = REGISTRY.register("highemeraldore", () -> new HighemeraldoreBlock());
public static final RegistryObject<Block> LOWEREMERALDORE = REGISTRY.register("loweremeraldore", () -> new LoweremeraldoreBlock());
public static final RegistryObject<Block> IRONORE = REGISTRY.register("ironore", () -> new IronoreBlock());
public static final RegistryObject<Block> DEEPSLATEIRONORE = REGISTRY.register("deepslateironore", () -> new DeepslateironoreBlock());
// Start of user code block custom blocks
// End of user code block custom blocks
}
@@ -0,0 +1,49 @@
/*
* MCreator note: This file will be REGENERATED on each build.
*/
package net.mcreator.customoregen.init;
import net.minecraftforge.registries.RegistryObject;
import net.minecraftforge.registries.ForgeRegistries;
import net.minecraftforge.registries.DeferredRegister;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.BlockItem;
import net.mcreator.customoregen.item.SharddiamondshovelItem;
import net.mcreator.customoregen.item.SharddiamondpickaxeItem;
import net.mcreator.customoregen.item.SharddiamondaxeItem;
import net.mcreator.customoregen.item.DiamondshardItem;
import net.mcreator.customoregen.CustomOreGenMod;
public class CustomOreGenModItems {
public static final DeferredRegister<Item> REGISTRY = DeferredRegister.create(ForgeRegistries.ITEMS, CustomOreGenMod.MODID);
public static final RegistryObject<Item> DIAMONDSHARD = REGISTRY.register("diamondshard", () -> new DiamondshardItem());
public static final RegistryObject<Item> SHARDDIAMONDBLOCKORE = block(CustomOreGenModBlocks.SHARDDIAMONDBLOCKORE);
public static final RegistryObject<Item> PUREGOLDENORE = block(CustomOreGenModBlocks.PUREGOLDENORE);
public static final RegistryObject<Item> DEEPSLATEPUREGOLDENORE = block(CustomOreGenModBlocks.DEEPSLATEPUREGOLDENORE);
public static final RegistryObject<Item> CONCENTRATEDCOALORE = block(CustomOreGenModBlocks.CONCENTRATEDCOALORE);
public static final RegistryObject<Item> DEEPSLATESHARDDIAMONDORE = block(CustomOreGenModBlocks.DEEPSLATESHARDDIAMONDORE);
public static final RegistryObject<Item> CONCENTRATEDDIAMONDORE = block(CustomOreGenModBlocks.CONCENTRATEDDIAMONDORE);
public static final RegistryObject<Item> LAPISORE = block(CustomOreGenModBlocks.LAPISORE);
public static final RegistryObject<Item> DEEPSLATELAPISORE = block(CustomOreGenModBlocks.DEEPSLATELAPISORE);
public static final RegistryObject<Item> REDSTONEORE = block(CustomOreGenModBlocks.REDSTONEORE);
public static final RegistryObject<Item> DEEPSLATEREDSTONEORE = block(CustomOreGenModBlocks.DEEPSLATEREDSTONEORE);
public static final RegistryObject<Item> COPPERHIGHORE = block(CustomOreGenModBlocks.COPPERHIGHORE);
public static final RegistryObject<Item> COPPERLOWERORE = block(CustomOreGenModBlocks.COPPERLOWERORE);
public static final RegistryObject<Item> HIGHEMERALDORE = block(CustomOreGenModBlocks.HIGHEMERALDORE);
public static final RegistryObject<Item> LOWEREMERALDORE = block(CustomOreGenModBlocks.LOWEREMERALDORE);
public static final RegistryObject<Item> SHARDDIAMONDPICKAXE = REGISTRY.register("sharddiamondpickaxe", () -> new SharddiamondpickaxeItem());
public static final RegistryObject<Item> SHARDDIAMONDSHOVEL = REGISTRY.register("sharddiamondshovel", () -> new SharddiamondshovelItem());
public static final RegistryObject<Item> SHARDDIAMONDAXE = REGISTRY.register("sharddiamondaxe", () -> new SharddiamondaxeItem());
public static final RegistryObject<Item> IRONORE = block(CustomOreGenModBlocks.IRONORE);
public static final RegistryObject<Item> DEEPSLATEIRONORE = block(CustomOreGenModBlocks.DEEPSLATEIRONORE);
// Start of user code block custom items
// End of user code block custom items
private static RegistryObject<Item> block(RegistryObject<Block> block) {
return REGISTRY.register(block.getId().getPath(), () -> new BlockItem(block.get(), new Item.Properties()));
}
}
@@ -0,0 +1,34 @@
/*
* MCreator note: This file will be REGENERATED on each build.
*/
package net.mcreator.customoregen.init;
import net.minecraftforge.registries.DeferredRegister;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.event.BuildCreativeModeTabContentsEvent;
import net.minecraft.world.item.CreativeModeTabs;
import net.minecraft.world.item.CreativeModeTab;
import net.minecraft.core.registries.Registries;
import net.mcreator.customoregen.CustomOreGenMod;
@Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.MOD)
public class CustomOreGenModTabs {
public static final DeferredRegister<CreativeModeTab> REGISTRY = DeferredRegister.create(Registries.CREATIVE_MODE_TAB, CustomOreGenMod.MODID);
@SubscribeEvent
public static void buildTabContentsVanilla(BuildCreativeModeTabContentsEvent tabData) {
if (tabData.getTabKey() == CreativeModeTabs.INGREDIENTS) {
tabData.accept(CustomOreGenModItems.DIAMONDSHARD.get());
tabData.accept(CustomOreGenModBlocks.SHARDDIAMONDBLOCKORE.get().asItem());
tabData.accept(CustomOreGenModBlocks.DEEPSLATESHARDDIAMONDORE.get().asItem());
} else if (tabData.getTabKey() == CreativeModeTabs.TOOLS_AND_UTILITIES) {
tabData.accept(CustomOreGenModItems.SHARDDIAMONDPICKAXE.get());
tabData.accept(CustomOreGenModItems.SHARDDIAMONDSHOVEL.get());
tabData.accept(CustomOreGenModItems.SHARDDIAMONDAXE.get());
}
}
}
@@ -0,0 +1,23 @@
package net.mcreator.customoregen.item;
import net.minecraft.world.level.Level;
import net.minecraft.world.item.TooltipFlag;
import net.minecraft.world.item.Rarity;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Item;
import net.minecraft.network.chat.Component;
import java.util.List;
public class DiamondshardItem extends Item {
public DiamondshardItem() {
super(new Item.Properties().stacksTo(64).rarity(Rarity.RARE));
}
@Override
public void appendHoverText(ItemStack itemstack, Level level, List<Component> list, TooltipFlag flag) {
super.appendHoverText(itemstack, level, list, flag);
list.add(Component.translatable("item.custom_ore_gen.diamondshard.description_0"));
}
}
@@ -0,0 +1,39 @@
package net.mcreator.customoregen.item;
import net.minecraft.world.item.crafting.Ingredient;
import net.minecraft.world.item.Tier;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.AxeItem;
import net.minecraft.world.item.ItemStack;
import net.mcreator.customoregen.init.CustomOreGenModItems;
public class SharddiamondaxeItem extends AxeItem {
public SharddiamondaxeItem() {
super(new Tier() {
public int getUses() {
return 200;
}
public float getSpeed() {
return 7f;
}
public float getAttackDamageBonus() {
return 0f;
}
public int getLevel() {
return 3;
}
public int getEnchantmentValue() {
return 9;
}
public Ingredient getRepairIngredient() {
return Ingredient.of(new ItemStack(CustomOreGenModItems.DIAMONDSHARD.get()));
}
}, 1, -3f, new Item.Properties());
}
}
@@ -0,0 +1,40 @@
package net.mcreator.customoregen.item;
import net.minecraft.world.item.crafting.Ingredient;
import net.minecraft.world.item.Tier;
import net.minecraft.world.item.PickaxeItem;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Item;
import net.mcreator.customoregen.init.CustomOreGenModItems;
public class SharddiamondpickaxeItem extends PickaxeItem {
public SharddiamondpickaxeItem() {
super(new Tier() {
public int getUses() {
return 200; // Hardcoded - config not loaded yet
}
public float getSpeed() {
return 7f;
}
public float getAttackDamageBonus() {
return 0f;
}
public int getLevel() {
return 3;
}
public int getEnchantmentValue() {
return 9;
}
public Ingredient getRepairIngredient() {
return Ingredient.of(new ItemStack(CustomOreGenModItems.DIAMONDSHARD.get()));
}
}, 1, -3f, new Item.Properties());
}
}
@@ -0,0 +1,40 @@
package net.mcreator.customoregen.item;
import net.minecraft.world.item.crafting.Ingredient;
import net.minecraft.world.item.Tier;
import net.minecraft.world.item.ShovelItem;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Item;
import net.mcreator.customoregen.init.CustomOreGenModItems;
public class SharddiamondshovelItem extends ShovelItem {
public SharddiamondshovelItem() {
super(new Tier() {
public int getUses() {
return 200;
}
public float getSpeed() {
return 4f;
}
public float getAttackDamageBonus() {
return 0f;
}
public int getLevel() {
return 3;
}
public int getEnchantmentValue() {
return 9;
}
public Ingredient getRepairIngredient() {
return Ingredient.of(new ItemStack(CustomOreGenModItems.DIAMONDSHARD.get()));
}
}, 1, -3f, new Item.Properties());
}
}
@@ -0,0 +1,143 @@
package net.mcreator.customoregen.procedures;
import net.minecraft.world.level.LevelAccessor;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.entity.Entity;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.entity.LivingEntity;
import net.minecraft.world.item.enchantment.EnchantmentHelper;
import net.minecraft.world.item.enchantment.Enchantments;
import net.minecraft.core.BlockPos;
import net.minecraft.server.level.ServerLevel;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.Blocks;
import net.minecraft.world.item.Items;
import net.minecraft.world.level.storage.loot.LootParams;
import net.minecraft.world.level.storage.loot.parameters.LootContextParams;
import net.minecraft.world.level.storage.loot.LootTable;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.level.storage.loot.BuiltInLootTables;
import net.minecraft.world.entity.item.ItemEntity;
import net.minecraft.world.entity.ExperienceOrb;
import net.mcreator.customoregen.config.ModConfigs;
import net.mcreator.customoregen.init.CustomOreGenModItems;
import java.util.Random;
public class ConfigurableOreDropsProcedure {
public static void execute(LevelAccessor world, double x, double y, double z, Entity entity, String oreType) {
if (world.isClientSide())
return;
Random random = new Random();
int fortuneLevel = 0;
boolean silkTouch = false;
// Get fortune and silk touch from the tool if mining by player
if (entity instanceof Player) {
Player player = (Player) entity;
ItemStack mainHandItem = player.getMainHandItem();
fortuneLevel = EnchantmentHelper.getItemEnchantmentLevel(Enchantments.BLOCK_FORTUNE, mainHandItem);
silkTouch = EnchantmentHelper.getItemEnchantmentLevel(Enchantments.SILK_TOUCH, mainHandItem) > 0;
}
// If silk touch, drop the block itself and return
if (silkTouch) {
return; // Let vanilla handle silk touch
}
int minDrops = 1;
int maxDrops = 2;
boolean enableFortune = true;
ItemStack dropItem = ItemStack.EMPTY;
// Configure drops based on ore type
switch (oreType) {
case "shard_diamond":
minDrops = ModConfigs.DROPS.shardDiamondOreMinDrops.get();
maxDrops = ModConfigs.DROPS.shardDiamondOreMaxDrops.get();
enableFortune = ModConfigs.DROPS.shardDiamondOreEnableFortune.get();
dropItem = new ItemStack(CustomOreGenModItems.DIAMONDSHARD.get());
break;
case "concentrated_diamond":
minDrops = ModConfigs.DROPS.concentratedDiamondOreMinDrops.get();
maxDrops = ModConfigs.DROPS.concentratedDiamondOreMaxDrops.get();
enableFortune = ModConfigs.DROPS.concentratedDiamondOreEnableFortune.get();
dropItem = new ItemStack(Items.DIAMOND);
break;
case "concentrated_coal":
minDrops = ModConfigs.DROPS.concentratedCoalOreMinDrops.get();
maxDrops = ModConfigs.DROPS.concentratedCoalOreMaxDrops.get();
dropItem = new ItemStack(Items.COAL);
break;
case "pure_golden":
minDrops = ModConfigs.DROPS.pureGoldenOreMinDrops.get();
maxDrops = ModConfigs.DROPS.pureGoldenOreMaxDrops.get();
dropItem = new ItemStack(Items.GOLD_NUGGET);
break;
case "ash_coal":
minDrops = ModConfigs.DROPS.ashCoalOreMinDrops.get();
maxDrops = ModConfigs.DROPS.ashCoalOreMaxDrops.get();
dropItem = new ItemStack(Items.COAL); // Temporarily use coal until ASHCOAL item is created
break;
case "impure_iron":
minDrops = ModConfigs.DROPS.impureIronOreMinDrops.get();
maxDrops = ModConfigs.DROPS.impureIronOreMaxDrops.get();
dropItem = new ItemStack(Items.IRON_NUGGET); // Use iron nugget until IMPUREIRON item is created
break;
case "impure_gold":
minDrops = ModConfigs.DROPS.impureGoldOreMinDrops.get();
maxDrops = ModConfigs.DROPS.impureGoldOreMaxDrops.get();
dropItem = new ItemStack(Items.RAW_GOLD);
break;
default:
return;
}
// Calculate drops
int dropCount = minDrops + random.nextInt(maxDrops - minDrops + 1);
// Apply fortune if enabled
if (enableFortune && fortuneLevel > 0) {
int fortuneBonus = random.nextInt(fortuneLevel + 2) - 1;
if (fortuneBonus < 0)
fortuneBonus = 0;
dropCount += fortuneBonus;
}
// Drop the items
if (!dropItem.isEmpty() && dropCount > 0) {
dropItem.setCount(dropCount);
if (world instanceof ServerLevel) {
ItemEntity itemEntity = new ItemEntity(
(ServerLevel) world,
x + 0.5, y + 0.5, z + 0.5,
dropItem
);
itemEntity.setDefaultPickUpDelay();
((ServerLevel) world).addFreshEntity(itemEntity);
}
}
// Drop experience if configured
int expAmount = ModConfigs.DROPS.oreExperienceDrops.get();
if (expAmount > 0 && entity instanceof Player) {
ExperienceOrb expOrb = new ExperienceOrb(
(ServerLevel) world,
x + 0.5, y + 0.5, z + 0.5,
expAmount
);
((ServerLevel) world).addFreshEntity(expOrb);
}
}
}
@@ -0,0 +1,23 @@
package net.mcreator.customoregen.procedures;
import net.minecraft.world.level.LevelAccessor;
import net.minecraft.world.item.enchantment.Enchantments;
import net.minecraft.world.item.enchantment.EnchantmentHelper;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.entity.LivingEntity;
import net.minecraft.world.entity.ExperienceOrb;
import net.minecraft.world.entity.Entity;
import net.minecraft.server.level.ServerLevel;
import net.minecraft.core.BlockPos;
public class OreexperienceProcedure {
public static void execute(LevelAccessor world, double x, double y, double z, Entity entity) {
if (entity == null)
return;
if (!(EnchantmentHelper.getItemEnchantmentLevel(Enchantments.SILK_TOUCH, (entity instanceof LivingEntity _livEnt ? _livEnt.getMainHandItem() : ItemStack.EMPTY)) != 0)) {
world.destroyBlock(BlockPos.containing(x, y, z), false);
if (world instanceof ServerLevel _level)
_level.addFreshEntity(new ExperienceOrb(_level, x, y, z, 2));
}
}
}
+28
View File
@@ -0,0 +1,28 @@
modLoader="javafml"
loaderVersion="[47,)"
license="Not specified"
[[mods]]
modId="custom_ore_gen"
version="1.0.0"
displayName="custom_ore_gen"
displayURL="https://lanro.eu"
credits="Created using mod maker MCreator - https://mcreator.net/about"
authors="Aulyrius cr\u00E9e via MCreator"
description="Changement de la distribution des ressources sur Minecraft, ne pas utilis\u00E9 seul sans KubeJS"
# Start of user code block mod configuration
# End of user code block mod configuration
[[dependencies.custom_ore_gen]]
modId="minecraft"
mandatory=true
versionRange="[1.20.1]"
ordering="AFTER"
side="BOTH"
# Start of user code block dependencies configuration
# End of user code block dependencies configuration
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "custom_ore_gen:block/concentratedcoalore"
}
}
}
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "custom_ore_gen:block/concentrateddiamondore"
}
}
}
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "custom_ore_gen:block/copperhighore"
}
}
}
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "custom_ore_gen:block/copperlowerore"
}
}
}
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "custom_ore_gen:block/deepslateironore"
}
}
}
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "custom_ore_gen:block/deepslatelapisore"
}
}
}
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "custom_ore_gen:block/deepslatepuregoldenore"
}
}
}
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "custom_ore_gen:block/deepslateredstoneore"
}
}
}
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "custom_ore_gen:block/deepslatesharddiamondore"
}
}
}
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "custom_ore_gen:block/highemeraldore"
}
}
}
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "custom_ore_gen:block/ironore"
}
}
}
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "custom_ore_gen:block/lapisore"
}
}
}
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "custom_ore_gen:block/loweremeraldore"
}
}
}
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "custom_ore_gen:block/puregoldenore"
}
}
}
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "custom_ore_gen:block/redstoneore"
}
}
}
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "custom_ore_gen:block/sharddiamondblockore"
}
}
}
@@ -0,0 +1,24 @@
{
"block.custom_ore_gen.lapisore": "Lapis ore",
"block.custom_ore_gen.sharddiamondblockore": "Shard diamond block ore",
"block.custom_ore_gen.concentratedcoalore": "Concentrated coal ore",
"block.custom_ore_gen.ironore": "Iron ore",
"block.custom_ore_gen.redstoneore": "Redstone ore",
"block.custom_ore_gen.deepslatelapisore": "Deepslate lapis ore",
"item.custom_ore_gen.sharddiamondpickaxe": "Shard diamond pickaxe",
"item.custom_ore_gen.diamondshard.description_0": "Diamond sparkle, to create tools or to create a diamond ",
"block.custom_ore_gen.copperhighore": "Copper high ore",
"block.custom_ore_gen.copperlowerore": "deepslate copper ore",
"block.custom_ore_gen.loweremeraldore": "Loweremeraldore",
"block.custom_ore_gen.deepslateredstoneore": "Deepslate redstone ore",
"block.custom_ore_gen.deepslateironore": "Deepslate iron ore",
"item.custom_ore_gen.sharddiamondaxe": "Sharddiamondaxe",
"block.custom_ore_gen.deepslatesharddiamondore": "Deepslate shard diamond ore",
"block.custom_ore_gen.concentrateddiamondore": "Concentrated diamond ore",
"item.custom_ore_gen.shardironore": "Shard iron ore",
"item.custom_ore_gen.diamondshard": "Diamond shard",
"block.custom_ore_gen.deepslatepuregoldenore": "Deepslate pure golden ore",
"block.custom_ore_gen.puregoldenore": "Pure golden ore",
"block.custom_ore_gen.highemeraldore": "emerald ore",
"item.custom_ore_gen.sharddiamondshovel": "Shard diamond shovel"
}
@@ -0,0 +1,13 @@
{
"parent": "block/cube",
"textures": {
"down": "minecraft:block/coal_ore",
"up": "minecraft:block/coal_ore",
"north": "minecraft:block/coal_ore",
"east": "minecraft:block/coal_ore",
"south": "minecraft:block/coal_ore",
"west": "minecraft:block/coal_ore",
"particle": "minecraft:block/coal_ore"
},
"render_type": "solid"
}
@@ -0,0 +1,8 @@
{
"parent": "block/cube_all",
"textures": {
"all": "minecraft:block/deepslate_diamond_ore",
"particle": "minecraft:block/deepslate_diamond_ore"
},
"render_type": "solid"
}
@@ -0,0 +1,13 @@
{
"parent": "block/cube",
"textures": {
"down": "minecraft:block/copper_ore",
"up": "minecraft:block/copper_ore",
"north": "minecraft:block/copper_ore",
"east": "minecraft:block/copper_ore",
"south": "minecraft:block/copper_ore",
"west": "minecraft:block/copper_ore",
"particle": "minecraft:block/copper_ore"
},
"render_type": "solid"
}
@@ -0,0 +1,8 @@
{
"parent": "block/cube_all",
"textures": {
"all": "minecraft:block/deepslate_copper_ore",
"particle": "minecraft:block/deepslate_copper_ore"
},
"render_type": "solid"
}
@@ -0,0 +1,8 @@
{
"parent": "block/cube_all",
"textures": {
"all": "minecraft:block/deepslate_iron_ore",
"particle": "minecraft:block/deepslate_iron_ore"
},
"render_type": "solid"
}
@@ -0,0 +1,13 @@
{
"parent": "block/cube",
"textures": {
"down": "minecraft:block/deepslate_lapis_ore",
"up": "minecraft:block/deepslate_lapis_ore",
"north": "minecraft:block/deepslate_lapis_ore",
"east": "minecraft:block/deepslate_lapis_ore",
"south": "minecraft:block/deepslate_lapis_ore",
"west": "minecraft:block/deepslate_lapis_ore",
"particle": "minecraft:block/deepslate_lapis_ore"
},
"render_type": "solid"
}
@@ -0,0 +1,8 @@
{
"parent": "block/cube_all",
"textures": {
"all": "minecraft:block/deepslate_gold_ore",
"particle": "minecraft:block/deepslate_gold_ore"
},
"render_type": "solid"
}
@@ -0,0 +1,8 @@
{
"parent": "block/cube_all",
"textures": {
"all": "minecraft:block/deepslate_redstone_ore",
"particle": "minecraft:block/deepslate_redstone_ore"
},
"render_type": "solid"
}
@@ -0,0 +1,13 @@
{
"parent": "block/cube",
"textures": {
"down": "custom_ore_gen:block/shard_diamond_ore",
"up": "custom_ore_gen:block/shard_diamond_ore",
"north": "custom_ore_gen:block/shard_diamond_ore",
"east": "custom_ore_gen:block/shard_diamond_ore",
"south": "custom_ore_gen:block/shard_diamond_ore",
"west": "custom_ore_gen:block/shard_diamond_ore",
"particle": "custom_ore_gen:block/shard_diamond_ore"
},
"render_type": "solid"
}
@@ -0,0 +1,8 @@
{
"parent": "block/cube_all",
"textures": {
"all": "minecraft:block/emerald_ore",
"particle": "minecraft:block/emerald_ore"
},
"render_type": "solid"
}
@@ -0,0 +1,8 @@
{
"parent": "block/cube_all",
"textures": {
"all": "minecraft:block/iron_ore",
"particle": "minecraft:block/iron_ore"
},
"render_type": "solid"
}
@@ -0,0 +1,8 @@
{
"parent": "block/cube_all",
"textures": {
"all": "minecraft:block/lapis_ore",
"particle": "minecraft:block/lapis_ore"
},
"render_type": "solid"
}
@@ -0,0 +1,8 @@
{
"parent": "block/cube_all",
"textures": {
"all": "minecraft:block/deepslate_emerald_ore",
"particle": "minecraft:block/deepslate_emerald_ore"
},
"render_type": "solid"
}
@@ -0,0 +1,8 @@
{
"parent": "block/cube_all",
"textures": {
"all": "minecraft:block/gold_ore",
"particle": "minecraft:block/gold_ore"
},
"render_type": "solid"
}
@@ -0,0 +1,8 @@
{
"parent": "block/cube_all",
"textures": {
"all": "minecraft:block/redstone_ore",
"particle": "minecraft:block/redstone_ore"
},
"render_type": "solid"
}
@@ -0,0 +1,8 @@
{
"parent": "block/cube_all",
"textures": {
"all": "custom_ore_gen:block/shard_diamond_ore_2",
"particle": "custom_ore_gen:block/shard_diamond_ore_2"
},
"render_type": "solid"
}
@@ -0,0 +1,22 @@
{
"parent": "custom_ore_gen:block/concentratedcoalore",
"display": {
"thirdperson": {
"rotation": [
10,
-45,
170
],
"translation": [
0,
1.5,
-2.75
],
"scale": [
0.375,
0.375,
0.375
]
}
}
}
@@ -0,0 +1,22 @@
{
"parent": "custom_ore_gen:block/concentrateddiamondore",
"display": {
"thirdperson": {
"rotation": [
10,
-45,
170
],
"translation": [
0,
1.5,
-2.75
],
"scale": [
0.375,
0.375,
0.375
]
}
}
}
@@ -0,0 +1,22 @@
{
"parent": "custom_ore_gen:block/copperhighore",
"display": {
"thirdperson": {
"rotation": [
10,
-45,
170
],
"translation": [
0,
1.5,
-2.75
],
"scale": [
0.375,
0.375,
0.375
]
}
}
}
@@ -0,0 +1,22 @@
{
"parent": "custom_ore_gen:block/copperlowerore",
"display": {
"thirdperson": {
"rotation": [
10,
-45,
170
],
"translation": [
0,
1.5,
-2.75
],
"scale": [
0.375,
0.375,
0.375
]
}
}
}
@@ -0,0 +1,22 @@
{
"parent": "custom_ore_gen:block/deepslateironore",
"display": {
"thirdperson": {
"rotation": [
10,
-45,
170
],
"translation": [
0,
1.5,
-2.75
],
"scale": [
0.375,
0.375,
0.375
]
}
}
}
@@ -0,0 +1,22 @@
{
"parent": "custom_ore_gen:block/deepslatelapisore",
"display": {
"thirdperson": {
"rotation": [
10,
-45,
170
],
"translation": [
0,
1.5,
-2.75
],
"scale": [
0.375,
0.375,
0.375
]
}
}
}
@@ -0,0 +1,22 @@
{
"parent": "custom_ore_gen:block/deepslatepuregoldenore",
"display": {
"thirdperson": {
"rotation": [
10,
-45,
170
],
"translation": [
0,
1.5,
-2.75
],
"scale": [
0.375,
0.375,
0.375
]
}
}
}
@@ -0,0 +1,22 @@
{
"parent": "custom_ore_gen:block/deepslateredstoneore",
"display": {
"thirdperson": {
"rotation": [
10,
-45,
170
],
"translation": [
0,
1.5,
-2.75
],
"scale": [
0.375,
0.375,
0.375
]
}
}
}
@@ -0,0 +1,22 @@
{
"parent": "custom_ore_gen:block/deepslatesharddiamondore",
"display": {
"thirdperson": {
"rotation": [
10,
-45,
170
],
"translation": [
0,
1.5,
-2.75
],
"scale": [
0.375,
0.375,
0.375
]
}
}
}
@@ -0,0 +1,6 @@
{
"parent": "item/generated",
"textures": {
"layer0": "custom_ore_gen:item/shard_diamond-removebg-preview"
}
}
@@ -0,0 +1,22 @@
{
"parent": "custom_ore_gen:block/highemeraldore",
"display": {
"thirdperson": {
"rotation": [
10,
-45,
170
],
"translation": [
0,
1.5,
-2.75
],
"scale": [
0.375,
0.375,
0.375
]
}
}
}
@@ -0,0 +1,22 @@
{
"parent": "custom_ore_gen:block/ironore",
"display": {
"thirdperson": {
"rotation": [
10,
-45,
170
],
"translation": [
0,
1.5,
-2.75
],
"scale": [
0.375,
0.375,
0.375
]
}
}
}
@@ -0,0 +1,22 @@
{
"parent": "custom_ore_gen:block/lapisore",
"display": {
"thirdperson": {
"rotation": [
10,
-45,
170
],
"translation": [
0,
1.5,
-2.75
],
"scale": [
0.375,
0.375,
0.375
]
}
}
}
@@ -0,0 +1,22 @@
{
"parent": "custom_ore_gen:block/loweremeraldore",
"display": {
"thirdperson": {
"rotation": [
10,
-45,
170
],
"translation": [
0,
1.5,
-2.75
],
"scale": [
0.375,
0.375,
0.375
]
}
}
}
@@ -0,0 +1,22 @@
{
"parent": "custom_ore_gen:block/puregoldenore",
"display": {
"thirdperson": {
"rotation": [
10,
-45,
170
],
"translation": [
0,
1.5,
-2.75
],
"scale": [
0.375,
0.375,
0.375
]
}
}
}
@@ -0,0 +1,22 @@
{
"parent": "custom_ore_gen:block/redstoneore",
"display": {
"thirdperson": {
"rotation": [
10,
-45,
170
],
"translation": [
0,
1.5,
-2.75
],
"scale": [
0.375,
0.375,
0.375
]
}
}
}
@@ -0,0 +1,6 @@
{
"parent": "item/handheld",
"textures": {
"layer0": "custom_ore_gen:item/shard_diamond_axe"
}
}
@@ -0,0 +1,22 @@
{
"parent": "custom_ore_gen:block/sharddiamondblockore",
"display": {
"thirdperson": {
"rotation": [
10,
-45,
170
],
"translation": [
0,
1.5,
-2.75
],
"scale": [
0.375,
0.375,
0.375
]
}
}
}
@@ -0,0 +1,6 @@
{
"parent": "item/handheld",
"textures": {
"layer0": "custom_ore_gen:item/shard_diamond_pickaxe"
}
}
@@ -0,0 +1,6 @@
{
"parent": "item/handheld",
"textures": {
"layer0": "custom_ore_gen:item/shard_diamond_shovel"
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 313 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 502 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 476 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 489 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 349 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 718 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 542 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 446 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 653 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 692 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 386 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 385 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 552 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 507 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 257 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 395 B

Some files were not shown because too many files have changed in this diff Show More