Work on End biomes
This commit is contained in:
parent
f334573f3c
commit
7688e3ff82
20 changed files with 12 additions and 147 deletions
|
@ -80,7 +80,6 @@ public class BOPBiomes
|
|||
public static Optional<Biome> undergarden = Optional.empty();
|
||||
public static Optional<Biome> visceral_heap = Optional.empty();
|
||||
|
||||
public static Optional<Biome> coral_deadland = Optional.empty();
|
||||
public static Optional<Biome> dead_reef = Optional.empty();
|
||||
public static Optional<Biome> ethereal_forest = Optional.empty();
|
||||
public static Optional<Biome> end_plains = Optional.empty();
|
||||
}
|
||||
|
|
|
@ -259,7 +259,6 @@ public class BOPBlocks
|
|||
public static Block dune_grass;
|
||||
public static Block desert_grass;
|
||||
public static Block dead_grass;
|
||||
public static Block ender_fern;
|
||||
public static Block cattail;
|
||||
public static Block tall_cattail;
|
||||
public static Block reed;
|
||||
|
|
|
@ -18,9 +18,9 @@ import net.minecraft.world.gen.placement.Placement;
|
|||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class CoralDeadlandsBiome extends EndBiomeBOP
|
||||
public class DeadReefBiome extends EndBiomeBOP
|
||||
{
|
||||
public CoralDeadlandsBiome()
|
||||
public DeadReefBiome()
|
||||
{
|
||||
super((new Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder<>(SurfaceBuilder.DEFAULT, SurfaceBuilder.END_STONE_CONFIG)).precipitation(RainType.NONE).category(Category.THEEND).depth(0.1F).scale(0.2F).temperature(0.5F).downfall(0.5F).waterColor(4159204).waterFogColor(329011).parent((String)null));
|
||||
|
|
@ -1,30 +0,0 @@
|
|||
package biomesoplenty.common.biome.end;
|
||||
|
||||
import biomesoplenty.api.block.BOPBlocks;
|
||||
import biomesoplenty.common.biome.EndBiomeBOP;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.Biome;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.BushConfig;
|
||||
import net.minecraft.world.gen.feature.Feature;
|
||||
import net.minecraft.world.gen.feature.IFeatureConfig;
|
||||
import net.minecraft.world.gen.placement.FrequencyConfig;
|
||||
import net.minecraft.world.gen.placement.IPlacementConfig;
|
||||
import net.minecraft.world.gen.placement.Placement;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class EndPlainsBiome extends EndBiomeBOP
|
||||
{
|
||||
public EndPlainsBiome()
|
||||
{
|
||||
super((new Biome.Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder<>(SurfaceBuilder.DEFAULT, SurfaceBuilder.END_STONE_CONFIG)).precipitation(Biome.RainType.NONE).category(Biome.Category.THEEND).depth(0.1F).scale(0.2F).temperature(0.5F).downfall(0.5F).waterColor(4159204).waterFogColor(329011).parent((String)null));
|
||||
|
||||
this.addFeature(GenerationStage.Decoration.SURFACE_STRUCTURES, Biome.createDecoratedFeature(Feature.END_CITY, IFeatureConfig.NO_FEATURE_CONFIG, Placement.NOPE, IPlacementConfig.NO_PLACEMENT_CONFIG));
|
||||
|
||||
this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Biome.createDecoratedFeature(Feature.BUSH, new BushConfig(BOPBlocks.ender_fern.getDefaultState()), Placement.COUNT_HEIGHTMAP_DOUBLE, new FrequencyConfig(75)));
|
||||
|
||||
this.addSpawn(EntityClassification.MONSTER, new Biome.SpawnListEntry(EntityType.ENDERMAN, 10, 4, 4));
|
||||
}
|
||||
}
|
|
@ -26,8 +26,8 @@ public class EtherealForestBiome extends EndBiomeBOP
|
|||
|
||||
this.addFeature(GenerationStage.Decoration.SURFACE_STRUCTURES, Biome.createDecoratedFeature(Feature.END_CITY, IFeatureConfig.NO_FEATURE_CONFIG, Placement.NOPE, IPlacementConfig.NO_PLACEMENT_CONFIG));
|
||||
|
||||
this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Biome.createDecoratedFeature(Feature.RANDOM_SELECTOR, new MultipleRandomFeatureConfig(new Feature[]{BOPBiomeFeatures.ETHEREAL_TREE}, new IFeatureConfig[]{IFeatureConfig.NO_FEATURE_CONFIG}, new float[]{0.15F}, BOPBiomeFeatures.ETHEREAL_BUSH, IFeatureConfig.NO_FEATURE_CONFIG), Placement.COUNT_EXTRA_HEIGHTMAP, new AtSurfaceWithExtraConfig(6, 0.2F, 1)));
|
||||
this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Biome.createDecoratedFeature(Feature.BUSH, new BushConfig(BOPBlocks.ender_fern.getDefaultState()), Placement.COUNT_HEIGHTMAP_DOUBLE, new FrequencyConfig(150)));
|
||||
this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, createDecoratedFeature(BOPBiomeFeatures.ETHEREAL_TREE, IFeatureConfig.NO_FEATURE_CONFIG, Placement.COUNT_HEIGHTMAP_DOUBLE, new FrequencyConfig(1)));
|
||||
this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, createDecoratedFeature(BOPBiomeFeatures.ETHEREAL_BUSH, IFeatureConfig.NO_FEATURE_CONFIG, Placement.COUNT_HEIGHTMAP_DOUBLE, new FrequencyConfig(25)));
|
||||
|
||||
this.addSpawn(EntityClassification.MONSTER, new SpawnListEntry(EntityType.ENDERMAN, 10, 4, 4));
|
||||
}
|
||||
|
|
|
@ -83,10 +83,6 @@ public class FoliageBlockBOP extends BushBlock implements IPlantable
|
|||
{
|
||||
return ground.hasSolidSide(groundState, worldIn, pos.down(), Direction.UP) || super.isValidPosition(state, worldIn, pos);
|
||||
}
|
||||
if (this == BOPBlocks.ender_fern)
|
||||
{
|
||||
return ground == Blocks.END_STONE || super.isValidPosition(state, worldIn, pos);
|
||||
}
|
||||
if (this == BOPBlocks.dune_grass)
|
||||
{
|
||||
return ground == Blocks.SAND || ground == Blocks.RED_SAND || ground == BOPBlocks.white_sand;
|
||||
|
|
|
@ -24,7 +24,7 @@ import java.util.Set;
|
|||
public class BOPEndBiomeProvider extends BiomeProvider {
|
||||
private final SimplexNoiseGenerator generator;
|
||||
private final SharedSeedRandom random;
|
||||
private final Biome[] field_205009_d = new Biome[]{Biomes.THE_END, Biomes.END_HIGHLANDS, Biomes.END_MIDLANDS, Biomes.SMALL_END_ISLANDS, Biomes.END_BARRENS, BOPBiomes.coral_deadland.get(), BOPBiomes.ethereal_forest.get(), BOPBiomes.end_plains.get()};
|
||||
private final Biome[] field_205009_d = new Biome[]{Biomes.THE_END, Biomes.END_HIGHLANDS, Biomes.END_MIDLANDS, Biomes.SMALL_END_ISLANDS, Biomes.END_BARRENS, BOPBiomes.dead_reef.get(), BOPBiomes.ethereal_forest.get()};
|
||||
|
||||
public BOPEndBiomeProvider(EndBiomeProviderSettings p_i48970_1_) {
|
||||
this.random = new SharedSeedRandom(p_i48970_1_.getSeed());
|
||||
|
|
|
@ -43,7 +43,7 @@ public class BOPBiomeFeatures
|
|||
public static final AbstractTreeFeature<NoFeatureConfig> BIG_MAGIC_TREE = new BigTreeFeature.Builder().log(BOPBlocks.magic_log.getDefaultState()).leaves(BOPBlocks.magic_leaves.getDefaultState()).create();
|
||||
|
||||
public static final AbstractTreeFeature<NoFeatureConfig> GIANT_TREE = new BigTreeFeature.Builder().log(Blocks.DARK_OAK_LOG.getDefaultState()).leaves(Blocks.DARK_OAK_LEAVES.getDefaultState().with(LeavesBlock.PERSISTENT, true)).minHeight(25).maxHeight(30).trunkWidth(4).create();
|
||||
public static final AbstractTreeFeature<NoFeatureConfig> ETHEREAL_TREE = new BigTreeFeature.Builder().log(BOPBlocks.ethereal_log.getDefaultState()).leaves(BOPBlocks.ethereal_leaves.getDefaultState()).placeOn((world, pos) -> world.getBlockState(pos).getBlock() == Blocks.END_STONE).minHeight(5).maxHeight(17).foliageHeight(2).create();
|
||||
public static final AbstractTreeFeature<NoFeatureConfig> ETHEREAL_TREE = new BigTreeFeature.Builder().log(BOPBlocks.ethereal_log.getDefaultState()).leaves(BOPBlocks.ethereal_leaves.getDefaultState()).placeOn((world, pos) -> world.getBlockState(pos).getBlock() == Blocks.END_STONE).minHeight(10).maxHeight(20).foliageHeight(1).create();
|
||||
|
||||
//Conifer Trees
|
||||
public static final AbstractTreeFeature<NoFeatureConfig> TALL_SPRUCE_TREE = new TaigaTreeFeature.Builder().log(Blocks.SPRUCE_LOG.getDefaultState()).leaves(Blocks.SPRUCE_LEAVES.getDefaultState()).maxHeight(13).create();
|
||||
|
|
|
@ -13,7 +13,7 @@ import java.util.List;
|
|||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
|
||||
import biomesoplenty.common.biome.end.CoralDeadlandsBiome;
|
||||
import biomesoplenty.common.biome.end.DeadReefBiome;
|
||||
import biomesoplenty.common.biome.end.EtherealForestBiome;
|
||||
import biomesoplenty.common.biome.nether.*;
|
||||
import com.google.common.collect.HashMultimap;
|
||||
|
@ -22,7 +22,6 @@ import com.google.common.collect.Multimap;
|
|||
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeBOP;
|
||||
import biomesoplenty.common.biome.end.EndPlainsBiome;
|
||||
import biomesoplenty.common.biome.overworld.AlpsBiome;
|
||||
import biomesoplenty.common.biome.overworld.AlpsFoothillsBiome;
|
||||
import biomesoplenty.common.biome.overworld.BayouBiome;
|
||||
|
@ -181,9 +180,8 @@ public class ModBiomes
|
|||
visceral_heap = registerBiome(new VisceralHeapBiome(), "visceral_heap");
|
||||
|
||||
//End Biomes
|
||||
coral_deadland = registerBiome(new CoralDeadlandsBiome(), "coral_deadlands");
|
||||
dead_reef = registerBiome(new DeadReefBiome(), "dead_reef");
|
||||
ethereal_forest = registerBiome(new EtherealForestBiome(), "ethereal_forest");
|
||||
end_plains = registerBiome(new EndPlainsBiome(), "end_plains");
|
||||
|
||||
//Sub/Island Biomes (Note: Rarity supports two decimal places)
|
||||
registerSubBiome(Biomes.DESERT, oasis, 0.1F, 100);
|
||||
|
@ -279,9 +277,8 @@ public class ModBiomes
|
|||
registerBiomeToDictionary(visceral_heap, Type.NETHER, Type.HOT);
|
||||
|
||||
//End Biomes
|
||||
registerBiomeToDictionary(coral_deadland, Type.END);
|
||||
registerBiomeToDictionary(dead_reef, Type.END);
|
||||
registerBiomeToDictionary(ethereal_forest, Type.END);
|
||||
registerBiomeToDictionary(end_plains, Type.END);
|
||||
}
|
||||
|
||||
private static void registerBiomeToDictionary(Optional<Biome> biome, Type...types)
|
||||
|
|
|
@ -281,7 +281,6 @@ public class ModBlocks
|
|||
dune_grass = registerBlock(new FoliageBlockBOP(Block.Properties.create(Material.TALL_PLANTS, MaterialColor.LIME_TERRACOTTA).doesNotBlockMovement().zeroHardnessAndResistance().sound(SoundType.PLANT)), "dune_grass");
|
||||
desert_grass = registerBlock(new FoliageBlockBOP(Block.Properties.create(Material.TALL_PLANTS, MaterialColor.ORANGE_TERRACOTTA).doesNotBlockMovement().zeroHardnessAndResistance().sound(SoundType.PLANT)), "desert_grass");
|
||||
dead_grass = registerBlock(new FoliageBlockBOP(Block.Properties.create(Material.TALL_PLANTS, MaterialColor.WOOD).doesNotBlockMovement().zeroHardnessAndResistance().sound(SoundType.PLANT)), "dead_grass");
|
||||
ender_fern = registerBlock(new FoliageBlockBOP(Block.Properties.create(Material.TALL_PLANTS, MaterialColor.CYAN).doesNotBlockMovement().zeroHardnessAndResistance().sound(SoundType.PLANT)), "ender_fern");
|
||||
cattail = registerBlock(new WatersidePlantBlock(Block.Properties.create(Material.PLANTS, MaterialColor.DIRT).doesNotBlockMovement().zeroHardnessAndResistance().sound(SoundType.PLANT)), "cattail");
|
||||
tall_cattail = registerBlock(new DoubleWatersidePlantBlock(cattail, Block.Properties.create(Material.PLANTS, MaterialColor.DIRT).doesNotBlockMovement().zeroHardnessAndResistance().sound(SoundType.PLANT)), "tall_cattail");
|
||||
|
||||
|
|
|
@ -147,7 +147,6 @@ public class ModVanillaCompat
|
|||
registerFlammable(BOPBlocks.dune_grass, 60, 100);
|
||||
registerFlammable(BOPBlocks.desert_grass, 60, 100);
|
||||
registerFlammable(BOPBlocks.dead_grass, 60, 100);
|
||||
registerFlammable(BOPBlocks.ender_fern, 60, 100);
|
||||
|
||||
//Log Stripping
|
||||
registerStrippable(BOPBlocks.fir_log, BOPBlocks.stripped_fir_log);
|
||||
|
@ -234,7 +233,6 @@ public class ModVanillaCompat
|
|||
registerCompostable(0.5F, BOPBlocks.dune_grass);
|
||||
registerCompostable(0.5F, BOPBlocks.desert_grass);
|
||||
registerCompostable(0.5F, BOPBlocks.dead_grass);
|
||||
registerCompostable(0.5F, BOPBlocks.ender_fern);
|
||||
|
||||
registerCompostable(0.5F, BOPBlocks.cattail);
|
||||
registerCompostable(0.5F, BOPBlocks.tall_cattail);
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
{
|
||||
"variants": {
|
||||
"": { "model": "biomesoplenty:block/ender_fern" }
|
||||
}
|
||||
}
|
|
@ -18,8 +18,8 @@
|
|||
"biome.biomesoplenty.cherry_blossom_grove": "Cherry Blossom Grove",
|
||||
"biome.biomesoplenty.cold_desert": "Cold Desert",
|
||||
"biome.biomesoplenty.coniferous_forest": "Coniferous Forest",
|
||||
"biome.biomesoplenty.coral_deadland": "Coral Deadland",
|
||||
"biome.biomesoplenty.dead_forest": "Dead Forest",
|
||||
"biome.biomesoplenty.dead_reef": "Dead Reef",
|
||||
"biome.biomesoplenty.dry_plains": "Dry Plains",
|
||||
"biome.biomesoplenty.ethereal_forest": "Ethereal Forest",
|
||||
"biome.biomesoplenty.floodplain": "Floodplain",
|
||||
|
@ -137,7 +137,6 @@
|
|||
"block.biomesoplenty.desert_grass": "Desert Grass",
|
||||
"block.biomesoplenty.dried_sand": "Dried Sand",
|
||||
"block.biomesoplenty.dune_grass": "Dune Grass",
|
||||
"block.biomesoplenty.ender_fern": "Ender Fern",
|
||||
"block.biomesoplenty.ethereal_button": "Ethereal Button",
|
||||
"block.biomesoplenty.ethereal_door": "Ethereal Door",
|
||||
"block.biomesoplenty.ethereal_fence": "Ethereal Fence",
|
||||
|
|
|
@ -1,6 +0,0 @@
|
|||
{
|
||||
"parent": "block/cross",
|
||||
"textures": {
|
||||
"cross": "biomesoplenty:blocks/ender_fern"
|
||||
}
|
||||
}
|
|
@ -1,6 +0,0 @@
|
|||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "biomesoplenty:blocks/ender_fern"
|
||||
}
|
||||
}
|
Binary file not shown.
Before Width: | Height: | Size: 375 B |
|
@ -1,22 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:block",
|
||||
"pools": [
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"name": "biomesoplenty:ender_fern"
|
||||
}
|
||||
],
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:match_tool",
|
||||
"predicate": {
|
||||
"item": "minecraft:shears"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,19 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:block",
|
||||
"pools": [
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"name": "biomesoplenty:poison_puff"
|
||||
}
|
||||
],
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:survives_explosion"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,33 +0,0 @@
|
|||
{
|
||||
"type": "minecraft:block",
|
||||
"pools": [
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"name": "minecraft:flower_pot"
|
||||
}
|
||||
],
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:survives_explosion"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"name": "biomesoplenty:poison_puff"
|
||||
}
|
||||
],
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:survives_explosion"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -32,7 +32,6 @@
|
|||
"biomesoplenty:potted_wilted_lily",
|
||||
"biomesoplenty:potted_burning_blossom",
|
||||
"biomesoplenty:potted_toadstool",
|
||||
"biomesoplenty:potted_glowshroom",
|
||||
"biomesoplenty:potted_poison_puff"
|
||||
"biomesoplenty:potted_glowshroom"
|
||||
]
|
||||
}
|
Loading…
Reference in a new issue