first 1.20.4 version
This commit is contained in:
parent
21dc27d6f8
commit
12770732b7
@ -4,17 +4,17 @@
|
||||
|
||||
# Fabric Properties
|
||||
# check these on https://fabricmc.net/develop
|
||||
minecraft_version=1.20.3
|
||||
yarn_mappings=1.20.3+build.1
|
||||
loader_version=0.15.0
|
||||
minecraft_version=1.20.4
|
||||
yarn_mappings=1.20.4+build.1
|
||||
loader_version=0.15.1
|
||||
|
||||
# Mod Properties
|
||||
mod_version = 1.20.3.5
|
||||
mod_version = 1.20.4.0
|
||||
maven_group = de.jottyfan.minecraft
|
||||
archives_base_name = quickiefabric
|
||||
|
||||
# Dependencies
|
||||
fabric_version=0.91.1+1.20.3
|
||||
fabric_version=0.91.2+1.20.4
|
||||
|
||||
# for ExtendedLeavesBlock
|
||||
terraform_wood_api_version=9.0.0-alpha.3
|
||||
|
@ -12,17 +12,22 @@ import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.block.CropBlock;
|
||||
import net.minecraft.block.IceBlock;
|
||||
import net.minecraft.block.ShapeContext;
|
||||
import net.minecraft.entity.player.PlayerEntity;
|
||||
import net.minecraft.fluid.FluidState;
|
||||
import net.minecraft.fluid.Fluids;
|
||||
import net.minecraft.item.ItemConvertible;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.loot.context.LootContextParameterSet.Builder;
|
||||
import net.minecraft.server.world.ServerWorld;
|
||||
import net.minecraft.util.ActionResult;
|
||||
import net.minecraft.util.Hand;
|
||||
import net.minecraft.util.ItemScatterer;
|
||||
import net.minecraft.util.collection.DefaultedList;
|
||||
import net.minecraft.util.hit.BlockHitResult;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.random.Random;
|
||||
import net.minecraft.util.shape.VoxelShape;
|
||||
import net.minecraft.world.BlockView;
|
||||
import net.minecraft.world.World;
|
||||
@ -56,7 +61,8 @@ public class BlockSulforpad extends CropBlock {
|
||||
|
||||
@Override
|
||||
protected boolean canPlantOnTop(BlockState floor, BlockView world, BlockPos pos) {
|
||||
return floor.getBlock().equals(Blocks.LAVA) || floor.getBlock().equals(Blocks.LAVA_CAULDRON);
|
||||
Boolean lavaBase = floor.getBlock().equals(Blocks.LAVA) || floor.getBlock().equals(Blocks.LAVA_CAULDRON);
|
||||
return lavaBase && world.getBlockState(pos.up()).isAir();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -61,4 +61,5 @@ public class FeaturesManager {
|
||||
bmc.getGenerationSettings().addFeature(GenerationStep.Feature.UNDERGROUND_ORES, PF_BLOCKSULPHOR);
|
||||
};
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1,5 +1,7 @@
|
||||
package de.jottyfan.minecraft.quickiefabric.init;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.logging.log4j.LogManager;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
|
||||
@ -22,6 +24,8 @@ import de.jottyfan.minecraft.quickiefabric.event.EventBlockBreak;
|
||||
import de.jottyfan.minecraft.quickiefabric.items.QuickieItems;
|
||||
import de.jottyfan.minecraft.quickiefabric.loot.LootHelper;
|
||||
import de.jottyfan.minecraft.quickiefabric.tools.QuickieTools;
|
||||
import de.jottyfan.minecraft.quickiefabric.world.gen.feature.SulforpadFeature;
|
||||
import de.jottyfan.minecraft.quickiefabric.world.gen.feature.SulforpadFeatureConfig;
|
||||
import net.fabricmc.fabric.api.biome.v1.BiomeModifications;
|
||||
import net.fabricmc.fabric.api.biome.v1.BiomeSelectors;
|
||||
import net.fabricmc.fabric.api.biome.v1.ModificationPhase;
|
||||
@ -40,15 +44,22 @@ import net.minecraft.item.BlockItem;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemGroup;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.registry.BuiltinRegistries;
|
||||
import net.minecraft.registry.Registries;
|
||||
import net.minecraft.registry.Registry;
|
||||
import net.minecraft.registry.RegistryKey;
|
||||
import net.minecraft.registry.RegistryKeys;
|
||||
import net.minecraft.registry.entry.RegistryEntry;
|
||||
import net.minecraft.registry.tag.TagKey;
|
||||
import net.minecraft.screen.ScreenHandlerType;
|
||||
import net.minecraft.text.Text;
|
||||
import net.minecraft.util.ActionResult;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.world.gen.GenerationStep;
|
||||
import net.minecraft.world.gen.feature.ConfiguredFeature;
|
||||
import net.minecraft.world.gen.feature.Feature;
|
||||
import net.minecraft.world.gen.feature.PlacedFeature;
|
||||
import net.minecraft.world.gen.placementmodifier.SquarePlacementModifier;
|
||||
|
||||
/**
|
||||
*
|
||||
@ -300,6 +311,19 @@ public class RegistryManager {
|
||||
// Nether features
|
||||
BiomeModifications.create(new Identifier(QUICKIEFABRIC, "nether_features")).add(ModificationPhase.ADDITIONS,
|
||||
BiomeSelectors.foundInTheNether(), FeaturesManager.netherOres());
|
||||
|
||||
// Sulforpad feature
|
||||
Identifier SULFORPAD_FEATURE_ID = new Identifier(QUICKIEFABRIC, "sulforpad_feature");
|
||||
Feature<SulforpadFeatureConfig> SULFORPAD_FEATURE = new SulforpadFeature(SulforpadFeatureConfig.CODEC);
|
||||
ConfiguredFeature<SulforpadFeatureConfig, SulforpadFeature> SULFORPAD_FEATURE_CONFIGURED = new ConfiguredFeature<>(
|
||||
(SulforpadFeature) SULFORPAD_FEATURE,
|
||||
new SulforpadFeatureConfig(new Identifier(QUICKIEFABRIC, "sulforpad")));
|
||||
PlacedFeature SULFORPAD_FEATURE_PLACED = new PlacedFeature(RegistryEntry.of(SULFORPAD_FEATURE_CONFIGURED), List.of(SquarePlacementModifier.of()));
|
||||
// Registries.register(RegistryKeys.FEATURE, SULFORPAD_FEATURE_ID, SULFORPAD_FEATURE);
|
||||
// Registries.register(RegistryKeys.CONFIGURED_FEATURE, SULFORPAD_FEATURE_ID, SULFORPAD_FEATURE_CONFIGURED);
|
||||
// Registries.register(RegistryKeys.PLACED_FEATURE, SULFORPAD_FEATURE_ID, SULFORPAD_FEATURE_PLACED);
|
||||
// BiomeModifications.addFeature(BiomeSelectors.foundInTheNether(),GenerationStep.Feature.VEGETAL_DECORATION,
|
||||
// RegistryKey.of(RegistryKeys.PLACED_FEATURE, SULFORPAD_FEATURE_ID));
|
||||
}
|
||||
|
||||
public static final void registerLootings() {
|
||||
|
@ -0,0 +1,42 @@
|
||||
package de.jottyfan.minecraft.quickiefabric.world.gen.feature;
|
||||
|
||||
import com.mojang.serialization.Codec;
|
||||
|
||||
import de.jottyfan.minecraft.quickiefabric.blocks.QuickieBlocks;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.StructureWorldAccess;
|
||||
import net.minecraft.world.gen.feature.Feature;
|
||||
import net.minecraft.world.gen.feature.util.FeatureContext;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author jotty
|
||||
*
|
||||
*/
|
||||
public class SulforpadFeature extends Feature<SulforpadFeatureConfig> {
|
||||
|
||||
public SulforpadFeature(Codec<SulforpadFeatureConfig> configCodec) {
|
||||
super(configCodec);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean generate(FeatureContext<SulforpadFeatureConfig> context) {
|
||||
StructureWorldAccess world = context.getWorld();
|
||||
BlockPos pos = context.getOrigin();
|
||||
BlockState blockState = QuickieBlocks.SULFORPAD.getDefaultState();
|
||||
BlockPos currentPos = new BlockPos(pos);
|
||||
for (int y = 0; y < world.getHeight(); y++) {
|
||||
currentPos = currentPos.up();
|
||||
if (world.getBlockState(currentPos).isOf(Blocks.LAVA)) {
|
||||
if (world.getBlockState(currentPos.up()).isAir()) {
|
||||
world.setBlockState(currentPos.up(), blockState, 0x10);
|
||||
currentPos = currentPos.up();
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
@ -0,0 +1,19 @@
|
||||
package de.jottyfan.minecraft.quickiefabric.world.gen.feature;
|
||||
|
||||
import com.mojang.serialization.Codec;
|
||||
import com.mojang.serialization.codecs.RecordCodecBuilder;
|
||||
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.world.gen.feature.FeatureConfig;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author jotty
|
||||
*
|
||||
*/
|
||||
public record SulforpadFeatureConfig(Identifier blockId) implements FeatureConfig {
|
||||
public static Codec<SulforpadFeatureConfig> CODEC = RecordCodecBuilder
|
||||
.create(o -> o.group(Identifier.CODEC.fieldOf("blockID").forGetter(SulforpadFeatureConfig::blockId)).apply(o,
|
||||
SulforpadFeatureConfig::new));
|
||||
|
||||
}
|
@ -26,8 +26,8 @@
|
||||
"quickiefabric.mixins.json"
|
||||
],
|
||||
"depends": {
|
||||
"fabricloader": ">=0.15.0",
|
||||
"minecraft": "~1.20.3",
|
||||
"fabricloader": ">=0.15.1",
|
||||
"minecraft": "~1.20.4",
|
||||
"java": ">=17",
|
||||
"fabric-api": "*"
|
||||
},
|
||||
|
Loading…
x
Reference in New Issue
Block a user