diff options
author | madmaxoft <github@xoft.cz> | 2014-05-17 21:54:04 +0200 |
---|---|---|
committer | madmaxoft <github@xoft.cz> | 2014-05-17 21:54:04 +0200 |
commit | 7004043c6164c6b22346f94489cb823f9495738f (patch) | |
tree | 6aada4d3af59dbcb414b256b4d712cf9f203bf8a /src/Generating/Prefab.cpp | |
parent | Updated PlainsVillage prefabs to the latest Gallery contents. (diff) | |
download | cuberite-7004043c6164c6b22346f94489cb823f9495738f.tar cuberite-7004043c6164c6b22346f94489cb823f9495738f.tar.gz cuberite-7004043c6164c6b22346f94489cb823f9495738f.tar.bz2 cuberite-7004043c6164c6b22346f94489cb823f9495738f.tar.lz cuberite-7004043c6164c6b22346f94489cb823f9495738f.tar.xz cuberite-7004043c6164c6b22346f94489cb823f9495738f.tar.zst cuberite-7004043c6164c6b22346f94489cb823f9495738f.zip |
Diffstat (limited to 'src/Generating/Prefab.cpp')
-rw-r--r-- | src/Generating/Prefab.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/Generating/Prefab.cpp b/src/Generating/Prefab.cpp index 9aef7a94b..506e1c2cc 100644 --- a/src/Generating/Prefab.cpp +++ b/src/Generating/Prefab.cpp @@ -192,12 +192,20 @@ void cPrefab::AddRotatedBlockAreas(void) void cPrefab::Draw(cChunkDesc & a_Dest, const cPlacedPiece * a_Placement) const { + Draw(a_Dest, a_Placement->GetCoords(), a_Placement->GetNumCCWRotations()); +} + + + + +void cPrefab::Draw(cChunkDesc & a_Dest, const Vector3i & a_Placement, int a_NumRotations) const +{ // Draw the basic image: - Vector3i Placement = a_Placement->GetCoords(); + Vector3i Placement(a_Placement); int ChunkStartX = a_Dest.GetChunkX() * cChunkDef::Width; int ChunkStartZ = a_Dest.GetChunkZ() * cChunkDef::Width; Placement.Move(-ChunkStartX, 0, -ChunkStartZ); - const cBlockArea & Image = m_BlockArea[a_Placement->GetNumCCWRotations()]; + const cBlockArea & Image = m_BlockArea[a_NumRotations]; a_Dest.WriteBlockArea(Image, Placement.x, Placement.y, Placement.z, m_MergeStrategy); // If requested, draw the floor (from the bottom of the prefab down to the nearest non-air) |