From ab5a4d29b1beff348448c1d114697c4e9a807e1f Mon Sep 17 00:00:00 2001 From: Ellpeck Date: Wed, 29 Mar 2017 12:05:37 +0200 Subject: [PATCH] added config for crystal clusters Closes #700 --- .../mod/config/values/ConfigBoolValues.java | 1 + .../mod/gen/WorldGenLushCaves.java | 22 ++++++++++--------- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/config/values/ConfigBoolValues.java b/src/main/java/de/ellpeck/actuallyadditions/mod/config/values/ConfigBoolValues.java index c6a4dbf48..18e8469cc 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/config/values/ConfigBoolValues.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/config/values/ConfigBoolValues.java @@ -32,6 +32,7 @@ public enum ConfigBoolValues{ DO_COFFEE_GEN("Coffee Gen", ConfigCategories.WORLD_GEN, true, "Should Coffee Plants generate in the World?"), DO_LOTUS_GEN("Black Lotus Gen", ConfigCategories.WORLD_GEN, true, "Should Black Lotus generate in the World?"), DO_TREASURE_CHEST_GEN("Treasure Chest Gen", ConfigCategories.WORLD_GEN, true, "Should Treasure Chests generate in the World?"), + DO_CRYSTAL_CLUSTERS("Crystal Clusters in Lush Caves", ConfigCategories.WORLD_GEN, true, "If Crystal Clusters should generate in Lush Caves"), DO_SPIDER_DROPS("Spider Cobweb Drop", ConfigCategories.MOB_DROPS, true, "Should Cobwebs drop from spiders?"), DO_BAT_DROPS("Bat Wing Drop", ConfigCategories.MOB_DROPS, true, "Should Bat wings drop from Bats?"), diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/gen/WorldGenLushCaves.java b/src/main/java/de/ellpeck/actuallyadditions/mod/gen/WorldGenLushCaves.java index ce8ff6c7b..689f96993 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/gen/WorldGenLushCaves.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/gen/WorldGenLushCaves.java @@ -79,18 +79,20 @@ public class WorldGenLushCaves{ possiblePoses.add(pos); } } - else if(rand.nextInt(20) == 0){ - EnumFacing[] values = EnumFacing.values(); - EnumFacing side = values[rand.nextInt(values.length)]; - BlockPos posSide = pos.offset(side); + else{ + if(ConfigBoolValues.DO_CRYSTAL_CLUSTERS.isEnabled() && rand.nextInt(20) == 0){ + EnumFacing[] values = EnumFacing.values(); + EnumFacing side = values[rand.nextInt(values.length)]; + BlockPos posSide = pos.offset(side); - if(!this.checkIndestructable(world, posSide)){ - IBlockState state = world.getBlockState(pos); - IBlockState stateSide = world.getBlockState(posSide); + if(!this.checkIndestructable(world, posSide)){ + IBlockState state = world.getBlockState(pos); + IBlockState stateSide = world.getBlockState(posSide); - if(state.getBlock().isAir(state, world, pos) && stateSide.getBlock().isSideSolid(stateSide, world, posSide, side.getOpposite())){ - Block block = CRYSTAL_CLUSTERS[rand.nextInt(CRYSTAL_CLUSTERS.length)]; - world.setBlockState(pos, block.getDefaultState().withProperty(BlockDirectional.FACING, side.getOpposite()), 2); + if(state.getBlock().isAir(state, world, pos) && stateSide.getBlock().isSideSolid(stateSide, world, posSide, side.getOpposite())){ + Block block = CRYSTAL_CLUSTERS[rand.nextInt(CRYSTAL_CLUSTERS.length)]; + world.setBlockState(pos, block.getDefaultState().withProperty(BlockDirectional.FACING, side.getOpposite()), 2); + } } } }