From 32880153ab76830311d8a1db3a157cd5ac6e5d9c Mon Sep 17 00:00:00 2001 From: "madmaxoft@gmail.com" Date: Wed, 8 Feb 2012 12:36:54 +0000 Subject: MTRand class is not created in each tick, therefore much improving tick-thread time (now uses ~5 % CPU instead of one full core) git-svn-id: http://mc-server.googlecode.com/svn/trunk@245 0a769ca7-a7f5-676a-18bf-c427514a06d6 --- source/cChunk.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'source/cChunk.cpp') diff --git a/source/cChunk.cpp b/source/cChunk.cpp index edd39a378..6bf5172ae 100644 --- a/source/cChunk.cpp +++ b/source/cChunk.cpp @@ -190,7 +190,7 @@ void cChunk::Initialize() -void cChunk::Tick(float a_Dt) +void cChunk::Tick(float a_Dt, MTRand & a_TickRandom) { if (m_bCalculateLighting) { @@ -356,11 +356,10 @@ void cChunk::Tick(float a_Dt) }; } - MTRand r1; // Tick dem blocks - int RandomX = r1.randInt(); - int RandomY = r1.randInt(); - int RandomZ = r1.randInt(); + int RandomX = a_TickRandom.randInt(); + int RandomY = a_TickRandom.randInt(); + int RandomZ = a_TickRandom.randInt(); for(int i = 0; i < 50; i++) { @@ -426,6 +425,10 @@ void cChunk::Tick(float a_Dt) } } + + + + char cChunk::GetHeight( int a_X, int a_Z ) { if( a_X >= 0 && a_X < 16 && a_Z >= 0 && a_Z < 16 ) -- cgit v1.2.3