From 9f77572fb0d045229556314ba9d7aa0f52ad5635 Mon Sep 17 00:00:00 2001 From: "lapayo94@gmail.com" Date: Mon, 26 Dec 2011 20:57:12 +0000 Subject: - improved Simulator system -> Manager handles all ticks -> advantage: Much easier to add new simulators, because you only have to register them in the manager MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - moved sand and gravel simulation to a Simulator-class (cSandSimulator) - Made Squid a little bit more funny and realistic, because it dies now when it´s not in water -Escaping mobs run now faster than normal (They just walked away before :D) git-svn-id: http://mc-server.googlecode.com/svn/trunk@125 0a769ca7-a7f5-676a-18bf-c427514a06d6 --- source/cChunk.cpp | 27 +-------------------------- 1 file changed, 1 insertion(+), 26 deletions(-) (limited to 'source/cChunk.cpp') diff --git a/source/cChunk.cpp b/source/cChunk.cpp index 4eeb5c5b8..e0322dc91 100644 --- a/source/cChunk.cpp +++ b/source/cChunk.cpp @@ -257,8 +257,7 @@ void cChunk::Tick(float a_Dt) int wX, wY, wZ; PositionToWorldPosition(X, Y, Z, wX, wY, wZ); - m_World->GetWaterSimulator()->WakeUp( wX, wY, wZ ); - m_World->GetLavaSimulator()->WakeUp( wX, wY, wZ ); + m_World->GetSimulatorManager()->WakeUp(wX, wY, wZ); if (isRedstone) { cRedstone Redstone(m_World); Redstone.ChangeRedstone( (X+m_PosX*16), (Y+m_PosY*16), (Z+m_PosZ*16), false ); @@ -306,30 +305,6 @@ void cChunk::Tick(float a_Dt) } } break; - case E_BLOCK_STATIONARY_WATER: - case E_BLOCK_WATER: - - break; - case E_BLOCK_GRAVEL: - case E_BLOCK_SAND: - { - char BottomBlock = GetBlock( X, Y-1, Z ); - if( BottomBlock == E_BLOCK_AIR || IsBlockWater(BottomBlock) || IsBlockLava(BottomBlock) ) - { - SetBlock( X, Y, Z, E_BLOCK_AIR, 0 ); - SetBlock( X, Y-1, Z, BlockID, 0 ); - - int wX, wY, wZ; - - PositionToWorldPosition(X, Y, Z, wX, wY, wZ); - - m_World->GetWaterSimulator()->WakeUp( wX, wY, wZ ); - m_World->GetLavaSimulator()->WakeUp( wX, wY, wZ ); - m_World->GetWaterSimulator()->WakeUp( wX, wY - 1, wZ ); - m_World->GetLavaSimulator()->WakeUp( wX, wY - 1, wZ ); - } - } - break; default: break; }; -- cgit v1.2.3