summaryrefslogtreecommitdiffstats
path: root/src/Generating/PieceGenerator.cpp
diff options
context:
space:
mode:
authortycho <work.tycho@gmail.com>2015-05-19 14:34:52 +0200
committertycho <work.tycho@gmail.com>2015-05-19 14:34:52 +0200
commit03c75943ead4d7fe12a07bbdea18b87f85879b0f (patch)
treea3b26e81403894335a5a18e299b9abd252aa7cc4 /src/Generating/PieceGenerator.cpp
parentProperly fix cFile Warnings (diff)
downloadcuberite-03c75943ead4d7fe12a07bbdea18b87f85879b0f.tar
cuberite-03c75943ead4d7fe12a07bbdea18b87f85879b0f.tar.gz
cuberite-03c75943ead4d7fe12a07bbdea18b87f85879b0f.tar.bz2
cuberite-03c75943ead4d7fe12a07bbdea18b87f85879b0f.tar.lz
cuberite-03c75943ead4d7fe12a07bbdea18b87f85879b0f.tar.xz
cuberite-03c75943ead4d7fe12a07bbdea18b87f85879b0f.tar.zst
cuberite-03c75943ead4d7fe12a07bbdea18b87f85879b0f.zip
Diffstat (limited to 'src/Generating/PieceGenerator.cpp')
-rw-r--r--src/Generating/PieceGenerator.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/Generating/PieceGenerator.cpp b/src/Generating/PieceGenerator.cpp
index 97aa646fc..b58a5394d 100644
--- a/src/Generating/PieceGenerator.cpp
+++ b/src/Generating/PieceGenerator.cpp
@@ -385,7 +385,7 @@ cPlacedPiece * cPieceGenerator::PlaceStartingPiece(int a_BlockX, int a_BlockY, i
else
{
// All pieces returned zero weight, but we need one to start. Choose with equal chance:
- StartingPiece = StartingPieces[rnd % StartingPieces.size()];
+ StartingPiece = StartingPieces[static_cast<size_t>(rnd) % StartingPieces.size()];
}
rnd = rnd >> 16;
@@ -561,7 +561,10 @@ void cPieceGenerator::DebugConnectorPool(const cPieceGenerator::cFreeConnectors
{
printf(" Connector pool: " SIZE_T_FMT " items\n", a_ConnectorPool.size() - a_NumProcessed);
size_t idx = 0;
- for (cPieceGenerator::cFreeConnectors::const_iterator itr = a_ConnectorPool.begin() + a_NumProcessed, end = a_ConnectorPool.end(); itr != end; ++itr, ++idx)
+
+ typedef cPieceGenerator::cFreeConnectors::difference_type difType;
+
+ for (auto itr = a_ConnectorPool.cbegin() + static_cast<difType>(a_NumProcessed), end = a_ConnectorPool.cend(); itr != end; ++itr, ++idx)
{
printf(" " SIZE_T_FMT ": {%d, %d, %d}, type %d, direction %s, depth %d\n",
idx,
@@ -672,7 +675,10 @@ void cBFSPieceGenerator::PlacePieces(int a_BlockX, int a_BlockY, int a_BlockZ, i
NumProcessed++;
if (NumProcessed > 1000)
{
- ConnectorPool.erase(ConnectorPool.begin(), ConnectorPool.begin() + NumProcessed);
+
+ typedef cPieceGenerator::cFreeConnectors::difference_type difType;
+
+ ConnectorPool.erase(ConnectorPool.begin(), ConnectorPool.begin() + static_cast<difType>(NumProcessed));
NumProcessed = 0;
}
}