Started the jumpt 1.18.2

This commit is contained in:
Waterpicker 2022-03-14 05:31:16 -05:00
parent bc6363fcd3
commit b5aad99308
12 changed files with 103 additions and 132 deletions

View file

@ -39,6 +39,10 @@ repositories {
url = "https://ladysnake.jfrog.io/artifactory/mods" url = "https://ladysnake.jfrog.io/artifactory/mods"
} }
maven {
url = "https://ladysnake.jfrog.io/ui/native/mods"
}
maven { maven {
url = "https://maven.shedaniel.me/" url = "https://maven.shedaniel.me/"
} }
@ -103,47 +107,33 @@ loom {
} }
dependencies { dependencies {
minecraft "com.mojang:minecraft:1.18.1" minecraft "com.mojang:minecraft:1.18.2"
mappings "net.fabricmc:yarn:1.18.1+build.18:v2" mappings "net.fabricmc:yarn:1.18.2+build.2:v2"
modImplementation "net.fabricmc:fabric-loader:0.12.12" modImplementation "net.fabricmc:fabric-loader:0.13.3"
modImplementation "net.fabricmc.fabric-api:fabric-api:0.46.0+1.18" modImplementation "net.fabricmc.fabric-api:fabric-api:0.48.0+1.18.2"
includeCompile("com.flowpowered", "flow-math", "1.0.3") includeCompile("com.flowpowered", "flow-math", "1.0.3")
includeCompile("org.jgrapht", "jgrapht-core", "1.1.0") includeCompile("org.jgrapht", "jgrapht-core", "1.1.0")
includeCompile("com.github.DimensionalDevelopment", "poly2tri.java", "0.1.1") includeCompile("com.github.DimensionalDevelopment", "poly2tri.java", "0.1.1")
includeCompile("com.github.DimensionalDevelopment", "Matrix", "1.0.0") includeCompile("com.github.DimensionalDevelopment", "Matrix", "1.0.0")
includeCompile("me.shedaniel.cloth", "cloth-config-fabric", "6.1.48") includeCompile("me.shedaniel.cloth", "cloth-config-fabric", "6.2.57")
includeCompile("io.github.onyxstudios.Cardinal-Components-API", "cardinal-components-base", "4.0.1")
includeCompile("io.github.onyxstudios.Cardinal-Components-API", "cardinal-components-item", "4.0.1")
includeCompile("io.github.onyxstudios.Cardinal-Components-API", "cardinal-components-entity", "4.0.1")
includeCompile("io.github.onyxstudios.Cardinal-Components-API", "cardinal-components-level", "4.0.1")
includeCompile("io.github.onyxstudios.Cardinal-Components-API", "cardinal-components-world", "4.0.1")
includeCompile("io.github.onyxstudios.Cardinal-Components-API", "cardinal-components-chunk", "4.0.1")
modCompileOnly("com.terraformersmc:modmenu:3.0.1") { includeCompile("curse.maven", "cardinal_base-318449", "${project.cardinal_components_base}")
includeCompile("curse.maven", "cardinal_item-318449", "${project.cardinal_components_item}")
includeCompile("curse.maven", "cardinal_entity-318449", "${project.cardinal_components_entity}")
includeCompile("curse.maven", "cardinal_level-318449", "${project.cardinal_components_level}")
includeCompile("curse.maven", "cardinal_world-318449", "${project.cardinal_components_world}")
includeCompile("curse.maven", "cardinal_chunk-318449", "${project.cardinal_components_chunk}")
modCompileOnly("com.terraformersmc:modmenu:3.1.0") {
exclude module: "fabric-api" exclude module: "fabric-api"
} }
// modRuntimeOnly("com.terraformersmc:modmenu:3.0.1") {
// exclude module: "fabric-api"
// }
modCompileOnly("mcp.mobius.waila:wthit:fabric-4.4.1") { modCompileOnly("mcp.mobius.waila:wthit:fabric-4.7.3") {
exclude module: "modmenu" exclude module: "modmenu"
exclude module: "fabric-api" exclude module: "fabric-api"
} }
// modRuntimeOnly("mcp.mobius.waila:wthit:fabric-4.4.1") {
// exclude module: "modmenu"
// exclude module: "fabric-api"
// }
// modCompileOnly("me.shedaniel.cloth.api:cloth-datagen-api-v1:3.0.55") {
// exclude module: "fabric-api"
// }
// modRuntimeOnly("me.shedaniel.cloth.api:cloth-datagen-api-v1:3.0.55") {
// exclude module: "fabric-api"
// }
modCompileOnly "curse.maven:worldedit-225608:3559499"
// modRuntimeOnly "curse.maven:worldedit-225608:3559499"
// modImplementation "software.bernie.geckolib:geckolib-fabric-1.17:3.0.13:dev" modCompileOnly "curse.maven:worldedit-225608:3559499"
datagenImplementation sourceSets.main.output datagenImplementation sourceSets.main.output
datagenImplementation sourceSets.main.compileClasspath datagenImplementation sourceSets.main.compileClasspath

View file

@ -1,3 +1,10 @@
mod_version=4.0.0+beta.4 mod_version=4.0.0+beta.4
org.gradle.jvmargs=-Xmx2048m org.gradle.jvmargs=-Xmx2048m
cardinal_components_base=3669770
cardinal_components_item=3669774
cardinal_components_entity=3669773
cardinal_components_level=3669775
cardinal_components_world=3669777
cardinal_components_chunk=3669772

View file

@ -4,24 +4,16 @@ import net.minecraft.block.Block;
import net.minecraft.block.BlockEntityProvider; import net.minecraft.block.BlockEntityProvider;
import net.minecraft.block.BlockState; import net.minecraft.block.BlockState;
import net.minecraft.block.Material; import net.minecraft.block.Material;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.item.ItemPlacementContext; import net.minecraft.item.ItemPlacementContext;
import net.minecraft.item.ItemStack; import net.minecraft.tag.TagKey;
import net.minecraft.item.ItemUsageContext;
import net.minecraft.tag.Tag;
import net.minecraft.util.ActionResult;
import net.minecraft.util.DyeColor; import net.minecraft.util.DyeColor;
import net.minecraft.util.Hand;
import net.minecraft.util.Identifier; import net.minecraft.util.Identifier;
import net.minecraft.util.hit.BlockHitResult; import net.minecraft.util.registry.Registry;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings; import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
import net.fabricmc.fabric.api.tag.TagRegistry;
public class FabricBlock extends Block { public class FabricBlock extends Block {
public static final Tag<Block> BLOCK_TAG = TagRegistry.block(new Identifier("dimdoors", "fabric")); public static final TagKey<Block> BLOCK_TAG = TagKey.of(Registry.BLOCK_KEY, new Identifier("dimdoors", "fabric"));
FabricBlock(DyeColor color) { FabricBlock(DyeColor color) {
super(FabricBlockSettings.of(Material.STONE, color).strength(1.2F).luminance(15)); super(FabricBlockSettings.of(Material.STONE, color).strength(1.2F).luminance(15));

View file

@ -0,0 +1,11 @@
package org.dimdev.dimdoors.client.config;
import me.shedaniel.autoconfig.AutoConfig;
import net.minecraft.client.gui.screen.Screen;
import org.dimdev.dimdoors.ModConfig;
public class ModMenu {
public static Screen getConfigScreen(Screen previous) {
return AutoConfig.getConfigScreen(ModConfig.class, previous).get();
}
}

View file

@ -12,6 +12,6 @@ import net.fabricmc.api.Environment;
public class ModMenuImpl implements ModMenuApi { public class ModMenuImpl implements ModMenuApi {
@Override @Override
public ConfigScreenFactory<?> getModConfigScreenFactory() { public ConfigScreenFactory<?> getModConfigScreenFactory() {
return screen -> AutoConfig.getConfigScreen(ModConfig.class, screen).get(); return ModMenu::getConfigScreen;
} }
} }

View file

@ -7,6 +7,6 @@ import net.minecraft.world.gen.chunk.ChunkGenerator;
@Mixin(ChunkGenerator.class) @Mixin(ChunkGenerator.class)
public interface ChunkGeneratorAccessor { public interface ChunkGeneratorAccessor {
@Accessor @Accessor("field_37261")
long getWorldSeed(); long getWorldSeed();
} }

View file

@ -3,13 +3,13 @@ package org.dimdev.dimdoors.mixin.accessor;
import java.nio.file.Path; import java.nio.file.Path;
import com.google.gson.JsonObject; import com.google.gson.JsonObject;
import net.minecraft.data.server.RecipeProvider;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.gen.Invoker; import org.spongepowered.asm.mixin.gen.Invoker;
import net.minecraft.data.DataCache; import net.minecraft.data.DataCache;
import net.minecraft.data.server.RecipesProvider;
@Mixin(RecipesProvider.class) @Mixin(RecipeProvider.class)
public interface RecipesProviderAccessor { public interface RecipesProviderAccessor {
@Invoker @Invoker
static void callSaveRecipe(DataCache cache, JsonObject json, Path path) { static void callSaveRecipe(DataCache cache, JsonObject json, Path path) {

View file

@ -83,20 +83,21 @@ public abstract class WorldRendererMixin {
} }
} }
@ModifyConstant( // TODO:Fix or find out alternative.
method = "renderSky(Lnet/minecraft/client/util/math/MatrixStack;Lnet/minecraft/util/math/Matrix4f;FLjava/lang/Runnable;)V", // @ModifyConstant(
constant = @Constant(doubleValue = 0.0, ordinal = 0), // method = "renderSky(Lnet/minecraft/client/util/math/MatrixStack;Lnet/minecraft/util/math/Matrix4f;FLjava/lang/Runnable;)V",
slice = @Slice( // constant = @Constant(doubleValue = 0.0, ordinal = 0),
from = @At( // slice = @Slice(
value = "INVOKE", // from = @At(
target = "Lnet/minecraft/client/world/ClientWorld$Properties;getSkyDarknessHeight(Lnet/minecraft/world/HeightLimitView;)D" // value = "INVOKE",
) // target = "Lnet/minecraft/client/world/ClientWorld$Properties;getSkyDarknessHeight(Lnet/minecraft/world/HeightLimitView;)D"
) // )
) // )
private double modifyVoidBackgroundCondition(double zero) { // )
if(ModDimensions.isPrivatePocketDimension(world)) { // private double modifyVoidBackgroundCondition(double zero) {
zero = Double.NEGATIVE_INFINITY; // if(ModDimensions.isPrivatePocketDimension(world)) {
} // zero = Double.NEGATIVE_INFINITY;
return zero; // }
} // return zero;
// }
} }

View file

@ -1,6 +1,9 @@
package org.dimdev.dimdoors.world.feature; package org.dimdev.dimdoors.world.feature;
import com.google.common.collect.ImmutableSet; import net.minecraft.block.Block;
import net.minecraft.util.registry.RegistryEntry;
import net.minecraft.util.registry.RegistryEntryList;
import net.minecraft.world.gen.placementmodifier.*;
import org.dimdev.dimdoors.DimensionalDoorsInitializer; import org.dimdev.dimdoors.DimensionalDoorsInitializer;
import org.dimdev.dimdoors.block.ModBlocks; import org.dimdev.dimdoors.block.ModBlocks;
import org.dimdev.dimdoors.world.feature.gateway.LimboGatewayFeature; import org.dimdev.dimdoors.world.feature.gateway.LimboGatewayFeature;
@ -19,11 +22,6 @@ import net.minecraft.world.biome.Biome;
import net.minecraft.world.biome.Biome.Category; import net.minecraft.world.biome.Biome.Category;
import net.minecraft.world.gen.GenerationStep; import net.minecraft.world.gen.GenerationStep;
import net.minecraft.world.gen.YOffset; import net.minecraft.world.gen.YOffset;
import net.minecraft.world.gen.decorator.BiomePlacementModifier;
import net.minecraft.world.gen.decorator.CountPlacementModifier;
import net.minecraft.world.gen.decorator.HeightRangePlacementModifier;
import net.minecraft.world.gen.decorator.RarityFilterPlacementModifier;
import net.minecraft.world.gen.decorator.SquarePlacementModifier;
import net.minecraft.world.gen.feature.ConfiguredFeature; import net.minecraft.world.gen.feature.ConfiguredFeature;
import net.minecraft.world.gen.feature.ConfiguredFeatures; import net.minecraft.world.gen.feature.ConfiguredFeatures;
import net.minecraft.world.gen.feature.DefaultFeatureConfig; import net.minecraft.world.gen.feature.DefaultFeatureConfig;
@ -35,98 +33,59 @@ import net.minecraft.world.gen.feature.SpringFeatureConfig;
import net.fabricmc.fabric.api.biome.v1.BiomeModifications; import net.fabricmc.fabric.api.biome.v1.BiomeModifications;
import java.util.List;
import static net.minecraft.world.gen.feature.Feature.*;
public final class ModFeatures { public final class ModFeatures {
public static final Feature<SchematicGatewayFeatureConfig> SCHEMATIC_GATEWAY_FEATURE; public static final SchematicGateway SANDSTONE_PILLARS_GATEWAY = new SandstonePillarsGateway();
public static final Feature<DefaultFeatureConfig> LIMBO_GATEWAY_FEATURE;
public static final SchematicGateway SANDSTONE_PILLARS_GATEWAY;
public static final SchematicGateway TWO_PILLARS_GATEWAY = new TwoPillarsGateway(); public static final SchematicGateway TWO_PILLARS_GATEWAY = new TwoPillarsGateway();
public static final Feature<SchematicGatewayFeatureConfig> SCHEMATIC_GATEWAY_FEATURE = Registry.register(Registry.FEATURE, new Identifier("dimdoors", "schematic_gateway"), new SchematicGatewayFeature(SchematicGatewayFeatureConfig.CODEC));
public static final Feature<DefaultFeatureConfig> LIMBO_GATEWAY_FEATURE = Registry.register(Registry.FEATURE, new Identifier("dimdoors", "limbo_gateway"), new LimboGatewayFeature());
public static void init() { public static void init() {
SANDSTONE_PILLARS_GATEWAY.init(); SANDSTONE_PILLARS_GATEWAY.init();
TWO_PILLARS_GATEWAY.init(); TWO_PILLARS_GATEWAY.init();
Registry.register(Registry.FEATURE, new Identifier("dimdoors", "schematic_gateway"), SCHEMATIC_GATEWAY_FEATURE); ;
Configured.init(); Configured.init();
Placed.init(); Placed.init();
} }
static {
SCHEMATIC_GATEWAY_FEATURE = new SchematicGatewayFeature(SchematicGatewayFeatureConfig.CODEC);
SANDSTONE_PILLARS_GATEWAY = new SandstonePillarsGateway();
LIMBO_GATEWAY_FEATURE = Registry.register(Registry.FEATURE, new Identifier("dimdoors", "limbo_gateway"), new LimboGatewayFeature());
}
public static final class Configured { public static final class Configured {
public static final ConfiguredFeature<?, ?> SANDSTONE_PILLARS_CONFIGURED_FEATURE; public static final RegistryEntry<ConfiguredFeature<SchematicGatewayFeatureConfig, ?>> SANDSTONE_PILLARS_CONFIGURED_FEATURE = ConfiguredFeatures.register("dimdoors:sandstone_pillars", SCHEMATIC_GATEWAY_FEATURE, new SchematicGatewayFeatureConfig(SchematicGateway.ID_SCHEMATIC_MAP.inverse().get(SANDSTONE_PILLARS_GATEWAY)));
public static final ConfiguredFeature<?, ?> TWO_PILLARS_CONFIGURED_FEATURE; public static final RegistryEntry<ConfiguredFeature<SchematicGatewayFeatureConfig, ?>> TWO_PILLARS_CONFIGURED_FEATURE = ConfiguredFeatures.register("dimdoors:two_pillars", SCHEMATIC_GATEWAY_FEATURE, new SchematicGatewayFeatureConfig(SchematicGateway.ID_SCHEMATIC_MAP.inverse().get(TWO_PILLARS_GATEWAY)));
public static final ConfiguredFeature<?, ?> LIMBO_GATEWAY_CONFIGURED_FEATURE; public static final RegistryEntry<ConfiguredFeature<DefaultFeatureConfig, ?>> LIMBO_GATEWAY_CONFIGURED_FEATURE = ConfiguredFeatures.register("dimdoors:limbo_gateway", LIMBO_GATEWAY_FEATURE, DefaultFeatureConfig.INSTANCE);
public static final ConfiguredFeature<?, ?> SOLID_STATIC_ORE_CONFIGURED_FEATURE; public static final RegistryEntry<ConfiguredFeature<SpringFeatureConfig, ?>> SOLID_STATIC_ORE_CONFIGURED_FEATURE = ConfiguredFeatures.register("dimdoors:eternal_fluid_spring", SPRING_FEATURE, new SpringFeatureConfig(Fluids.WATER.getDefaultState(), true, 4, 1, RegistryEntryList.of(Block::getRegistryEntry, ModBlocks.UNRAVELLED_FABRIC, ModBlocks.UNRAVELLED_BLOCK, ModBlocks.UNFOLDED_BLOCK, ModBlocks.UNWARPED_BLOCK)));
public static final ConfiguredFeature<?, ?> DECAYED_BLOCK_ORE_CONFIGURED_FEATURE; public static final RegistryEntry<ConfiguredFeature<OreFeatureConfig, ?>> DECAYED_BLOCK_ORE_CONFIGURED_FEATURE = ConfiguredFeatures.register("dimdoors:solid_static_ore", ORE, new OreFeatureConfig(new BlockMatchRuleTest(ModBlocks.UNRAVELLED_FABRIC), ModBlocks.SOLID_STATIC.getDefaultState(), 4));
public static final ConfiguredFeature<?, ?> ETERNAL_FLUID_SPRING_CONFIGURED_FEATURE; public static final RegistryEntry<ConfiguredFeature<OreFeatureConfig, ?>> ETERNAL_FLUID_SPRING_CONFIGURED_FEATURE = ConfiguredFeatures.register("dimdoors:decayed_block_ore", ORE, new OreFeatureConfig(new BlockMatchRuleTest(ModBlocks.UNRAVELLED_FABRIC), ModBlocks.DECAYED_BLOCK.getDefaultState(), 64));
public static final RegistryKey<ConfiguredFeature<?, ?>> SANDSTONE_PILLARS_CONFIGURED_FEATURE_KEY;
public static final RegistryKey<ConfiguredFeature<?, ?>> TWO_PILLARS_CONFIGURED_FEATURE_KEY;
public static void init() { public static void init() {}
ConfiguredFeatures.register(Configured.SANDSTONE_PILLARS_CONFIGURED_FEATURE_KEY.getValue().toString(), Configured.SANDSTONE_PILLARS_CONFIGURED_FEATURE);
ConfiguredFeatures.register(Configured.TWO_PILLARS_CONFIGURED_FEATURE_KEY.getValue().toString(), Configured.TWO_PILLARS_CONFIGURED_FEATURE);
ConfiguredFeatures.register("dimdoors:eternal_fluid_spring", Configured.ETERNAL_FLUID_SPRING_CONFIGURED_FEATURE);
ConfiguredFeatures.register("dimdoors:solid_static_ore", Configured.SOLID_STATIC_ORE_CONFIGURED_FEATURE);
ConfiguredFeatures.register("dimdoors:decayed_block_ore", Configured.DECAYED_BLOCK_ORE_CONFIGURED_FEATURE);
}
static {
SANDSTONE_PILLARS_CONFIGURED_FEATURE_KEY = RegistryKey.of(Registry.CONFIGURED_FEATURE_KEY, new Identifier("dimdoors", "sandstone_pillars"));
TWO_PILLARS_CONFIGURED_FEATURE_KEY = RegistryKey.of(Registry.CONFIGURED_FEATURE_KEY, new Identifier("dimdoors", "two_pillars"));
SANDSTONE_PILLARS_CONFIGURED_FEATURE = SCHEMATIC_GATEWAY_FEATURE.configure(new SchematicGatewayFeatureConfig(SchematicGateway.ID_SCHEMATIC_MAP.inverse().get(SANDSTONE_PILLARS_GATEWAY)));
TWO_PILLARS_CONFIGURED_FEATURE = SCHEMATIC_GATEWAY_FEATURE.configure(new SchematicGatewayFeatureConfig(SchematicGateway.ID_SCHEMATIC_MAP.inverse().get(TWO_PILLARS_GATEWAY)));
LIMBO_GATEWAY_CONFIGURED_FEATURE = LIMBO_GATEWAY_FEATURE.configure(DefaultFeatureConfig.INSTANCE);
SOLID_STATIC_ORE_CONFIGURED_FEATURE = Feature.ORE.configure(new OreFeatureConfig(new BlockMatchRuleTest(ModBlocks.UNRAVELLED_FABRIC), ModBlocks.SOLID_STATIC.getDefaultState(), 4));
DECAYED_BLOCK_ORE_CONFIGURED_FEATURE = Feature.ORE.configure(new OreFeatureConfig(new BlockMatchRuleTest(ModBlocks.UNRAVELLED_FABRIC), ModBlocks.DECAYED_BLOCK.getDefaultState(), 64));
ETERNAL_FLUID_SPRING_CONFIGURED_FEATURE = Feature.SPRING_FEATURE.configure(new SpringFeatureConfig(Fluids.WATER.getDefaultState(), true, 4, 1, ImmutableSet.of(ModBlocks.UNRAVELLED_FABRIC, ModBlocks.UNRAVELLED_BLOCK, ModBlocks.UNFOLDED_BLOCK, ModBlocks.UNWARPED_BLOCK)));
}
} }
public static class Placed { public static class Placed {
public static final PlacedFeature SANDSTONE_PILLARS_PLACED_FEATURE; public static final RegistryEntry<PlacedFeature> SANDSTONE_PILLARS_PLACED_FEATURE = PlacedFeatures.register("dimdoors:sandstone_pillars", Configured.SANDSTONE_PILLARS_CONFIGURED_FEATURE, List.of(RarityFilterPlacementModifier.of(DimensionalDoorsInitializer.getConfig().getWorldConfig().gatewayGenChance), SquarePlacementModifier.of(), PlacedFeatures.WORLD_SURFACE_WG_HEIGHTMAP, BiomePlacementModifier.of()));
public static final PlacedFeature TWO_PILLARS_PLACED_FEATURE; public static final RegistryEntry<PlacedFeature> TWO_PILLARS_PLACED_FEATURE = PlacedFeatures.register("dimdoors:two_pillars", Configured.SANDSTONE_PILLARS_CONFIGURED_FEATURE, List.of(RarityFilterPlacementModifier.of(DimensionalDoorsInitializer.getConfig().getWorldConfig().gatewayGenChance), SquarePlacementModifier.of(), PlacedFeatures.WORLD_SURFACE_WG_HEIGHTMAP, BiomePlacementModifier.of()));
public static final PlacedFeature LIMBO_GATEWAY_PLACED_FEATURE; public static final RegistryEntry<PlacedFeature> LIMBO_GATEWAY_PLACED_FEATURE = PlacedFeatures.register("dimdoors:limbo_gateway", Configured.LIMBO_GATEWAY_CONFIGURED_FEATURE, List.of(RarityFilterPlacementModifier.of(DimensionalDoorsInitializer.getConfig().getWorldConfig().gatewayGenChance), SquarePlacementModifier.of(), PlacedFeatures.MOTION_BLOCKING_HEIGHTMAP, BiomePlacementModifier.of()));
public static final PlacedFeature SOLID_STATIC_ORE_PLACED_FEATURE; public static final RegistryEntry<PlacedFeature> SOLID_STATIC_ORE_PLACED_FEATURE = PlacedFeatures.register("dimdoors:solid_static_ore", Configured.SOLID_STATIC_ORE_CONFIGURED_FEATURE, List.of(CountPlacementModifier.of(3), HeightRangePlacementModifier.uniform(YOffset.getBottom(), YOffset.getTop()), SquarePlacementModifier.of(), BiomePlacementModifier.of()));
public static final PlacedFeature DECAYED_BLOCK_ORE_PLACED_FEATURE; public static final RegistryEntry<PlacedFeature> DECAYED_BLOCK_ORE_PLACED_FEATURE = PlacedFeatures.register("dimdoors:decayed_block_ore", Configured.DECAYED_BLOCK_ORE_CONFIGURED_FEATURE, List.of(CountPlacementModifier.of(4), HeightRangePlacementModifier.uniform(YOffset.fixed(0), YOffset.fixed(79)), SquarePlacementModifier.of(), BiomePlacementModifier.of()));
public static final PlacedFeature ETERNAL_FLUID_SPRING_PLACED_FEATURE; public static final RegistryEntry<PlacedFeature> ETERNAL_FLUID_SPRING_PLACED_FEATURE = PlacedFeatures.register("dimdoors:eternal_fluid_spring", Configured.ETERNAL_FLUID_SPRING_CONFIGURED_FEATURE, List.of(CountPlacementModifier.of(25), SquarePlacementModifier.of(), HeightRangePlacementModifier.uniform(YOffset.getBottom(), YOffset.fixed(192)), BiomePlacementModifier.of()));
public static final RegistryKey<PlacedFeature> SANDSTONE_PILLARS_PLACED_FEATURE_KEY = RegistryKey.of(Registry.PLACED_FEATURE_KEY, new Identifier("dimdoors", "sandstone_pillars"));
public static final RegistryKey<PlacedFeature> TWO_PILLARS_PLACED_FEATURE_KEY = RegistryKey.of(Registry.PLACED_FEATURE_KEY, new Identifier("dimdoors", "two_pillars"));
public static void init() { public static void init() {
BiomeModifications.addFeature(ctx -> { BiomeModifications.addFeature(ctx -> {
Biome biome = ctx.getBiome(); Biome biome = ctx.getBiome();
return biome.getCategory() != Category.NONE && return biome.getCategory() != Category.NONE &&
biome.getCategory() != Category.THEEND && biome.getCategory() != Category.THEEND &&
biome.getCategory() != Category.NETHER && biome.getCategory() != Category.NETHER;
biome.getCategory() != Category.OCEAN &&
biome.getCategory() != Category.MUSHROOM &&
biome.getCategory() != Category.DESERT;
}, },
GenerationStep.Feature.SURFACE_STRUCTURES, GenerationStep.Feature.SURFACE_STRUCTURES,
TWO_PILLARS_PLACED_FEATURE_KEY TWO_PILLARS_PLACED_FEATURE.getKey().get()
); );
BiomeModifications.addFeature( BiomeModifications.addFeature(
ctx -> ctx.getBiome().getCategory() == Category.DESERT, ctx -> ctx.getBiome().getCategory() == Category.DESERT,
GenerationStep.Feature.SURFACE_STRUCTURES, GenerationStep.Feature.SURFACE_STRUCTURES,
SANDSTONE_PILLARS_PLACED_FEATURE_KEY SANDSTONE_PILLARS_PLACED_FEATURE.getKey().get()
); );
PlacedFeatures.register(SANDSTONE_PILLARS_PLACED_FEATURE_KEY.getValue().toString(), SANDSTONE_PILLARS_PLACED_FEATURE);
PlacedFeatures.register(TWO_PILLARS_PLACED_FEATURE_KEY.getValue().toString(), TWO_PILLARS_PLACED_FEATURE);
PlacedFeatures.register("dimdoors:eternal_fluid_spring", ETERNAL_FLUID_SPRING_PLACED_FEATURE);
PlacedFeatures.register("dimdoors:solid_static_ore", SOLID_STATIC_ORE_PLACED_FEATURE);
PlacedFeatures.register("dimdoors:decayed_block_ore", DECAYED_BLOCK_ORE_PLACED_FEATURE);
}
static {
SANDSTONE_PILLARS_PLACED_FEATURE = Configured.SANDSTONE_PILLARS_CONFIGURED_FEATURE.withPlacement(RarityFilterPlacementModifier.of(DimensionalDoorsInitializer.getConfig().getWorldConfig().gatewayGenChance), SquarePlacementModifier.of(), PlacedFeatures.MOTION_BLOCKING_HEIGHTMAP, BiomePlacementModifier.of());
TWO_PILLARS_PLACED_FEATURE = Configured.SANDSTONE_PILLARS_CONFIGURED_FEATURE.withPlacement(RarityFilterPlacementModifier.of(DimensionalDoorsInitializer.getConfig().getWorldConfig().gatewayGenChance), SquarePlacementModifier.of(), PlacedFeatures.MOTION_BLOCKING_HEIGHTMAP, BiomePlacementModifier.of());
LIMBO_GATEWAY_PLACED_FEATURE = Configured.LIMBO_GATEWAY_CONFIGURED_FEATURE.withPlacement(RarityFilterPlacementModifier.of(DimensionalDoorsInitializer.getConfig().getWorldConfig().gatewayGenChance), SquarePlacementModifier.of(), PlacedFeatures.MOTION_BLOCKING_HEIGHTMAP, BiomePlacementModifier.of());
SOLID_STATIC_ORE_PLACED_FEATURE = Configured.SOLID_STATIC_ORE_CONFIGURED_FEATURE.withPlacement(CountPlacementModifier.of(3), HeightRangePlacementModifier.uniform(YOffset.getBottom(), YOffset.getTop()), SquarePlacementModifier.of(), BiomePlacementModifier.of());
DECAYED_BLOCK_ORE_PLACED_FEATURE = Configured.DECAYED_BLOCK_ORE_CONFIGURED_FEATURE.withPlacement(CountPlacementModifier.of(4), HeightRangePlacementModifier.uniform(YOffset.fixed(0), YOffset.fixed(79)), SquarePlacementModifier.of(), BiomePlacementModifier.of());
ETERNAL_FLUID_SPRING_PLACED_FEATURE = Configured.ETERNAL_FLUID_SPRING_CONFIGURED_FEATURE.withPlacement(CountPlacementModifier.of(25), SquarePlacementModifier.of(), HeightRangePlacementModifier.uniform(YOffset.getBottom(), YOffset.fixed(192)), BiomePlacementModifier.of());
} }
} }
} }

View file

@ -37,6 +37,7 @@ public class TwoPillarsGateway extends SchematicGateway {
@Override @Override
public boolean test(StructureWorldAccess structureWorldAccess, BlockPos blockPos) { public boolean test(StructureWorldAccess structureWorldAccess, BlockPos blockPos) {
System.out.println("Testing the door test test.");
return true; return true;
} }
} }

View file

@ -1,6 +1,7 @@
package org.dimdev.dimdoors.world.pocket; package org.dimdev.dimdoors.world.pocket;
import java.util.Collections; import java.util.Collections;
import java.util.List;
import java.util.Optional; import java.util.Optional;
import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletableFuture;
import java.util.concurrent.Executor; import java.util.concurrent.Executor;
@ -10,6 +11,7 @@ import com.mojang.serialization.codecs.RecordCodecBuilder;
import net.minecraft.block.BlockState; import net.minecraft.block.BlockState;
import net.minecraft.structure.StructureManager; import net.minecraft.structure.StructureManager;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.registry.DynamicRegistryManager; import net.minecraft.util.registry.DynamicRegistryManager;
import net.minecraft.world.BlockView; import net.minecraft.world.BlockView;
import net.minecraft.world.ChunkRegion; import net.minecraft.world.ChunkRegion;
@ -41,7 +43,7 @@ public class BlankChunkGenerator extends ChunkGenerator {
} }
private BlankChunkGenerator(BiomeSource biomeSource) { private BlankChunkGenerator(BiomeSource biomeSource) {
super(biomeSource, new StructuresConfig(Optional.empty(), Collections.emptyMap())); super(biomeSource, Optional.empty()));
} }
@Override @Override
@ -111,4 +113,9 @@ public class BlankChunkGenerator extends ChunkGenerator {
public VerticalBlockSample getColumnSample(int x, int z, HeightLimitView world) { public VerticalBlockSample getColumnSample(int x, int z, HeightLimitView world) {
return new VerticalBlockSample(0, new BlockState[0]); return new VerticalBlockSample(0, new BlockState[0]);
} }
@Override
public void getDebugHudText(List<String> text, BlockPos pos) {
}
} }

View file

@ -19,4 +19,7 @@ accessible field net/minecraft/state/State codec Lcom/mojang/seriali
# for lazy pocket gen/ getting all currently loaded chunks # for lazy pocket gen/ getting all currently loaded chunks
accessible method net/minecraft/server/world/ThreadedAnvilChunkStorage entryIterator ()Ljava/lang/Iterable; accessible method net/minecraft/server/world/ThreadedAnvilChunkStorage entryIterator ()Ljava/lang/Iterable;
accessible method net/minecraft/client/render/WorldRenderer renderEndSky (Lnet/minecraft/client/util/math/MatrixStack;)V accessible method net/minecraft/client/render/WorldRenderer renderEndSky (Lnet/minecraft/client/util/math/MatrixStack;)V
accessible method net/minecraft/world/biome/Biome getCategory ()Lnet/minecraft/world/biome/Biome$Category;