From fbabf9ee8c7f0940e6f7d01e0362849bf4f6396b Mon Sep 17 00:00:00 2001 From: "madmaxoft@gmail.com" Date: Fri, 8 Jun 2012 12:16:39 +0000 Subject: Sugarcane and Pumpkins get placed (quite rarely) in the SprinkleSmallFoliage FinishGen git-svn-id: http://mc-server.googlecode.com/svn/trunk@576 0a769ca7-a7f5-676a-18bf-c427514a06d6 --- source/cChunkGenerator.cpp | 36 +++++++++++++++++++++--------------- 1 file changed, 21 insertions(+), 15 deletions(-) (limited to 'source/cChunkGenerator.cpp') diff --git a/source/cChunkGenerator.cpp b/source/cChunkGenerator.cpp index d595f333f..7a1e4ad14 100644 --- a/source/cChunkGenerator.cpp +++ b/source/cChunkGenerator.cpp @@ -224,19 +224,23 @@ void cChunkGenerator::InitHeightGen(cIniFile & a_IniFile) + + BLOCKTYPE ResolveBlock(AString BlockType, BLOCKTYPE DefaultBlock) { - int Block = BlockStringToType(BlockType); - if(Block < 0) - { - LOGWARN("[Generator] Could not parse block value \"%s\". Using default.", BlockType.c_str()); - return DefaultBlock; - } - return (BLOCKTYPE) Block; + int Block = BlockStringToType(BlockType); + if(Block < 0) + { + LOGWARN("[Generator] Could not parse block value \"%s\". Using default.", BlockType.c_str()); + return DefaultBlock; + } + return (BLOCKTYPE) Block; } + + void cChunkGenerator::InitCompositionGen(cIniFile & a_IniFile) { AString CompoGenName = a_IniFile.GetValue("Generator", "CompositionGen", ""); @@ -271,14 +275,16 @@ void cChunkGenerator::InitCompositionGen(cIniFile & a_IniFile) int SeaLevel = a_IniFile.GetValueI("Generator", "ClassicSeaLevel", 60); int BeachHeight = a_IniFile.GetValueI("Generator", "ClassicBeachHeight", 2); int BeachDepth = a_IniFile.GetValueI("Generator", "ClassicBeachDepth", 4); - BLOCKTYPE BlockTop = ResolveBlock(a_IniFile.GetValue("Generator", "ClassicBlockTop", "grass"), E_BLOCK_GRASS); - BLOCKTYPE BlockMiddle = ResolveBlock(a_IniFile.GetValue("Generator", "ClassicBlockMiddle", "dirt"), E_BLOCK_DIRT); - BLOCKTYPE BlockBottom = ResolveBlock(a_IniFile.GetValue("Generator", "ClassicBlockBottom", "stone"), E_BLOCK_STONE); - BLOCKTYPE BlockBeach = ResolveBlock(a_IniFile.GetValue("Generator", "ClassicBlockBeach", "sand"), E_BLOCK_SAND); - BLOCKTYPE BlockBeachBottom = ResolveBlock(a_IniFile.GetValue("Generator", "ClassicBlockBeachBottom", "sandstone"), E_BLOCK_SANDSTONE); - BLOCKTYPE BlockSea = ResolveBlock(a_IniFile.GetValue("Generator", "ClassicBlockSea", "9"), E_BLOCK_STATIONARY_WATER); - m_CompositionGen = new cCompoGenClassic(SeaLevel, BeachHeight, BeachDepth, BlockTop, BlockMiddle, BlockBottom, BlockBeach, - BlockBeachBottom, BlockSea); + BLOCKTYPE BlockTop = ResolveBlock(a_IniFile.GetValue("Generator", "ClassicBlockTop", "grass"), E_BLOCK_GRASS); + BLOCKTYPE BlockMiddle = ResolveBlock(a_IniFile.GetValue("Generator", "ClassicBlockMiddle", "dirt"), E_BLOCK_DIRT); + BLOCKTYPE BlockBottom = ResolveBlock(a_IniFile.GetValue("Generator", "ClassicBlockBottom", "stone"), E_BLOCK_STONE); + BLOCKTYPE BlockBeach = ResolveBlock(a_IniFile.GetValue("Generator", "ClassicBlockBeach", "sand"), E_BLOCK_SAND); + BLOCKTYPE BlockBeachBottom = ResolveBlock(a_IniFile.GetValue("Generator", "ClassicBlockBeachBottom", "sandstone"), E_BLOCK_SANDSTONE); + BLOCKTYPE BlockSea = ResolveBlock(a_IniFile.GetValue("Generator", "ClassicBlockSea", "9"), E_BLOCK_STATIONARY_WATER); + m_CompositionGen = new cCompoGenClassic( + SeaLevel, BeachHeight, BeachDepth, BlockTop, BlockMiddle, BlockBottom, BlockBeach, + BlockBeachBottom, BlockSea + ); } else { -- cgit v1.2.3