Attempt number 2 of updating to 1.19

This commit is contained in:
Steven Tracey 2022-07-12 15:42:37 -04:00
parent 081b744755
commit 706167bca2
39 changed files with 247 additions and 175 deletions

View File

@ -29,7 +29,12 @@
<remote-repository>
<option name="id" value="UserLocalRemappedMods" />
<option name="name" value="UserLocalRemappedMods" />
<option name="url" value="file:/$PROJECT_DIR$/../../../Minecraft%20Mods%20and%20Plugins/Fabric/VanillaPlus/.gradle/loom-cache/remapped_mods/" />
<option name="url" value="file:/$USER_HOME$/Minecraft%20Mods%20and%20Plugins/Fabric/VanillaPlus/.gradle/loom-cache/remapped_mods/" />
</remote-repository>
<remote-repository>
<option name="id" value="UserLocalRemappedMods" />
<option name="name" value="UserLocalRemappedMods" />
<option name="url" value="file:/$PROJECT_DIR$/.gradle/loom-cache/remapped_mods/" />
</remote-repository>
</component>
</project>

View File

@ -4,7 +4,7 @@
<component name="FrameworkDetectionExcludesConfiguration">
<file type="web" url="file://$PROJECT_DIR$" />
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" project-jdk-name="azul-16" project-jdk-type="JavaSDK">
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="temurin-17" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

View File

@ -1,5 +1,5 @@
plugins {
id 'fabric-loom' version '0.10-SNAPSHOT'
id 'fabric-loom' version '0.12-SNAPSHOT'
id 'maven-publish'
}
@ -22,6 +22,10 @@ dependencies {
modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}"
}
loom {
accessWidenerPath = file("src/main/resources/vplus.accesswidener")
}
processResources {
inputs.property "version", project.version
@ -43,4 +47,5 @@ jar {
from("LICENSE") {
rename { "${it}_${project.archivesBaseName}"}
}
}
}

View File

@ -3,14 +3,14 @@ org.gradle.jvmargs=-Xmx4G
# Fabric Properties
# check these on https://fabricmc.net/versions.html
minecraft_version=1.18.1
yarn_mappings=1.18.1+build.1
loader_version=0.12.12
minecraft_version=1.19
yarn_mappings=1.19+build.1
loader_version=0.14.6
# Mod Properties
mod_version = 1.1.1
mod_version = 1.1.2
maven_group = tech.nevets
archives_base_name = vplus
# Dependencies
fabric_version=0.44.0+1.18
fabric_version=0.55.1+1.19

View File

@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.2-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

View File

@ -6,9 +6,8 @@ import tech.nevets.vplus.blocks.VPBlocks;
import tech.nevets.vplus.food.VPFood;
import tech.nevets.vplus.items.VPItems;
import tech.nevets.vplus.misc.VPFuels;
import tech.nevets.vplus.misc.VPOreGen;
import tech.nevets.vplus.misc.VPZoom;
import tech.nevets.vplus.tools.VPTools;
import tech.nevets.vplus.worldgen.features.VPOreConfiguredFeatures;
public class Main implements ModInitializer {
@ -19,7 +18,8 @@ public class Main implements ModInitializer {
VPFood.vpFood();
VPTools.vpTools();
VPArmor.vpArmor();
VPOreGen.vpOres();
new VPOreConfiguredFeatures();
//VPOreGen.vpOres();
VPFuels.vpFuels();
}
}

View File

@ -0,0 +1,48 @@
package tech.nevets.vplus;
import net.minecraft.block.*;
import net.minecraft.item.BlockItem;
import net.minecraft.item.Item;
import net.minecraft.item.ItemGroup;
import net.minecraft.util.Identifier;
import net.minecraft.util.math.intprovider.IntProvider;
import net.minecraft.util.registry.Registry;
import tech.nevets.vplus.items.VPItemGroups;
import java.util.ArrayList;
import java.util.List;
public class VPBlocks extends Blocks {
public static final List<Block> BLOCKS = new ArrayList<>();
public static final Block SAPPHIRE_ORE;
public static final Block RUBY_ORE;
public static final Block JADE_ORE;
public VPBlocks() {
}
static {
SAPPHIRE_ORE = register("sapphire_ore", new OreBlock(AbstractBlock.Settings.of(Material.STONE).requiresTool().strength(3.0F, 3.0F)), VPItemGroups.ALL).getBlock();
RUBY_ORE = register("ruby_ore", new OreBlock(AbstractBlock.Settings.of(Material.STONE).requiresTool().strength(3.0F, 3.0F)), VPItemGroups.ALL).getBlock();
JADE_ORE = register("jade_ore", new OreBlock(AbstractBlock.Settings.of(Material.STONE).requiresTool().strength(3.0F, 3.0F)), VPItemGroups.ALL).getBlock();
///////////////////\\\\ITERATOR////\\\\\\\\\\\\\\\\\\\
for (Block block : BLOCKS) {
for (BlockState blockState : block.getStateManager().getStates()) {
Block.STATE_IDS.add(blockState);
}
block.getLootTableId();
}
}
/*
Use blockItem.getBlock(); to get instance of the block if needed
*/
private static BlockItem register(String id, Block block, ItemGroup group) {
BLOCKS.add(block);
Registry.register(Registry.BLOCK, new Identifier("vplus", id), block);
return Registry.register(Registry.ITEM, new Identifier("vplus", id), new BlockItem(block, new Item.Settings().group(group)));
}
}

View File

@ -15,18 +15,10 @@ import tech.nevets.vplus.items.VPItems;
import java.util.function.Supplier;
public enum ArmorMaterials implements ArmorMaterial {
COPPER("copper", 13, new int[]{2, 4, 5, 2}, 20, SoundEvents.ITEM_ARMOR_EQUIP_IRON, 0.0F, 0.0F, () -> {
return Ingredient.ofItems(new ItemConvertible[]{Items.COPPER_INGOT});
}),
EMERALD("emerald", 30, new int[]{2, 6, 8, 2}, 30, SoundEvents.ITEM_ARMOR_EQUIP_DIAMOND, 1.0F, 0.0F, () -> {
return Ingredient.ofItems(new ItemConvertible[]{Items.EMERALD});
}),
PLATINUM("platinum", 40, new int[]{6, 8, 10, 6}, 40, SoundEvents.ITEM_ARMOR_EQUIP_DIAMOND, 1.0F, 0.5F, () -> {
return Ingredient.ofItems(new ItemConvertible[]{VPItems.PLATINUMINGOT});
}),
RUBY("ruby", 75, new int[]{10, 15, 20, 10}, 100, SoundEvents.ITEM_ARMOR_EQUIP_DIAMOND, 4.0F, 1.0F, () -> {
return Ingredient.ofItems(new ItemConvertible[]{VPItems.RUBY});
});
COPPER("copper", 13, new int[]{2, 4, 5, 2}, 20, SoundEvents.ITEM_ARMOR_EQUIP_IRON, 0.0F, 0.0F, () -> Ingredient.ofItems(Items.COPPER_INGOT)),
EMERALD("emerald", 30, new int[]{2, 6, 8, 2}, 30, SoundEvents.ITEM_ARMOR_EQUIP_DIAMOND, 1.0F, 0.0F, () -> Ingredient.ofItems(Items.EMERALD)),
PLATINUM("platinum", 40, new int[]{6, 8, 10, 6}, 40, SoundEvents.ITEM_ARMOR_EQUIP_DIAMOND, 1.0F, 0.5F, () -> Ingredient.ofItems(VPItems.PLATINUMINGOT)),
RUBY("ruby", 75, new int[]{10, 15, 20, 10}, 100, SoundEvents.ITEM_ARMOR_EQUIP_DIAMOND, 4.0F, 1.0F, () -> Ingredient.ofItems(VPItems.RUBY));
private static final int[] BASE_DURABILITY = new int[]{13, 15, 16, 11};
private final String name;
@ -38,7 +30,7 @@ public enum ArmorMaterials implements ArmorMaterial {
private final float knockbackResistance;
private final Lazy<Ingredient> repairIngredientSupplier;
private ArmorMaterials(String name, int durabilityMultiplier, int[] protectionAmounts, int enchantability, SoundEvent equipSound, float toughness, float knockbackResistance, Supplier<Ingredient> repairIngredientSupplier) {
ArmorMaterials(String name, int durabilityMultiplier, int[] protectionAmounts, int enchantability, SoundEvent equipSound, float toughness, float knockbackResistance, Supplier<Ingredient> repairIngredientSupplier) {
this.name = name;
this.durabilityMultiplier = durabilityMultiplier;
this.protectionAmounts = protectionAmounts;
@ -66,7 +58,7 @@ public enum ArmorMaterials implements ArmorMaterial {
}
public Ingredient getRepairIngredient() {
return (Ingredient)this.repairIngredientSupplier.get();
return this.repairIngredientSupplier.get();
}
@Environment(EnvType.CLIENT)

View File

@ -37,9 +37,9 @@ public class ColorTorchBlock extends Block {
}
public void randomDisplayTick(BlockState state, World world, BlockPos pos, Random random) {
double d = (double)pos.getX() + 0.5D;
double e = (double)pos.getY() + 0.7D;
double f = (double)pos.getZ() + 0.5D;
double d = (double) pos.getX() + 0.5D;
double e = (double) pos.getY() + 0.7D;
double f = (double) pos.getZ() + 0.5D;
world.addParticle(ParticleTypes.SMOKE, d, e, f, 0.0D, 0.0D, 0.0D);
world.addParticle(this.particle, d, e, f, 0.0D, 0.0D, 0.0D);
}

View File

@ -8,7 +8,6 @@ import net.minecraft.particle.ParticleEffect;
import net.minecraft.particle.ParticleTypes;
import net.minecraft.state.StateManager;
import net.minecraft.state.property.DirectionProperty;
import net.minecraft.state.property.Property;
import net.minecraft.util.BlockMirror;
import net.minecraft.util.BlockRotation;
import net.minecraft.util.math.BlockPos;
@ -30,7 +29,7 @@ public class ColorWallTorchBlock extends TorchBlock {
protected ColorWallTorchBlock(Settings settings, ParticleEffect particleEffect) {
super(settings, particleEffect);
this.setDefaultState((BlockState)((BlockState)this.stateManager.getDefaultState()).with(FACING, Direction.NORTH));
this.setDefaultState(this.stateManager.getDefaultState().with(FACING, Direction.NORTH));
}
public String getTranslationKey() {
@ -42,11 +41,11 @@ public class ColorWallTorchBlock extends TorchBlock {
}
public static VoxelShape getBoundingShape(BlockState state) {
return (VoxelShape)BOUNDING_SHAPES.get(state.get(FACING));
return BOUNDING_SHAPES.get(state.get(FACING));
}
public boolean canPlaceAt(BlockState state, WorldView world, BlockPos pos) {
Direction direction = (Direction)state.get(FACING);
Direction direction = state.get(FACING);
BlockPos blockPos = pos.offset(direction.getOpposite());
BlockState blockState = world.getBlockState(blockPos);
return blockState.isSideSolidFullSquare(world, blockPos, direction);
@ -65,7 +64,7 @@ public class ColorWallTorchBlock extends TorchBlock {
Direction direction = var6[var8];
if (direction.getAxis().isHorizontal()) {
Direction direction2 = direction.getOpposite();
blockState = (BlockState)blockState.with(FACING, direction2);
blockState = blockState.with(FACING, direction2);
if (blockState.canPlaceAt(worldView, blockPos)) {
return blockState;
}
@ -80,7 +79,7 @@ public class ColorWallTorchBlock extends TorchBlock {
}
public void randomDisplayTick(BlockState state, World world, BlockPos pos, Random random) {
Direction direction = (Direction)state.get(FACING);
Direction direction = state.get(FACING);
double d = (double)pos.getX() + 0.5D;
double e = (double)pos.getY() + 0.7D;
double f = (double)pos.getZ() + 0.5D;
@ -92,15 +91,15 @@ public class ColorWallTorchBlock extends TorchBlock {
}
public BlockState rotate(BlockState state, BlockRotation rotation) {
return (BlockState)state.with(FACING, rotation.rotate((Direction)state.get(FACING)));
return state.with(FACING, rotation.rotate(state.get(FACING)));
}
public BlockState mirror(BlockState state, BlockMirror mirror) {
return state.rotate(mirror.getRotation((Direction)state.get(FACING)));
return state.rotate(mirror.getRotation(state.get(FACING)));
}
protected void appendProperties(StateManager.Builder<Block, BlockState> builder) {
builder.add(new Property[]{FACING});
builder.add(FACING);
}
static {

View File

@ -45,7 +45,7 @@ public class LavaSpongeBlock extends Block {
int i = 0;
while(!queue.isEmpty()) {
Pair<BlockPos, Integer> pair = (Pair)queue.poll();
Pair pair = queue.poll();
BlockPos blockPos = (BlockPos)pair.getLeft();
int j = (Integer)pair.getRight();
Direction[] var8 = Direction.values();

View File

@ -1,7 +1,6 @@
package tech.nevets.vplus.blocks;
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags;
import net.minecraft.block.Block;
import net.minecraft.block.Material;
import net.minecraft.sound.BlockSoundGroup;
@ -9,6 +8,6 @@ import net.minecraft.sound.BlockSoundGroup;
//TODO Change platinum to saphire
public class PlatinumBlock extends Block {
public PlatinumBlock() {
super(FabricBlockSettings.of(Material.STONE).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).sounds(BlockSoundGroup.METAL).strength(30, 1000f));
super(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.METAL).strength(30, 1000f));
}
}

View File

@ -1,7 +1,6 @@
package tech.nevets.vplus.blocks;
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags;
import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.block.Material;
@ -12,17 +11,17 @@ import net.minecraft.server.world.ServerWorld;
import net.minecraft.sound.BlockSoundGroup;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.MathHelper;
import java.util.Random;
import net.minecraft.util.math.random.Random;
public class PlatinumOre extends Block {
public PlatinumOre() {
super(FabricBlockSettings.of(Material.STONE).breakByTool(FabricToolTags.PICKAXES, 3).sounds(BlockSoundGroup.STONE).strength(3, 1500f));
super(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).strength(3, 1500f));
}
protected int getExperienceWhenMined(Random random) {
return MathHelper.nextInt(random, 3, 7);
}
/*
public void onStacksDropped(BlockState state, ServerWorld world, BlockPos pos, ItemStack stack) {
super.onStacksDropped(state, world, pos, stack);
if (EnchantmentHelper.getLevel(Enchantments.SILK_TOUCH, stack) == 0) {
@ -31,6 +30,6 @@ public class PlatinumOre extends Block {
this.dropExperience(world, pos, i);
}
}
}
*/
}

View File

@ -1,13 +1,12 @@
package tech.nevets.vplus.blocks;
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags;
import net.minecraft.block.Block;
import net.minecraft.block.Material;
import net.minecraft.sound.BlockSoundGroup;
public class RubyBlock extends Block {
public RubyBlock() {
super(FabricBlockSettings.of(Material.STONE).breakByHand(false).breakByTool(FabricToolTags.PICKAXES).sounds(BlockSoundGroup.METAL).strength(5, 6.0f));
super(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.METAL).strength(5, 6.0f));
}
}

View File

@ -1,7 +1,6 @@
package tech.nevets.vplus.blocks;
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags;
import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.block.Material;
@ -12,17 +11,17 @@ import net.minecraft.server.world.ServerWorld;
import net.minecraft.sound.BlockSoundGroup;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.MathHelper;
import java.util.Random;
import net.minecraft.util.math.random.Random;
public class RubyOre extends Block {
public RubyOre() {
super(FabricBlockSettings.of(Material.STONE).breakByTool(FabricToolTags.PICKAXES, 3).sounds(BlockSoundGroup.STONE).strength(3, 1500f));
super(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).strength(3, 1500f));
}
protected int getExperienceWhenMined(Random random) {
return MathHelper.nextInt(random, 3, 7);
}
/*
public void onStacksDropped(BlockState state, ServerWorld world, BlockPos pos, ItemStack stack) {
super.onStacksDropped(state, world, pos, stack);
if (EnchantmentHelper.getLevel(Enchantments.SILK_TOUCH, stack) == 0) {
@ -32,4 +31,5 @@ public class RubyOre extends Block {
}
}
}
*/
}

View File

@ -10,10 +10,9 @@ import net.minecraft.particle.ParticleTypes;
import net.minecraft.sound.BlockSoundGroup;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Direction;
import net.minecraft.util.math.random.Random;
import net.minecraft.world.World;
import java.util.Random;
public class SaturatedLavaSpongeBlock extends Block {
public SaturatedLavaSpongeBlock() {

View File

@ -44,7 +44,7 @@ public class VPBlocks {
}
public static void initializeTorches() {
Registry.register(Registry.BLOCK, new Identifier("vplus", "green_torch"), new ColorTorchBlock(AbstractBlock.Settings.of(Material.DECORATION).noCollision().breakInstantly().luminance((state) -> {return 14;}).sounds(BlockSoundGroup.WOOD), ParticleTypes.FLAME));
Registry.register(Registry.BLOCK, new Identifier("vplus", "green_wall_torch"), new ColorWallTorchBlock(AbstractBlock.Settings.of(Material.DECORATION).noCollision().breakInstantly().luminance((state) -> {return 14;}).sounds(BlockSoundGroup.WOOD).dropsLike(Blocks.TORCH), ParticleTypes.FLAME));
Registry.register(Registry.BLOCK, new Identifier("vplus", "green_torch"), new ColorTorchBlock(AbstractBlock.Settings.of(Material.DECORATION).noCollision().breakInstantly().luminance((state) -> 14).sounds(BlockSoundGroup.WOOD), ParticleTypes.FLAME));
Registry.register(Registry.BLOCK, new Identifier("vplus", "green_wall_torch"), new ColorWallTorchBlock(AbstractBlock.Settings.of(Material.DECORATION).noCollision().breakInstantly().luminance((state) -> 14).sounds(BlockSoundGroup.WOOD).dropsLike(Blocks.TORCH), ParticleTypes.FLAME));
}
}

View File

@ -1,7 +1,6 @@
package tech.nevets.vplus.blocks;
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags;
import net.minecraft.block.Block;
import net.minecraft.block.Material;
import net.minecraft.item.BlockItem;
@ -14,6 +13,8 @@ import tech.nevets.vplus.items.VPItemGroups;
public class VPVerticalSlabs {
//TODO add new 1.17 blocks
//TODO add new 1.18 blocks
//TODO add new 1.19 blocks
public static final Block VERTICAL_OAK_SLAB;
public static final Block VERTICAL_SPRUCE_SLAB;
@ -137,44 +138,44 @@ public class VPVerticalSlabs {
}
static {
VERTICAL_OAK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2.0F).breakByTool(FabricToolTags.AXES));
VERTICAL_SPRUCE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2.0F).breakByTool(FabricToolTags.AXES));
VERTICAL_BIRCH_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2.0F).breakByTool(FabricToolTags.AXES));
VERTICAL_JUNGLE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2.0F).breakByTool(FabricToolTags.AXES));
VERTICAL_ACACIA_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2.0F).breakByTool(FabricToolTags.AXES));
VERTICAL_DARK_OAK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2.0F).breakByTool(FabricToolTags.AXES));
VERTICAL_CRIMSON_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2.0F).breakByTool(FabricToolTags.AXES));
VERTICAL_WARPED_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2.0F).breakByTool(FabricToolTags.AXES));
VERTICAL_STONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_SMOOTH_STONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_SANDSTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_CUT_SANDSTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_COBBLESTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_BRICK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_STONE_BRICK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_NETHER_BRICK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_QUARTZ_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_RED_SANDSTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_CUT_RED_SANDSTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_PURPUR_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_PRISMARINE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_PRISMARINE_BRICK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_DARK_PRISMARINE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_POLISHED_GRANITE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_SMOOTH_RED_SANDSTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_MOSSY_STONE_BRICK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_POLISHED_DIORITE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_MOSSY_COBBLESTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_END_STONE_BRICK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_SMOOTH_SANDSTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_SMOOTH_QUARTZ_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_GRANITE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_ANDESITE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_RED_NETHER_BRICK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_POLISHED_ANDESITE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_DIORITE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_BLACKSTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_POLISHED_BLACKSTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_POLISHED_BLACKSTONE_BRICK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F).breakByHand(false).breakByTool(FabricToolTags.PICKAXES));
VERTICAL_OAK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2.0F));
VERTICAL_SPRUCE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2.0F));
VERTICAL_BIRCH_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2.0F));
VERTICAL_JUNGLE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2.0F));
VERTICAL_ACACIA_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2.0F));
VERTICAL_DARK_OAK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2.0F));
VERTICAL_CRIMSON_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2.0F));
VERTICAL_WARPED_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.WOOD).sounds(BlockSoundGroup.WOOD).hardness(2.0F));
VERTICAL_STONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_SMOOTH_STONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_SANDSTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_CUT_SANDSTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_COBBLESTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_BRICK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_STONE_BRICK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_NETHER_BRICK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_QUARTZ_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_RED_SANDSTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_CUT_RED_SANDSTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_PURPUR_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_PRISMARINE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_PRISMARINE_BRICK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_DARK_PRISMARINE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_POLISHED_GRANITE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_SMOOTH_RED_SANDSTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_MOSSY_STONE_BRICK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_POLISHED_DIORITE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_MOSSY_COBBLESTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_END_STONE_BRICK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_SMOOTH_SANDSTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_SMOOTH_QUARTZ_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_GRANITE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_ANDESITE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_RED_NETHER_BRICK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_POLISHED_ANDESITE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_DIORITE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_BLACKSTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_POLISHED_BLACKSTONE_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
VERTICAL_POLISHED_BLACKSTONE_BRICK_SLAB = new VerticalSlabs(FabricBlockSettings.of(Material.STONE).sounds(BlockSoundGroup.STONE).hardness(2.0F));
}
}

View File

@ -14,7 +14,6 @@ import net.minecraft.util.shape.VoxelShape;
import net.minecraft.util.shape.VoxelShapes;
import net.minecraft.world.BlockView;
public class VerticalSlabs extends HorizontalFacingBlock {
private static final VoxelShape NORTH_SHAPE;
private static final VoxelShape EAST_SHAPE;
@ -29,8 +28,8 @@ public class VerticalSlabs extends HorizontalFacingBlock {
//TODO Fix Waterlogging
@Override
public FluidState getFluidState(BlockState blockState_1) {
return (Boolean)blockState_1.get(WATERLOGGED) ? Fluids.WATER.getStill(false) : super.getFluidState(blockState_1);
public FluidState getFluidState(BlockState blockState) {
return blockState.get(WATERLOGGED) ? Fluids.WATER.getStill(false) : super.getFluidState(blockState);
}
@Override

View File

@ -12,6 +12,7 @@ public class EnchantedCopperApple extends Item {
super(new Settings().group(VPItemGroups.FOOD).food(new FoodComponent.Builder().hunger(12).saturationModifier(16).alwaysEdible().statusEffect(new StatusEffectInstance(StatusEffects.REGENERATION, 20*120, 6),1f).build()));
}
@Override
public boolean hasGlint(ItemStack stack) {
return true;
}

View File

@ -12,6 +12,7 @@ public class EnchantedDiamondApple extends Item {
super(new Settings().group(VPItemGroups.FOOD).food(new FoodComponent.Builder().hunger(8).saturationModifier(14).alwaysEdible().statusEffect(new StatusEffectInstance(StatusEffects.REGENERATION, 20*120, 4),1f).build()));
}
@Override
public boolean hasGlint(ItemStack stack) {
return true;
}

View File

@ -12,6 +12,7 @@ public class EnchantedEmeraldApple extends Item {
super(new Settings().group(VPItemGroups.FOOD).food(new FoodComponent.Builder().hunger(12).saturationModifier(16).alwaysEdible().statusEffect(new StatusEffectInstance(StatusEffects.REGENERATION, 20*120, 6),1f).build()));
}
@Override
public boolean hasGlint(ItemStack stack) {
return true;
}

View File

@ -12,6 +12,7 @@ public class EnchantedIronApple extends Item {
super(new Settings().group(VPItemGroups.FOOD).food(new FoodComponent.Builder().hunger(6).saturationModifier(10).alwaysEdible().statusEffect(new StatusEffectInstance(StatusEffects.REGENERATION, 20*120, 2),1f).build()));
}
@Override
public boolean hasGlint(ItemStack stack) {
return true;
}

View File

@ -12,6 +12,7 @@ public class EnchantedNetheriteApple extends Item {
super(new Settings().group(VPItemGroups.FOOD).food(new FoodComponent.Builder().hunger(14).saturationModifier(18).alwaysEdible().statusEffect(new StatusEffectInstance(StatusEffects.REGENERATION, 20*120, 8),1f).build()));
}
@Override
public boolean hasGlint(ItemStack stack) {
return true;
}

View File

@ -12,6 +12,7 @@ public class EnchantedPlatinumApple extends Item {
super(new Settings().group(VPItemGroups.FOOD).food(new FoodComponent.Builder().hunger(16).saturationModifier(20).alwaysEdible().statusEffect(new StatusEffectInstance(StatusEffects.REGENERATION, 20*120, 10),1f).build()));
}
@Override
public boolean hasGlint(ItemStack stack) {
return true;
}

View File

@ -12,6 +12,7 @@ public class EnchantedRubyApple extends Item {
super(new Settings().group(VPItemGroups.FOOD).food(new FoodComponent.Builder().hunger(18).saturationModifier(22).alwaysEdible().statusEffect(new StatusEffectInstance(StatusEffects.REGENERATION, 20*120, 12),1f).build()));
}
@Override
public boolean hasGlint(ItemStack stack) {
return true;
}

View File

@ -3,7 +3,7 @@ package tech.nevets.vplus.init;
import net.fabricmc.api.ClientModInitializer;
import tech.nevets.vplus.misc.VPZoom;
public class ClientInit implements ClientModInitializer {
public class ClientInit implements ClientModInitializer {
@Override
public void onInitializeClient() {

View File

@ -1,48 +0,0 @@
package tech.nevets.vplus.misc;
import net.fabricmc.fabric.api.biome.v1.BiomeModifications;
import net.fabricmc.fabric.api.biome.v1.BiomeSelectors;
import net.minecraft.util.Identifier;
import net.minecraft.util.registry.BuiltinRegistries;
import net.minecraft.util.registry.Registry;
import net.minecraft.util.registry.RegistryKey;
import net.minecraft.world.gen.GenerationStep;
import net.minecraft.world.gen.YOffset;
import net.minecraft.world.gen.decorator.*;
import net.minecraft.world.gen.feature.*;
import tech.nevets.vplus.blocks.VPBlocks;
public class VPOreGen {
private static ConfiguredFeature<?, ?> ORE_PLATINUM_OVERWORLD_CONFIGURED = Feature.ORE
.configure(new OreFeatureConfig(
OreConfiguredFeatures.BASE_STONE_OVERWORLD,
VPBlocks.PLATINUMORE.getDefaultState(),
3)); // vein size
public static PlacedFeature ORE_PLATINUM_OVERWORLD_PLACED = ORE_PLATINUM_OVERWORLD_CONFIGURED.withPlacement(
CountPlacementModifier.of(2), // number of veins per chunk
SquarePlacementModifier.of(),
HeightRangePlacementModifier.uniform(YOffset.getBottom(), YOffset.fixed(15))
);
private static ConfiguredFeature<?, ?> ORE_RUBY_OVERWORLD_CONFIGURED = Feature.ORE
.configure(new OreFeatureConfig(
OreConfiguredFeatures.BASE_STONE_OVERWORLD,
VPBlocks.PLATINUMORE.getDefaultState(),
1)); // vein size
public static PlacedFeature ORE_RUBY_OVERWORLD_PLACED = ORE_PLATINUM_OVERWORLD_CONFIGURED.withPlacement(
CountPlacementModifier.of(8), // number of veins per chunk
SquarePlacementModifier.of(),
HeightRangePlacementModifier.uniform(YOffset.getBottom(), YOffset.fixed(15))
);
public static void vpOres() {
Registry.register(BuiltinRegistries.CONFIGURED_FEATURE, new Identifier("vplus", "platinum_ore"), ORE_PLATINUM_OVERWORLD_CONFIGURED);
Registry.register(BuiltinRegistries.PLACED_FEATURE, new Identifier("vplus", "platinum_ore"), ORE_PLATINUM_OVERWORLD_PLACED);
BiomeModifications.addFeature(BiomeSelectors.foundInOverworld(), GenerationStep.Feature.UNDERGROUND_ORES, RegistryKey.of(Registry.PLACED_FEATURE_KEY, new Identifier("vplus", "platinum_ore")));
Registry.register(BuiltinRegistries.CONFIGURED_FEATURE, new Identifier("vplus", "ruby_ore"), ORE_RUBY_OVERWORLD_CONFIGURED);
Registry.register(BuiltinRegistries.PLACED_FEATURE, new Identifier("vplus", "ruby_ore"), ORE_RUBY_OVERWORLD_PLACED);
BiomeModifications.addFeature(BiomeSelectors.foundInOverworld(), GenerationStep.Feature.UNDERGROUND_ORES, RegistryKey.of(Registry.PLACED_FEATURE_KEY, new Identifier("vplus", "ruby_ore")));
}
}

View File

@ -5,7 +5,7 @@ import net.minecraft.item.ToolMaterial;
import tech.nevets.vplus.items.VPItemGroups;
public class AxeBase extends AxeItem {
public AxeBase(ToolMaterial toolMaterial_1) {
super(toolMaterial_1, 5, -3.0f, new Settings().group(VPItemGroups.TOOLS));
public AxeBase(ToolMaterial toolMaterial) {
super(toolMaterial, 5, -3.0f, new Settings().group(VPItemGroups.TOOLS));
}
}

View File

@ -5,7 +5,7 @@ import net.minecraft.item.ToolMaterial;
import tech.nevets.vplus.items.VPItemGroups;
public class HoeBase extends HoeItem {
public HoeBase(ToolMaterial toolMaterial_1) {
super(toolMaterial_1, -3, 0f, new Settings().group(VPItemGroups.TOOLS));
public HoeBase(ToolMaterial toolMaterial) {
super(toolMaterial, -3, 0f, new Settings().group(VPItemGroups.TOOLS));
}
}

View File

@ -5,7 +5,7 @@ import net.minecraft.item.ToolMaterial;
import tech.nevets.vplus.items.VPItemGroups;
public class PickaxeBase extends PickaxeItem {
public PickaxeBase(ToolMaterial toolMaterial_1) {
super(toolMaterial_1, 1, -2.8f, new Settings().group(VPItemGroups.TOOLS));
public PickaxeBase(ToolMaterial toolMaterial) {
super(toolMaterial, 1, -2.8f, new Settings().group(VPItemGroups.TOOLS));
}
}

View File

@ -5,7 +5,7 @@ import net.minecraft.item.ToolMaterial;
import tech.nevets.vplus.items.VPItemGroups;
public class ShovelBase extends ShovelItem {
public ShovelBase(ToolMaterial toolMaterial_1) {
super(toolMaterial_1, 1, -3f, new Settings().group(VPItemGroups.TOOLS));
public ShovelBase(ToolMaterial toolMaterial) {
super(toolMaterial, 1, -3f, new Settings().group(VPItemGroups.TOOLS));
}
}

View File

@ -5,7 +5,7 @@ import net.minecraft.item.ToolMaterial;
import tech.nevets.vplus.items.VPItemGroups;
public class SwordBase extends SwordItem {
public SwordBase(ToolMaterial toolMaterial_1) {
super(toolMaterial_1, 2, -2.4f, new Settings().group(VPItemGroups.COMBAT));
public SwordBase(ToolMaterial toolMaterial) {
super(toolMaterial, 2, -2.4f, new Settings().group(VPItemGroups.COMBAT));
}
}

View File

@ -1,7 +1,6 @@
package tech.nevets.vplus.tools;
import java.util.function.Supplier;
import net.minecraft.item.ItemConvertible;
import net.minecraft.item.Items;
import net.minecraft.item.ToolMaterial;
import net.minecraft.recipe.Ingredient;
@ -9,18 +8,10 @@ import net.minecraft.util.Lazy;
import tech.nevets.vplus.items.VPItems;
public enum ToolMaterials implements ToolMaterial {
COPPER (2, 200, 5.0F, 3.0F, 20, () -> {
return Ingredient.ofItems(new ItemConvertible[]{Items.COPPER_INGOT});
}),
EMERALD(3, 750, 7.0F, 4.0F, 30, () -> {
return Ingredient.ofItems(new ItemConvertible[]{Items.EMERALD});
}),
PLATINUM(4, 3000, 10.0F, 6.0F, 40, () -> {
return Ingredient.ofItems(new ItemConvertible[]{VPItems.PLATINUMINGOT});
}),
RUBY(4, 5000, 12.0F, 10.0F, 100, () -> {
return Ingredient.ofItems(new ItemConvertible[]{VPItems.RUBY});
});
COPPER (2, 200, 5.0F, 3.0F, 20, () -> Ingredient.ofItems(Items.COPPER_INGOT)),
EMERALD(3, 750, 7.0F, 4.0F, 30, () -> Ingredient.ofItems(Items.EMERALD)),
PLATINUM(4, 3000, 10.0F, 6.0F, 40, () -> Ingredient.ofItems(VPItems.PLATINUMINGOT)),
RUBY(4, 5000, 12.0F, 10.0F, 100, () -> Ingredient.ofItems(VPItems.RUBY));
private final int miningLevel;
private final int itemDurability;
@ -28,7 +19,7 @@ public enum ToolMaterials implements ToolMaterial {
private final float attackDamage;
private final int enchantability;
private final Lazy<Ingredient> repairIngredient;
private ToolMaterials(int miningLevel, int itemDurability, float miningSpeed, float attackDamage, int enchantability, Supplier<Ingredient> repairIngredient) {
ToolMaterials(int miningLevel, int itemDurability, float miningSpeed, float attackDamage, int enchantability, Supplier<Ingredient> repairIngredient) {
this.miningLevel = miningLevel;
this.itemDurability = itemDurability;
this.miningSpeed = miningSpeed;

View File

@ -0,0 +1,10 @@
package tech.nevets.vplus.worldgen;
public class VPOreGen {
public VPOreGen() {
}
public static void generateOres() {
}
}

View File

@ -0,0 +1,28 @@
package tech.nevets.vplus.worldgen.features;
import net.minecraft.util.registry.RegistryEntry;
import net.minecraft.world.gen.feature.*;
import tech.nevets.vplus.VPBlocks;
import java.util.List;
public class VPOreConfiguredFeatures extends OreConfiguredFeatures {
public static final List<OreFeatureConfig.Target> SAPPHIRE_ORES;
public static final List<OreFeatureConfig.Target> RUBY_ORES;
public static final List<OreFeatureConfig.Target> JADE_ORES;
public static final RegistryEntry<ConfiguredFeature<OreFeatureConfig, ?>> ORE_SAPPHIRE;
public static final RegistryEntry<ConfiguredFeature<OreFeatureConfig, ?>> ORE_RUBY;
public static final RegistryEntry<ConfiguredFeature<OreFeatureConfig, ?>> ORE_JADE;
public VPOreConfiguredFeatures() {
}
static {
SAPPHIRE_ORES = List.of(OreFeatureConfig.createTarget(STONE_ORE_REPLACEABLES, VPBlocks.SAPPHIRE_ORE.getDefaultState()));
RUBY_ORES = List.of(OreFeatureConfig.createTarget(STONE_ORE_REPLACEABLES, VPBlocks.RUBY_ORE.getDefaultState()));
JADE_ORES = List.of(OreFeatureConfig.createTarget(STONE_ORE_REPLACEABLES, VPBlocks.RUBY_ORE.getDefaultState()));
ORE_SAPPHIRE = ConfiguredFeatures.register("ore_sapphire", Feature.ORE, new OreFeatureConfig(List.of(OreFeatureConfig.createTarget(STONE_ORE_REPLACEABLES, VPBlocks.SAPPHIRE_ORE.getDefaultState())), 4));
ORE_RUBY = ConfiguredFeatures.register("ore_ruby", Feature.ORE, new OreFeatureConfig(List.of(OreFeatureConfig.createTarget(STONE_ORE_REPLACEABLES, VPBlocks.RUBY_ORE.getDefaultState())), 3));
ORE_JADE = ConfiguredFeatures.register("ore_jade", Feature.ORE, new OreFeatureConfig(List.of(OreFeatureConfig.createTarget(STONE_ORE_REPLACEABLES, VPBlocks.JADE_ORE.getDefaultState())), 2));
}
}

View File

@ -0,0 +1,37 @@
package tech.nevets.vplus.worldgen.features;
import net.minecraft.util.registry.RegistryEntry;
import net.minecraft.world.gen.YOffset;
import net.minecraft.world.gen.feature.OrePlacedFeatures;
import net.minecraft.world.gen.feature.PlacedFeature;
import net.minecraft.world.gen.feature.PlacedFeatures;
import net.minecraft.world.gen.placementmodifier.*;
import java.util.List;
public class VPPlacedFeatures extends OrePlacedFeatures {
public static final RegistryEntry<PlacedFeature> ORE_SAPPHIRE;
public static final RegistryEntry<PlacedFeature> ORE_RUBY;
public static final RegistryEntry<PlacedFeature> ORE_JADE;
public VPPlacedFeatures() {
}
private static List<PlacementModifier> modifiers(PlacementModifier countModifier, PlacementModifier heightModifier) {
return List.of(countModifier, SquarePlacementModifier.of(), heightModifier, BiomePlacementModifier.of());
}
private static List<PlacementModifier> modifiersWithCount(int count, PlacementModifier heightModifier) {
return modifiers(CountPlacementModifier.of(count), heightModifier);
}
private static List<PlacementModifier> modifiersWithRarity(int chance, PlacementModifier heightModifier) {
return modifiers(RarityFilterPlacementModifier.of(chance), heightModifier);
}
static {
ORE_SAPPHIRE = PlacedFeatures.register("ore_sapphire", VPOreConfiguredFeatures.ORE_SAPPHIRE, modifiersWithCount(4, HeightRangePlacementModifier.trapezoid(YOffset.fixed(0), YOffset.fixed(24))));
ORE_RUBY = PlacedFeatures.register("ore_ruby", VPOreConfiguredFeatures.ORE_RUBY, modifiersWithCount(3, HeightRangePlacementModifier.uniform(YOffset.fixed(-12), YOffset.fixed(0))));
ORE_JADE = PlacedFeatures.register("ore_jade", VPOreConfiguredFeatures.ORE_SAPPHIRE, modifiersWithCount(2, HeightRangePlacementModifier.trapezoid(YOffset.fixed(-24), YOffset.fixed(-12))));
}
}

View File

@ -37,9 +37,9 @@
],
"depends": {
"fabricloader": ">=0.12.9",
"fabricloader": ">=0.14.6",
"fabric": "*",
"minecraft": "1.18.x",
"minecraft": "~1.19",
"java": ">=17"
},
"suggests": {

View File

@ -0,0 +1,2 @@
accessWidener v1 named
accessible method net/minecraft/world/gen/densityfunction/DensityFunctions createSurfaceNoiseRouter (Lnet/minecraft/util/registry/Registry;boolean;boolean;)Lnet/minecraft/world/gen/noise/NoiseRouter;