diff --git a/src/main/java/ru/betterend/interfaces/StructureFeaturesAccessor.java b/src/main/java/ru/betterend/interfaces/StructureFeaturesAccessor.java index 2813474b..ff2f3f84 100644 --- a/src/main/java/ru/betterend/interfaces/StructureFeaturesAccessor.java +++ b/src/main/java/ru/betterend/interfaces/StructureFeaturesAccessor.java @@ -5,5 +5,5 @@ import net.minecraft.world.level.levelgen.feature.StructureFeature; import net.minecraft.world.level.levelgen.feature.configurations.NoneFeatureConfiguration; public interface StructureFeaturesAccessor { - ConfiguredStructureFeature> getEND_CITY(); + ConfiguredStructureFeature> getEndCity(); } diff --git a/src/main/java/ru/betterend/mixin/common/StructureFeaturesMixin.java b/src/main/java/ru/betterend/mixin/common/StructureFeaturesMixin.java index c3126b2d..58712fd7 100644 --- a/src/main/java/ru/betterend/mixin/common/StructureFeaturesMixin.java +++ b/src/main/java/ru/betterend/mixin/common/StructureFeaturesMixin.java @@ -13,7 +13,7 @@ import ru.betterend.interfaces.StructureFeaturesAccessor; public class StructureFeaturesMixin implements StructureFeaturesAccessor { @Shadow @Final private static ConfiguredStructureFeature> END_CITY; - public ConfiguredStructureFeature> getEND_CITY(){ + public ConfiguredStructureFeature> getEndCity(){ return END_CITY; } } diff --git a/src/main/java/ru/betterend/world/biome/land/AmberLandBiome.java b/src/main/java/ru/betterend/world/biome/land/AmberLandBiome.java index cb250772..10ab2c0d 100644 --- a/src/main/java/ru/betterend/world/biome/land/AmberLandBiome.java +++ b/src/main/java/ru/betterend/world/biome/land/AmberLandBiome.java @@ -37,7 +37,7 @@ public class AmberLandBiome extends EndBiome.Config { .feature(EndFeatures.BULB_MOSS_WOOD) .feature(EndFeatures.CHARNIA_ORANGE) .feature(EndFeatures.CHARNIA_RED) - .structure(VANILLA_FEATURES.getEND_CITY()) + .structure(VANILLA_FEATURES.getEndCity()) .spawn(EntityType.ENDERMAN, 50, 1, 4) .spawn(EndEntities.END_SLIME, 30, 1, 2); } diff --git a/src/main/java/ru/betterend/world/biome/land/ChorusForestBiome.java b/src/main/java/ru/betterend/world/biome/land/ChorusForestBiome.java index c5fc3d83..e3f2c38a 100644 --- a/src/main/java/ru/betterend/world/biome/land/ChorusForestBiome.java +++ b/src/main/java/ru/betterend/world/biome/land/ChorusForestBiome.java @@ -40,7 +40,7 @@ public class ChorusForestBiome extends EndBiome.Config { .feature(EndFeatures.TAIL_MOSS_WOOD) .feature(EndFeatures.CHARNIA_PURPLE) .feature(EndFeatures.CHARNIA_RED_RARE) - .structure(VANILLA_FEATURES.getEND_CITY()) + .structure(VANILLA_FEATURES.getEndCity()) .spawn(EndEntities.END_SLIME, 5, 1, 2) .spawn(EntityType.ENDERMAN, 50, 1, 4); } diff --git a/src/main/java/ru/betterend/world/biome/land/DryShrublandBiome.java b/src/main/java/ru/betterend/world/biome/land/DryShrublandBiome.java index c81b67df..ced2823a 100644 --- a/src/main/java/ru/betterend/world/biome/land/DryShrublandBiome.java +++ b/src/main/java/ru/betterend/world/biome/land/DryShrublandBiome.java @@ -26,7 +26,7 @@ public class DryShrublandBiome extends EndBiome.Config { .feature(EndFeatures.AERIDIUM) .feature(EndFeatures.LUTEBUS) .feature(EndFeatures.LAMELLARIUM) - .structure(VANILLA_FEATURES.getEND_CITY()) + .structure(VANILLA_FEATURES.getEndCity()) .spawn(EntityType.ENDERMAN, 50, 1, 2); } diff --git a/src/main/java/ru/betterend/world/biome/land/DustWastelandsBiome.java b/src/main/java/ru/betterend/world/biome/land/DustWastelandsBiome.java index 1037f7be..85dfc4d2 100644 --- a/src/main/java/ru/betterend/world/biome/land/DustWastelandsBiome.java +++ b/src/main/java/ru/betterend/world/biome/land/DustWastelandsBiome.java @@ -2,8 +2,13 @@ package ru.betterend.world.biome.land; import net.minecraft.core.particles.ParticleTypes; import net.minecraft.world.entity.EntityType; +import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.levelgen.SurfaceRules; +import net.minecraft.world.level.levelgen.SurfaceRules.SurfaceRule; +import net.minecraft.world.level.levelgen.placement.CaveSurface; import ru.bclib.api.biomes.BCLBiomeBuilder; +import ru.bclib.api.surface.SurfaceRuleBuilder; import ru.bclib.interfaces.SurfaceMaterialProvider; import ru.betterend.registry.EndBlocks; import ru.betterend.registry.EndSounds; @@ -16,15 +21,16 @@ public class DustWastelandsBiome extends EndBiome.Config { @Override protected void addCustomBuildData(BCLBiomeBuilder builder) { - builder.fogColor(226, 239, 168) - .fogDensity(2) - .waterAndFogColor(192, 180, 131) - .terrainHeight(1.5F) - .particles(ParticleTypes.WHITE_ASH, 0.01F) - .loop(EndSounds.AMBIENT_DUST_WASTELANDS) - .music(EndSounds.MUSIC_OPENSPACE) - .structure(VANILLA_FEATURES.getEND_CITY()) - .spawn(EntityType.ENDERMAN, 50, 1, 2); + builder + .fogColor(226, 239, 168) + .fogDensity(2) + .waterAndFogColor(192, 180, 131) + .terrainHeight(1.5F) + .particles(ParticleTypes.WHITE_ASH, 0.01F) + .loop(EndSounds.AMBIENT_DUST_WASTELANDS) + .music(EndSounds.MUSIC_OPENSPACE) + .structure(VANILLA_FEATURES.getEndCity()) + .spawn(EntityType.ENDERMAN, 50, 1, 2); } @Override @@ -34,6 +40,16 @@ public class DustWastelandsBiome extends EndBiome.Config { public BlockState getTopMaterial() { return EndBlocks.ENDSTONE_DUST.defaultBlockState(); } + + @Override + public SurfaceRuleBuilder surface() { + return super + .surface() + .ceil(Blocks.END_STONE.defaultBlockState()) + .rule(4, SurfaceRules.ifTrue(SurfaceRules.stoneDepthCheck(5, false, false, CaveSurface.FLOOR), + SurfaceRules.state(EndBlocks.ENDSTONE_DUST.defaultBlockState()) + )); + } }; } } diff --git a/src/main/java/ru/betterend/world/biome/land/FoggyMushroomlandBiome.java b/src/main/java/ru/betterend/world/biome/land/FoggyMushroomlandBiome.java index 808bdb0e..29fc75a0 100644 --- a/src/main/java/ru/betterend/world/biome/land/FoggyMushroomlandBiome.java +++ b/src/main/java/ru/betterend/world/biome/land/FoggyMushroomlandBiome.java @@ -41,7 +41,7 @@ public class FoggyMushroomlandBiome extends EndBiome.Config { .feature(EndFeatures.CHARNIA_CYAN) .feature(EndFeatures.CHARNIA_LIGHT_BLUE) .feature(EndFeatures.CHARNIA_RED_RARE) - .structure(VANILLA_FEATURES.getEND_CITY()) + .structure(VANILLA_FEATURES.getEndCity()) .spawn(EndEntities.DRAGONFLY, 80, 2, 5) .spawn(EndEntities.END_FISH, 20, 2, 5) .spawn(EndEntities.CUBOZOA, 10, 3, 8) diff --git a/src/main/java/ru/betterend/world/biome/land/GlowingGrasslandsBiome.java b/src/main/java/ru/betterend/world/biome/land/GlowingGrasslandsBiome.java index 90530fc4..dcee170d 100644 --- a/src/main/java/ru/betterend/world/biome/land/GlowingGrasslandsBiome.java +++ b/src/main/java/ru/betterend/world/biome/land/GlowingGrasslandsBiome.java @@ -37,7 +37,7 @@ public class GlowingGrasslandsBiome extends EndBiome.Config { .feature(EndFeatures.CHARNIA_GREEN) .feature(EndFeatures.CHARNIA_LIGHT_BLUE) .feature(EndFeatures.CHARNIA_RED_RARE) - .structure(VANILLA_FEATURES.getEND_CITY()) + .structure(VANILLA_FEATURES.getEndCity()) .spawn(EntityType.ENDERMAN, 50, 1, 2); } diff --git a/src/main/java/ru/betterend/world/biome/land/LanternWoodsBiome.java b/src/main/java/ru/betterend/world/biome/land/LanternWoodsBiome.java index b9a4ba45..06213252 100644 --- a/src/main/java/ru/betterend/world/biome/land/LanternWoodsBiome.java +++ b/src/main/java/ru/betterend/world/biome/land/LanternWoodsBiome.java @@ -37,7 +37,7 @@ public class LanternWoodsBiome extends EndBiome.Config { .feature(EndFeatures.CHARNIA_RED) .feature(EndFeatures.RUSCUS) .feature(EndFeatures.RUSCUS_WOOD) - .structure(VANILLA_FEATURES.getEND_CITY()) + .structure(VANILLA_FEATURES.getEndCity()) .spawn(EntityType.ENDERMAN, 50, 1, 2); } diff --git a/src/main/java/ru/betterend/world/biome/land/NeonOasisBiome.java b/src/main/java/ru/betterend/world/biome/land/NeonOasisBiome.java index 41f078dc..7baa3e81 100644 --- a/src/main/java/ru/betterend/world/biome/land/NeonOasisBiome.java +++ b/src/main/java/ru/betterend/world/biome/land/NeonOasisBiome.java @@ -31,7 +31,7 @@ public class NeonOasisBiome extends EndBiome.Config { .feature(EndFeatures.CHARNIA_GREEN) .feature(EndFeatures.CHARNIA_CYAN) .feature(EndFeatures.CHARNIA_RED) - .structure(VANILLA_FEATURES.getEND_CITY()) + .structure(VANILLA_FEATURES.getEndCity()) .spawn(EntityType.ENDERMAN, 50, 1, 2); } diff --git a/src/main/java/ru/betterend/world/biome/land/ShadowForestBiome.java b/src/main/java/ru/betterend/world/biome/land/ShadowForestBiome.java index 7233b385..ad3fdeed 100644 --- a/src/main/java/ru/betterend/world/biome/land/ShadowForestBiome.java +++ b/src/main/java/ru/betterend/world/biome/land/ShadowForestBiome.java @@ -40,7 +40,7 @@ public class ShadowForestBiome extends EndBiome.Config { .feature(EndFeatures.TAIL_MOSS_WOOD) .feature(EndFeatures.CHARNIA_PURPLE) .feature(EndFeatures.CHARNIA_RED_RARE) - .structure(VANILLA_FEATURES.getEND_CITY()) + .structure(VANILLA_FEATURES.getEndCity()) .spawn(EndEntities.SHADOW_WALKER, 80, 2, 4) .spawn(EntityType.ENDERMAN, 40, 1, 4) .spawn(EntityType.PHANTOM, 1, 1, 2); diff --git a/src/main/java/ru/betterend/world/biome/land/UmbrellaJungleBiome.java b/src/main/java/ru/betterend/world/biome/land/UmbrellaJungleBiome.java index a14bcec7..59fbc4df 100644 --- a/src/main/java/ru/betterend/world/biome/land/UmbrellaJungleBiome.java +++ b/src/main/java/ru/betterend/world/biome/land/UmbrellaJungleBiome.java @@ -41,7 +41,7 @@ public class UmbrellaJungleBiome extends EndBiome.Config { .feature(EndFeatures.CHARNIA_GREEN) .feature(EndFeatures.CHARNIA_LIGHT_BLUE) .feature(EndFeatures.CHARNIA_RED_RARE) - .structure(VANILLA_FEATURES.getEND_CITY()) + .structure(VANILLA_FEATURES.getEndCity()) .spawn(EntityType.ENDERMAN, 50, 1, 2); }