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/cWorld.h | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'source/cWorld.h') diff --git a/source/cWorld.h b/source/cWorld.h index ec30db956..44b89b5ab 100644 --- a/source/cWorld.h +++ b/source/cWorld.h @@ -12,10 +12,13 @@ enum ENUM_ITEM_ID; #include #include +#include "cSimulatorManager.h" + class cPacket; class cRedstone; class cWaterSimulator; class cLavaSimulator; +class cSandSimulator; class cChunkMap; class cItem; class cCriticalSection; @@ -24,6 +27,8 @@ class cClientHandle; class cChunk; class cEntity; class cBlockEntity; + + class cWorld //tolua_export { //tolua_export public: @@ -92,8 +97,9 @@ public: const double & GetSpawnY(); //tolua_export const double & GetSpawnZ() { return m_SpawnZ; } //tolua_export - cWaterSimulator *GetWaterSimulator() { return m_WaterSimulator; } - cLavaSimulator *GetLavaSimulator() { return m_LavaSimulator; } + inline cSimulatorManager *GetSimulatorManager() { return m_SimulatorManager; } + inline cWaterSimulator *GetWaterSimulator() { return m_WaterSimulator; } + inline cLavaSimulator *GetLavaSimulator() { return m_LavaSimulator; } cBlockEntity* GetBlockEntity( int a_X, int a_Y, int a_Z ); //tolua_export @@ -173,8 +179,11 @@ private: int m_GameMode; float m_WorldTimeFraction; // When this > 1.f m_WorldTime is incremented by 20 + cSimulatorManager *m_SimulatorManager; + cSandSimulator *m_SandSimulator; cWaterSimulator* m_WaterSimulator; cLavaSimulator* m_LavaSimulator; + cCriticalSection* m_ClientHandleCriticalSection; cCriticalSection* m_EntitiesCriticalSection; -- cgit v1.2.3