diff options
author | Howaner <franzi.moos@googlemail.com> | 2014-09-29 14:37:01 +0200 |
---|---|---|
committer | Howaner <franzi.moos@googlemail.com> | 2014-09-29 14:37:01 +0200 |
commit | 347402d20d7ecaab3daad691eb178c5a04447d44 (patch) | |
tree | 4a3188eef6087a3029b348cbbe8c93e5d365d158 /src/Generating/StructGen.cpp | |
parent | Fixed SetDefaultRank() return value. (diff) | |
parent | Merge pull request #1479 from SphinxC0re/master (diff) | |
download | cuberite-347402d20d7ecaab3daad691eb178c5a04447d44.tar cuberite-347402d20d7ecaab3daad691eb178c5a04447d44.tar.gz cuberite-347402d20d7ecaab3daad691eb178c5a04447d44.tar.bz2 cuberite-347402d20d7ecaab3daad691eb178c5a04447d44.tar.lz cuberite-347402d20d7ecaab3daad691eb178c5a04447d44.tar.xz cuberite-347402d20d7ecaab3daad691eb178c5a04447d44.tar.zst cuberite-347402d20d7ecaab3daad691eb178c5a04447d44.zip |
Diffstat (limited to 'src/Generating/StructGen.cpp')
-rw-r--r-- | src/Generating/StructGen.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/Generating/StructGen.cpp b/src/Generating/StructGen.cpp index 731324b0d..c23a72621 100644 --- a/src/Generating/StructGen.cpp +++ b/src/Generating/StructGen.cpp @@ -272,13 +272,14 @@ void cStructGenOreNests::GenFinish(cChunkDesc & a_ChunkDesc) int ChunkX = a_ChunkDesc.GetChunkX(); int ChunkZ = a_ChunkDesc.GetChunkZ(); cChunkDef::BlockTypes & BlockTypes = a_ChunkDesc.GetBlockTypes(); + cChunkDesc::BlockNibbleBytes & BlockMetas = a_ChunkDesc.GetBlockMetasUncompressed(); int seq = 1; // Generate the ores from the ore list. for (OreList::const_iterator itr = m_OreList.begin(); itr != m_OreList.end(); ++itr) { - GenerateOre(ChunkX, ChunkZ, itr->BlockType, itr->MaxHeight, itr->NumNests, itr->NestSize, BlockTypes, seq); + GenerateOre(ChunkX, ChunkZ, itr->BlockType, itr->BlockMeta, itr->MaxHeight, itr->NumNests, itr->NestSize, BlockTypes, BlockMetas, seq); seq++; } } @@ -287,7 +288,7 @@ void cStructGenOreNests::GenFinish(cChunkDesc & a_ChunkDesc) -void cStructGenOreNests::GenerateOre(int a_ChunkX, int a_ChunkZ, BLOCKTYPE a_OreType, int a_MaxHeight, int a_NumNests, int a_NestSize, cChunkDef::BlockTypes & a_BlockTypes, int a_Seq) +void cStructGenOreNests::GenerateOre(int a_ChunkX, int a_ChunkZ, BLOCKTYPE a_OreType, NIBBLETYPE a_BlockMeta, int a_MaxHeight, int a_NumNests, int a_NestSize, cChunkDef::BlockTypes & a_BlockTypes, cChunkDesc::BlockNibbleBytes & a_BlockMetas, int a_Seq) { // This function generates several "nests" of ore, each nest consisting of number of ore blocks relatively adjacent to each other. // It does so by making a random XYZ walk and adding ore along the way in cuboids of different (random) sizes @@ -341,6 +342,7 @@ void cStructGenOreNests::GenerateOre(int a_ChunkX, int a_ChunkZ, BLOCKTYPE a_Ore if (a_BlockTypes[Index] == m_ToReplace) { a_BlockTypes[Index] = a_OreType; + a_BlockMetas[Index] = a_BlockMeta; } Num++; } // for z |