Added Rainbow Birch trees and Rainbow Valley island biome
This commit is contained in:
parent
6fbf2bc527
commit
fbc3c11a07
32 changed files with 502 additions and 5 deletions
|
@ -51,6 +51,7 @@ public class BOPBiomes
|
|||
public static Optional<Biome> pasture = Optional.empty();
|
||||
public static Optional<Biome> prairie = Optional.empty();
|
||||
public static Optional<Biome> pumpkin_patch = Optional.empty();
|
||||
public static Optional<Biome> rainbow_valley = Optional.empty();
|
||||
public static Optional<Biome> rainforest = Optional.empty();
|
||||
public static Optional<Biome> redwood_forest = Optional.empty();
|
||||
public static Optional<Biome> redwood_forest_edge = Optional.empty();
|
||||
|
|
|
@ -37,6 +37,8 @@ public class BOPBlocks
|
|||
public static Block origin_leaves;
|
||||
public static Block flowering_oak_sapling;
|
||||
public static Block flowering_oak_leaves;
|
||||
public static Block rainbow_birch_sapling;
|
||||
public static Block rainbow_birch_leaves;
|
||||
public static Block yellow_autumn_sapling;
|
||||
public static Block yellow_autumn_leaves;
|
||||
public static Block orange_autumn_sapling;
|
||||
|
@ -256,6 +258,7 @@ public class BOPBlocks
|
|||
|
||||
public static Block potted_origin_sapling;
|
||||
public static Block potted_flowering_oak_sapling;
|
||||
public static Block potted_rainbow_birch_sapling;
|
||||
public static Block potted_yellow_autumn_sapling;
|
||||
public static Block potted_orange_autumn_sapling;
|
||||
public static Block potted_maple_sapling;
|
||||
|
|
|
@ -0,0 +1,105 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.block.BOPBlocks;
|
||||
import biomesoplenty.api.enums.BOPClimates;
|
||||
import biomesoplenty.common.biome.BiomeBOP;
|
||||
import biomesoplenty.common.world.biome.BiomeFeatureHelper;
|
||||
import biomesoplenty.common.world.gen.feature.BOPBiomeFeatures;
|
||||
import biomesoplenty.common.world.gen.feature.FernGrassFeature;
|
||||
import biomesoplenty.common.world.gen.feature.StandardGrassFeature;
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.entity.EntityClassification;
|
||||
import net.minecraft.entity.EntityType;
|
||||
import net.minecraft.world.biome.Biome;
|
||||
import net.minecraft.world.biome.DefaultBiomeFeatures;
|
||||
import net.minecraft.world.gen.GenerationStage;
|
||||
import net.minecraft.world.gen.feature.Feature;
|
||||
import net.minecraft.world.gen.feature.IFeatureConfig;
|
||||
import net.minecraft.world.gen.feature.MultipleRandomFeatureConfig;
|
||||
import net.minecraft.world.gen.feature.NoFeatureConfig;
|
||||
import net.minecraft.world.gen.feature.structure.MineshaftConfig;
|
||||
import net.minecraft.world.gen.feature.structure.MineshaftStructure;
|
||||
import net.minecraft.world.gen.placement.AtSurfaceWithExtraConfig;
|
||||
import net.minecraft.world.gen.placement.ChanceConfig;
|
||||
import net.minecraft.world.gen.placement.FrequencyConfig;
|
||||
import net.minecraft.world.gen.placement.Placement;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
||||
|
||||
public class RainbowValleyBiome extends BiomeBOP
|
||||
{
|
||||
public RainbowValleyBiome()
|
||||
{
|
||||
super((new Builder()).surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.GRASS_DIRT_GRAVEL_CONFIG)).precipitation(RainType.RAIN).category(Category.FOREST).depth(0.5F).scale(0.5F).temperature(0.55F).downfall(1.0F).waterColor(4566514).waterFogColor(267827).parent((String)null));
|
||||
|
||||
// Structures
|
||||
this.addStructureStart(Feature.MINESHAFT.configured(new MineshaftConfig(0.004D, MineshaftStructure.Type.NORMAL)));
|
||||
this.addStructureStart(Feature.STRONGHOLD.configured(IFeatureConfig.NO_FEATURE_CONFIG));
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(this);
|
||||
DefaultBiomeFeatures.addStructureFeaturePlacement(this);
|
||||
DefaultBiomeFeatures.addDefaultLakes(this);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(this);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(this);
|
||||
DefaultBiomeFeatures.addDefaultOres(this);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(this);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BOPBiomeFeatures.BUSH.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.2F), BOPBiomeFeatures.FIR_TREE_SMALL.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.1F), BOPBiomeFeatures.FIR_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.025F), BOPBiomeFeatures.BIG_RAINBOW_BIRCH_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG).weighted(0.2F)), BOPBiomeFeatures.RAINBOW_BIRCH_TREE.configured(DefaultBiomeFeatures.NORMAL_TREE_CONFIG))).decorated(Placement.COUNT_EXTRA_HEIGHTMAP.configured(new AtSurfaceWithExtraConfig(15, 0.5F, 1))));
|
||||
|
||||
this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPBiomeFeatures.RAINBOW_VALLEY_FLOWERS.configured(IFeatureConfig.NO_FEATURE_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(25))));
|
||||
this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, new StandardGrassFeature(NoFeatureConfig::deserialize).configured(IFeatureConfig.NO_FEATURE_CONFIG).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(15))));
|
||||
this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.sprout.getDefaultState())).decorated(Placement.COUNT_HEIGHTMAP_DOUBLE.configured(new FrequencyConfig(7))));
|
||||
this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.LILAC.getDefaultState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(3))));
|
||||
this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.ROSE_BUSH.getDefaultState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(4))));
|
||||
this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.PEONY.getDefaultState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(1))));
|
||||
this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(BOPBlocks.goldenrod.getDefaultState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(2))));
|
||||
this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(BOPBlocks.blue_hydrangea.getDefaultState())).decorated(Placement.COUNT_HEIGHTMAP_32.configured(new FrequencyConfig(5))));
|
||||
this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.BROWN_MUSHROOM.getDefaultState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(4))));
|
||||
this.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(Blocks.RED_MUSHROOM.getDefaultState())).decorated(Placement.CHANCE_HEIGHTMAP_DOUBLE.configured(new ChanceConfig(8))));
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(this);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(this);
|
||||
|
||||
// Entities
|
||||
this.addSpawn(EntityClassification.CREATURE, new Biome.SpawnListEntry(EntityType.FOX, 8, 2, 4));
|
||||
this.addSpawn(EntityClassification.CREATURE, new SpawnListEntry(EntityType.SHEEP, 12, 4, 4));
|
||||
this.addSpawn(EntityClassification.CREATURE, new SpawnListEntry(EntityType.PIG, 10, 4, 4));
|
||||
this.addSpawn(EntityClassification.CREATURE, new SpawnListEntry(EntityType.CHICKEN, 10, 4, 4));
|
||||
this.addSpawn(EntityClassification.CREATURE, new SpawnListEntry(EntityType.COW, 8, 4, 4));
|
||||
this.addSpawn(EntityClassification.AMBIENT, new SpawnListEntry(EntityType.BAT, 10, 8, 8));
|
||||
|
||||
this.setBeachBiome((Biome)null);
|
||||
}
|
||||
|
||||
@OnlyIn(Dist.CLIENT)
|
||||
@Override
|
||||
public int getGrassColor(double x, double z) {
|
||||
double d0 = INFO_NOISE.noiseAt(x * 0.0225D, z * 0.0225D, false);
|
||||
return d0 < -0.1D ? 0x77CE7F : 0x75CE8D;
|
||||
}
|
||||
|
||||
@OnlyIn(Dist.CLIENT)
|
||||
@Override
|
||||
public int getFoliageColor()
|
||||
{
|
||||
return 0x75CE8D;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,16 @@
|
|||
package biomesoplenty.common.block.trees;
|
||||
|
||||
import biomesoplenty.common.world.gen.feature.BOPBiomeFeatures;
|
||||
import net.minecraft.world.gen.feature.BaseTreeFeatureConfig;
|
||||
import net.minecraft.world.gen.feature.Feature;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
public class RainbowBirchTree extends TreeDefaultConfig
|
||||
{
|
||||
@Override
|
||||
protected Feature<? extends BaseTreeFeatureConfig> getFeature(Random random)
|
||||
{
|
||||
return (random.nextInt(10) == 0 ? BOPBiomeFeatures.BIG_RAINBOW_BIRCH_TREE : BOPBiomeFeatures.RAINBOW_BIRCH_TREE);
|
||||
}
|
||||
}
|
|
@ -26,6 +26,7 @@ public class BOPBiomeFeatures
|
|||
public static final Feature<BaseTreeFeatureConfig> SMALL_JUNGLE_TREE = new BasicTreeFeature.Builder().maxHeight(9).log(Blocks.JUNGLE_LOG.getDefaultState()).leaves(Blocks.JUNGLE_LEAVES.getDefaultState()).trunkFruit(Blocks.COCOA.getDefaultState()).create();
|
||||
public static final Feature<BaseTreeFeatureConfig> ORIGIN_TREE = new BasicTreeFeature.Builder().leaves(BOPBlocks.origin_leaves.getDefaultState()).minHeight(5).maxHeight(8).create();
|
||||
public static final Feature<BaseTreeFeatureConfig> FLOWERING_OAK_TREE = new BasicTreeFeature.Builder().altLeaves(BOPBlocks.flowering_oak_leaves.getDefaultState()).create();
|
||||
public static final Feature<BaseTreeFeatureConfig> RAINBOW_BIRCH_TREE = new BasicTreeFeature.Builder().log(Blocks.BIRCH_LOG.getDefaultState()).leaves(BOPBlocks.rainbow_birch_leaves.getDefaultState()).create();
|
||||
public static final Feature<BaseTreeFeatureConfig> YELLOW_AUTUMN_TREE = new BasicTreeFeature.Builder().log(Blocks.BIRCH_LOG.getDefaultState()).leaves(BOPBlocks.yellow_autumn_leaves.getDefaultState()).minHeight(5).maxHeight(8).create();
|
||||
public static final Feature<BaseTreeFeatureConfig> ORANGE_AUTUMN_TREE = new BasicTreeFeature.Builder().log(Blocks.DARK_OAK_LOG.getDefaultState()).leaves(BOPBlocks.orange_autumn_leaves.getDefaultState()).minHeight(5).maxHeight(8).create();
|
||||
public static final Feature<BaseTreeFeatureConfig> MAPLE_TREE = new BasicTreeFeature.Builder().leaves(BOPBlocks.maple_leaves.getDefaultState()).minHeight(5).maxHeight(10).create();
|
||||
|
@ -41,6 +42,7 @@ public class BOPBiomeFeatures
|
|||
public static final Feature<BaseTreeFeatureConfig> BIG_OAK_TREE = new BigTreeFeature.Builder().create();
|
||||
public static final Feature<BaseTreeFeatureConfig> BIG_ORIGIN_TREE = new BigTreeFeature.Builder().leaves(BOPBlocks.origin_leaves.getDefaultState()).create();
|
||||
public static final Feature<BaseTreeFeatureConfig> BIG_FLOWERING_OAK_TREE = new BigTreeFeature.Builder().altLeaves(BOPBlocks.flowering_oak_leaves.getDefaultState()).create();
|
||||
public static final Feature<BaseTreeFeatureConfig> BIG_RAINBOW_BIRCH_TREE = new BigTreeFeature.Builder().log(Blocks.BIRCH_LOG.getDefaultState()).leaves(BOPBlocks.rainbow_birch_leaves.getDefaultState()).create();
|
||||
public static final Feature<BaseTreeFeatureConfig> BIG_YELLOW_AUTUMN_TREE = new BigTreeFeature.Builder().log(Blocks.BIRCH_LOG.getDefaultState()).leaves(BOPBlocks.yellow_autumn_leaves.getDefaultState()).create();
|
||||
public static final Feature<BaseTreeFeatureConfig> BIG_ORANGE_AUTUMN_TREE = new BigTreeFeature.Builder().log(Blocks.DARK_OAK_LOG.getDefaultState()).leaves(BOPBlocks.orange_autumn_leaves.getDefaultState()).create();
|
||||
public static final Feature<BaseTreeFeatureConfig> BIG_MAPLE_TREE = new BigTreeFeature.Builder().leaves(BOPBlocks.maple_leaves.getDefaultState()).create();
|
||||
|
@ -143,6 +145,7 @@ public class BOPBiomeFeatures
|
|||
public static final FlowersFeature MYSTIC_GROVE_FLOWERS = new MysticGroveFlowersFeature();
|
||||
public static final FlowersFeature OMINOUS_WOODS_FLOWERS = new OminousWoodsFlowersFeature();
|
||||
public static final FlowersFeature ORIGIN_FLOWERS = new OriginFlowersFeature();
|
||||
public static final FlowersFeature RAINBOW_VALLEY_FLOWERS = new RainbowValleyFlowersFeature();
|
||||
public static final FlowersFeature RAINFOREST_FLOWERS = new RainforestFlowersFeature();
|
||||
public static final FlowersFeature SHRUBLAND_FLOWERS = new ShrublandFlowersFeature();
|
||||
public static final FlowersFeature SNOWY_FLOWERS = new SnowyFlowersFeature();
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2014-2019, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
package biomesoplenty.common.world.gen.feature;
|
||||
|
||||
import biomesoplenty.api.block.BOPBlocks;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.util.math.MathHelper;
|
||||
import net.minecraft.world.biome.Biome;
|
||||
import net.minecraft.world.gen.feature.NoFeatureConfig;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
public class RainbowValleyFlowersFeature extends DefaultFlowersFeatureNoConfig
|
||||
{
|
||||
private static final Block[] FLOWERS = new Block[]{BOPBlocks.pink_daffodil, BOPBlocks.orange_cosmos, Blocks.ALLIUM, Blocks.AZURE_BLUET, Blocks.ORANGE_TULIP, Blocks.PINK_TULIP, Blocks.RED_TULIP, Blocks.WHITE_TULIP, Blocks.CORNFLOWER, Blocks.LILY_OF_THE_VALLEY, Blocks.BLUE_ORCHID, Blocks.OXEYE_DAISY, Blocks.DANDELION, Blocks.POPPY};
|
||||
|
||||
@Override
|
||||
public BlockState getRandomFlower(Random p_202355_1_, BlockPos p_202355_2_, NoFeatureConfig config)
|
||||
{
|
||||
double d0 = MathHelper.clamp((1.0D + Biome.INFO_NOISE.noiseAt((double)p_202355_2_.getX() / 48.0D, (double)p_202355_2_.getZ() / 48.0D, false)) / 2.0D, 0.0D, 0.9999D);
|
||||
Block block = FLOWERS[(int)(d0 * (double)FLOWERS.length)];
|
||||
return block.getDefaultState();
|
||||
}
|
||||
}
|
|
@ -13,10 +13,14 @@ import net.minecraft.client.Minecraft;
|
|||
import net.minecraft.client.renderer.color.BlockColors;
|
||||
import net.minecraft.client.renderer.color.ItemColors;
|
||||
import net.minecraft.item.BlockItem;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.FoliageColors;
|
||||
import net.minecraft.world.GrassColors;
|
||||
import net.minecraft.world.ILightReader;
|
||||
import net.minecraft.world.biome.BiomeColors;
|
||||
|
||||
import java.awt.*;
|
||||
|
||||
public class ClientProxy extends CommonProxy
|
||||
{
|
||||
public ClientProxy()
|
||||
|
@ -40,6 +44,11 @@ public class ClientProxy extends CommonProxy
|
|||
world != null && pos != null ? BiomeColors.getAverageFoliageColor(world, pos) : FoliageColors.getDefault(),
|
||||
BOPBlocks.bush, BOPBlocks.flowering_oak_leaves, BOPBlocks.mahogany_leaves, BOPBlocks.palm_leaves,
|
||||
BOPBlocks.willow_leaves, BOPBlocks.willow_vine);
|
||||
|
||||
//Rainbow Birch Leaf Coloring
|
||||
blockColors.register((state, world, pos, tintIndex) ->
|
||||
world != null && pos != null ? getRainbowBirchColor(world, pos) : FoliageColors.getDefault(),
|
||||
BOPBlocks.rainbow_birch_leaves);
|
||||
|
||||
//Item Coloring
|
||||
itemColors.register((stack, tintIndex) -> {
|
||||
|
@ -48,4 +57,10 @@ public class ClientProxy extends CommonProxy
|
|||
BOPBlocks.sprout, BOPBlocks.bush, BOPBlocks.flowering_oak_leaves, BOPBlocks.mahogany_leaves,
|
||||
BOPBlocks.palm_leaves, BOPBlocks.willow_leaves, BOPBlocks.willow_vine);
|
||||
}
|
||||
|
||||
public static int getRainbowBirchColor(ILightReader world, BlockPos pos)
|
||||
{
|
||||
Color foliage = Color.getHSBColor((((float)pos.getX() + (float)pos.getZ()) % 100) / 100, 0.6F, 1.0F);
|
||||
return foliage.getRGB();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -93,6 +93,7 @@ public class ModBiomes
|
|||
pasture = registerBiome(new PastureBiome(), "pasture");
|
||||
prairie = registerBiome(new PrairieBiome(), "prairie");
|
||||
pumpkin_patch = registerBiome(new PumpkinPatchBiome(), "pumpkin_patch");
|
||||
rainbow_valley = registerBiome(new RainbowValleyBiome(), "rainbow_valley");
|
||||
rainforest = registerBiome(new RainforestBiome(), "rainforest");
|
||||
redwood_forest = registerBiome(new RedwoodForestBiome(), "redwood_forest");
|
||||
scrubland = registerBiome(new ScrublandBiome(), "scrubland");
|
||||
|
@ -135,13 +136,17 @@ public class ModBiomes
|
|||
|
||||
registerIslandBiome(origin_hills, BOPClimates.COOL_TEMPERATE, 50);
|
||||
registerIslandBiome(origin_hills, BOPClimates.DRY_TEMPERATE, 50);
|
||||
registerIslandBiome(origin_hills, BOPClimates.WET_TEMPERATE, 50);
|
||||
registerIslandBiome(origin_hills, BOPClimates.WET_TEMPERATE, 75);
|
||||
|
||||
registerIslandBiome(volcano, BOPClimates.WARM_TEMPERATE, 50);
|
||||
registerIslandBiome(volcano, BOPClimates.MEDITERRANEAN, 50);
|
||||
registerIslandBiome(volcano, BOPClimates.WARM_TEMPERATE, 75);
|
||||
registerIslandBiome(volcano, BOPClimates.MEDITERRANEAN, 75);
|
||||
registerIslandBiome(volcano, BOPClimates.SAVANNA, 50);
|
||||
|
||||
registerIslandBiome(tropics, BOPClimates.SUBTROPICAL, 50);
|
||||
|
||||
registerIslandBiome(rainbow_valley, BOPClimates.WET_TEMPERATE, 25);
|
||||
registerIslandBiome(rainbow_valley, BOPClimates.WARM_TEMPERATE, 25);
|
||||
registerIslandBiome(rainbow_valley, BOPClimates.MEDITERRANEAN, 25);
|
||||
|
||||
registerIslandBiome(tropics, BOPClimates.SUBTROPICAL, 75);
|
||||
registerIslandBiome(tropics, BOPClimates.TROPICAL, 50);
|
||||
registerIslandBiome(tropics, BOPClimates.HOT_DESERT, 50);
|
||||
}
|
||||
|
@ -187,6 +192,7 @@ public class ModBiomes
|
|||
registerBiomeToDictionary(pasture, Type.PLAINS, Type.DRY);
|
||||
registerBiomeToDictionary(prairie, Type.PLAINS, Type.DRY, Type.SPARSE);
|
||||
registerBiomeToDictionary(pumpkin_patch, Type.FOREST, Type.COLD, Type.DENSE);
|
||||
registerBiomeToDictionary(rainbow_valley, Type.WATER, Type.FOREST, Type.LUSH, Type.DENSE, Type.MAGICAL, Type.RARE);
|
||||
registerBiomeToDictionary(rainforest, Type.JUNGLE, Type.FOREST, Type.LUSH, Type.HILLS, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(redwood_forest, Type.FOREST, Type.DENSE);
|
||||
registerBiomeToDictionary(redwood_forest_edge, Type.FOREST, Type.DENSE);
|
||||
|
|
|
@ -63,6 +63,8 @@ public class ModBlocks
|
|||
origin_leaves = registerBlock(new LeavesBlock(Block.Properties.create(Material.LEAVES, MaterialColor.EMERALD).hardnessAndResistance(0.2F).tickRandomly().sound(SoundType.PLANT).noOcclusion()), "origin_leaves");
|
||||
flowering_oak_sapling = registerBlock(new SaplingBlockBOP(new FloweringOakTree(), Block.Properties.create(Material.PLANTS).doesNotBlockMovement().tickRandomly().zeroHardnessAndResistance().sound(SoundType.PLANT)), "flowering_oak_sapling");
|
||||
flowering_oak_leaves = registerBlock(new LeavesBlock(Block.Properties.create(Material.LEAVES).hardnessAndResistance(0.2F).tickRandomly().sound(SoundType.PLANT).noOcclusion()), "flowering_oak_leaves");
|
||||
rainbow_birch_sapling = registerBlock(new SaplingBlockBOP(new RainbowBirchTree(), Block.Properties.create(Material.PLANTS).doesNotBlockMovement().tickRandomly().zeroHardnessAndResistance().sound(SoundType.PLANT)), "rainbow_birch_sapling");
|
||||
rainbow_birch_leaves = registerBlock(new LeavesBlock(Block.Properties.create(Material.LEAVES).hardnessAndResistance(0.2F).tickRandomly().sound(SoundType.PLANT).noOcclusion()), "rainbow_birch_leaves");
|
||||
yellow_autumn_sapling = registerBlock(new SaplingBlockBOP(new YellowAutumnTree(), Block.Properties.create(Material.PLANTS).doesNotBlockMovement().tickRandomly().zeroHardnessAndResistance().sound(SoundType.PLANT)), "yellow_autumn_sapling");
|
||||
yellow_autumn_leaves = registerBlock(new LeavesBlock(Block.Properties.create(Material.LEAVES, MaterialColor.YELLOW_TERRACOTTA).hardnessAndResistance(0.2F).tickRandomly().sound(SoundType.PLANT).noOcclusion()), "yellow_autumn_leaves");
|
||||
orange_autumn_sapling = registerBlock(new SaplingBlockBOP(new OrangeAutumnTree(), Block.Properties.create(Material.PLANTS).doesNotBlockMovement().tickRandomly().zeroHardnessAndResistance().sound(SoundType.PLANT)), "orange_autumn_sapling");
|
||||
|
@ -289,6 +291,7 @@ public class ModBlocks
|
|||
//Potted Plants
|
||||
potted_origin_sapling = registerBlockNoGroup(new FlowerPotBlock(origin_sapling, Block.Properties.create(Material.MISCELLANEOUS).zeroHardnessAndResistance()), "potted_origin_sapling");
|
||||
potted_flowering_oak_sapling = registerBlockNoGroup(new FlowerPotBlock(flowering_oak_sapling, Block.Properties.create(Material.MISCELLANEOUS).zeroHardnessAndResistance()), "potted_flowering_oak_sapling");
|
||||
potted_rainbow_birch_sapling = registerBlockNoGroup(new FlowerPotBlock(rainbow_birch_sapling, Block.Properties.create(Material.MISCELLANEOUS).zeroHardnessAndResistance()), "potted_rainbow_birch_sapling");
|
||||
potted_yellow_autumn_sapling = registerBlockNoGroup(new FlowerPotBlock(yellow_autumn_sapling, Block.Properties.create(Material.MISCELLANEOUS).zeroHardnessAndResistance()), "potted_yellow_autumn_sapling");
|
||||
potted_orange_autumn_sapling = registerBlockNoGroup(new FlowerPotBlock(orange_autumn_sapling, Block.Properties.create(Material.MISCELLANEOUS).zeroHardnessAndResistance()), "potted_orange_autumn_sapling");
|
||||
potted_maple_sapling = registerBlockNoGroup(new FlowerPotBlock(maple_sapling, Block.Properties.create(Material.MISCELLANEOUS).zeroHardnessAndResistance()), "potted_maple_sapling");
|
||||
|
@ -326,6 +329,7 @@ public class ModBlocks
|
|||
|
||||
RenderTypeLookup.setRenderLayer(origin_leaves, transparentRenderType);
|
||||
RenderTypeLookup.setRenderLayer(flowering_oak_leaves, transparentRenderType);
|
||||
RenderTypeLookup.setRenderLayer(rainbow_birch_leaves, transparentRenderType);
|
||||
RenderTypeLookup.setRenderLayer(yellow_autumn_leaves, transparentRenderType);
|
||||
RenderTypeLookup.setRenderLayer(orange_autumn_leaves, transparentRenderType);
|
||||
RenderTypeLookup.setRenderLayer(maple_leaves, transparentRenderType);
|
||||
|
@ -344,6 +348,7 @@ public class ModBlocks
|
|||
|
||||
RenderTypeLookup.setRenderLayer(origin_sapling, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(flowering_oak_sapling, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(rainbow_birch_sapling, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(yellow_autumn_sapling, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(orange_autumn_sapling, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(maple_sapling, cutoutRenderType);
|
||||
|
@ -389,6 +394,7 @@ public class ModBlocks
|
|||
|
||||
RenderTypeLookup.setRenderLayer(potted_origin_sapling, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(potted_flowering_oak_sapling, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(potted_rainbow_birch_sapling, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(potted_yellow_autumn_sapling, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(potted_orange_autumn_sapling, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(potted_maple_sapling, cutoutRenderType);
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"variants": {
|
||||
"": { "model": "biomesoplenty:block/potted_rainbow_birch_sapling" }
|
||||
}
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"variants": {
|
||||
"": { "model": "biomesoplenty:block/rainbow_birch_leaves" }
|
||||
}
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"variants": {
|
||||
"": { "model": "biomesoplenty:block/rainbow_birch_sapling" }
|
||||
}
|
||||
}
|
|
@ -48,6 +48,7 @@
|
|||
"biome.biomesoplenty.pasture": "Pasture",
|
||||
"biome.biomesoplenty.prairie": "Prairie",
|
||||
"biome.biomesoplenty.pumpkin_patch": "Pumpkin Patch",
|
||||
"biome.biomesoplenty.rainbow_valley": "Rainbow Valley",
|
||||
"biome.biomesoplenty.rainforest": "Rainforest",
|
||||
"biome.biomesoplenty.redwood_forest": "Redwood Forest",
|
||||
"biome.biomesoplenty.redwood_forest_edge": "Redwood Forest Edge",
|
||||
|
@ -267,6 +268,7 @@
|
|||
"block.biomesoplenty.potted_pink_cherry_sapling": "Potted Pink Cherry Sapling",
|
||||
"block.biomesoplenty.potted_pink_daffodil": "Potted Pink Daffodil",
|
||||
"block.biomesoplenty.potted_pink_hibiscus": "Potted Pink Hibiscus",
|
||||
"block.biomesoplenty.potted_rainbow_birch_sapling": "Potted Rainbow Birch Sapling",
|
||||
"block.biomesoplenty.potted_redwood_sapling": "Potted Redwood Sapling",
|
||||
"block.biomesoplenty.potted_rose": "Potted Rose",
|
||||
"block.biomesoplenty.potted_sprout": "Potted Sprout",
|
||||
|
@ -278,6 +280,8 @@
|
|||
"block.biomesoplenty.potted_willow_sapling": "Potted Willow Sapling",
|
||||
"block.biomesoplenty.potted_wilted_lily": "Potted Wilted Lily",
|
||||
"block.biomesoplenty.potted_yellow_autumn_sapling": "Potted Yellow Autumn Sapling",
|
||||
"block.biomesoplenty.rainbow_birch_leaves": "Rainbow Birch Leaves",
|
||||
"block.biomesoplenty.rainbow_birch_sapling": "Rainbow Birch Sapling",
|
||||
"block.biomesoplenty.redwood_button": "Redwood Button",
|
||||
"block.biomesoplenty.redwood_door": "Redwood Door",
|
||||
"block.biomesoplenty.redwood_fence": "Redwood Fence",
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "minecraft:block/flower_pot_cross",
|
||||
"textures": {
|
||||
"plant": "biomesoplenty:block/rainbow_birch_sapling"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "block/leaves",
|
||||
"textures": {
|
||||
"all": "minecraft:block/birch_leaves"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "block/leaves",
|
||||
"textures": {
|
||||
"all": "biomesoplenty:block/rainbow_birch_leaves"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "block/cross",
|
||||
"textures": {
|
||||
"cross": "biomesoplenty:block/rainbow_birch_sapling"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "minecraft:item/flower_pot"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"parent": "biomesoplenty:block/rainbow_birch_leaves_inventory"
|
||||
}
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "biomesoplenty:block/rainbow_birch_sapling"
|
||||
}
|
||||
}
|
Binary file not shown.
After Width: | Height: | Size: 781 B |
Binary file not shown.
After Width: | Height: | Size: 563 B |
|
@ -242,6 +242,12 @@
|
|||
"conditions": {
|
||||
"biome": "biomesoplenty:pumpkin_patch"
|
||||
}
|
||||
},
|
||||
"rainbow_valley": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:rainbow_valley"
|
||||
}
|
||||
},
|
||||
"rainforest": {
|
||||
"trigger": "minecraft:location",
|
||||
|
|
|
@ -241,6 +241,12 @@
|
|||
"conditions": {
|
||||
"biome": "biomesoplenty:pumpkin_patch"
|
||||
}
|
||||
},
|
||||
"rainbow_valley": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:rainbow_valley"
|
||||
}
|
||||
},
|
||||
"rainforest": {
|
||||
"trigger": "minecraft:location",
|
||||
|
@ -457,6 +463,7 @@
|
|||
"pasture",
|
||||
"prairie",
|
||||
"pumpkin_patch",
|
||||
"rainbow_valley",
|
||||
"rainforest",
|
||||
"redwood_forest",
|
||||
"redwood_forest_edge",
|
||||
|
|
|
@ -0,0 +1,33 @@
|
|||
{
|
||||
"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:rainbow_birch_sapling"
|
||||
}
|
||||
],
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:survives_explosion"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,182 @@
|
|||
{
|
||||
"type": "minecraft:block",
|
||||
"pools": [
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:alternatives",
|
||||
"children": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:alternative",
|
||||
"terms": [
|
||||
{
|
||||
"condition": "minecraft:match_tool",
|
||||
"predicate": {
|
||||
"item": "minecraft:shears"
|
||||
}
|
||||
},
|
||||
{
|
||||
"condition": "minecraft:match_tool",
|
||||
"predicate": {
|
||||
"enchantments": [
|
||||
{
|
||||
"enchantment": "minecraft:silk_touch",
|
||||
"levels": {
|
||||
"min": 1
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"name": "biomesoplenty:rainbow_birch_leaves"
|
||||
},
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:survives_explosion"
|
||||
},
|
||||
{
|
||||
"condition": "minecraft:table_bonus",
|
||||
"enchantment": "minecraft:fortune",
|
||||
"chances": [
|
||||
0.05,
|
||||
0.0625,
|
||||
0.083333336,
|
||||
0.1
|
||||
]
|
||||
}
|
||||
],
|
||||
"name": "biomesoplenty:rainbow_birch_sapling"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:table_bonus",
|
||||
"enchantment": "minecraft:fortune",
|
||||
"chances": [
|
||||
0.02,
|
||||
0.022222223,
|
||||
0.025,
|
||||
0.033333335,
|
||||
0.1
|
||||
]
|
||||
}
|
||||
],
|
||||
"functions": [
|
||||
{
|
||||
"function": "minecraft:set_count",
|
||||
"count": {
|
||||
"min": 1.0,
|
||||
"max": 2.0,
|
||||
"type": "minecraft:uniform"
|
||||
}
|
||||
},
|
||||
{
|
||||
"function": "minecraft:explosion_decay"
|
||||
}
|
||||
],
|
||||
"name": "minecraft:stick"
|
||||
}
|
||||
],
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:inverted",
|
||||
"term": {
|
||||
"condition": "minecraft:alternative",
|
||||
"terms": [
|
||||
{
|
||||
"condition": "minecraft:match_tool",
|
||||
"predicate": {
|
||||
"item": "minecraft:shears"
|
||||
}
|
||||
},
|
||||
{
|
||||
"condition": "minecraft:match_tool",
|
||||
"predicate": {
|
||||
"enchantments": [
|
||||
{
|
||||
"enchantment": "minecraft:silk_touch",
|
||||
"levels": {
|
||||
"min": 1
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:survives_explosion"
|
||||
},
|
||||
{
|
||||
"condition": "minecraft:table_bonus",
|
||||
"enchantment": "minecraft:fortune",
|
||||
"chances": [
|
||||
0.005,
|
||||
0.0055555557,
|
||||
0.00625,
|
||||
0.008333334,
|
||||
0.025
|
||||
]
|
||||
}
|
||||
],
|
||||
"name": "minecraft:apple"
|
||||
}
|
||||
],
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:inverted",
|
||||
"term": {
|
||||
"condition": "minecraft:alternative",
|
||||
"terms": [
|
||||
{
|
||||
"condition": "minecraft:match_tool",
|
||||
"predicate": {
|
||||
"item": "minecraft:shears"
|
||||
}
|
||||
},
|
||||
{
|
||||
"condition": "minecraft:match_tool",
|
||||
"predicate": {
|
||||
"enchantments": [
|
||||
{
|
||||
"enchantment": "minecraft:silk_touch",
|
||||
"levels": {
|
||||
"min": 1
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
{
|
||||
"type": "minecraft:block",
|
||||
"pools": [
|
||||
{
|
||||
"rolls": 1,
|
||||
"entries": [
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
"name": "biomesoplenty:rainbow_birch_sapling"
|
||||
}
|
||||
],
|
||||
"conditions": [
|
||||
{
|
||||
"condition": "minecraft:survives_explosion"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -3,6 +3,7 @@
|
|||
"values": [
|
||||
"biomesoplenty:potted_origin_sapling",
|
||||
"biomesoplenty:potted_flowering_oak_sapling",
|
||||
"biomesoplenty:potted_rainbow_birch_sapling",
|
||||
"biomesoplenty:potted_yellow_autumn_sapling",
|
||||
"biomesoplenty:potted_orange_autumn_sapling",
|
||||
"biomesoplenty:potted_maple_sapling",
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
"values": [
|
||||
"biomesoplenty:origin_leaves",
|
||||
"biomesoplenty:flowering_oak_leaves",
|
||||
"biomesoplenty:rainbow_birch_leaves",
|
||||
"biomesoplenty:yellow_autumn_leaves",
|
||||
"biomesoplenty:orange_autumn_leaves",
|
||||
"biomesoplenty:maple_leaves",
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
"values": [
|
||||
"biomesoplenty:origin_sapling",
|
||||
"biomesoplenty:flowering_oak_sapling",
|
||||
"biomesoplenty:rainbow_birch_sapling",
|
||||
"biomesoplenty:yellow_autumn_sapling",
|
||||
"biomesoplenty:orange_autumn_sapling",
|
||||
"biomesoplenty:maple_sapling",
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
"values": [
|
||||
"biomesoplenty:origin_leaves",
|
||||
"biomesoplenty:flowering_oak_leaves",
|
||||
"biomesoplenty:rainbow_birch_leaves",
|
||||
"biomesoplenty:yellow_autumn_leaves",
|
||||
"biomesoplenty:orange_autumn_leaves",
|
||||
"biomesoplenty:maple_leaves",
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
"values": [
|
||||
"biomesoplenty:origin_sapling",
|
||||
"biomesoplenty:flowering_oak_sapling",
|
||||
"biomesoplenty:rainbow_birch_sapling",
|
||||
"biomesoplenty:yellow_autumn_sapling",
|
||||
"biomesoplenty:orange_autumn_sapling",
|
||||
"biomesoplenty:maple_sapling",
|
||||
|
|
Loading…
Reference in a new issue