Started the jumpt 1.18.2
This commit is contained in:
parent
bc6363fcd3
commit
b5aad99308
12 changed files with 103 additions and 132 deletions
48
build.gradle
48
build.gradle
|
@ -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
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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));
|
||||||
|
|
11
src/main/java/org/dimdev/dimdoors/client/config/ModMenu.java
Normal file
11
src/main/java/org/dimdev/dimdoors/client/config/ModMenu.java
Normal 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();
|
||||||
|
}
|
||||||
|
}
|
|
@ -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;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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();
|
||||||
}
|
}
|
||||||
|
|
|
@ -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) {
|
||||||
|
|
|
@ -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;
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
|
|
@ -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());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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) {
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -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;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue