From 412c21a22cd67971bc27ee3fd022e1565eb48e69 Mon Sep 17 00:00:00 2001 From: "madmaxoft@gmail.com" Date: Fri, 4 Jan 2013 05:21:07 +0000 Subject: Floody fluid simulator can create sourceblocks (configurable in World.ini) git-svn-id: http://mc-server.googlecode.com/svn/trunk@1119 0a769ca7-a7f5-676a-18bf-c427514a06d6 --- source/Simulator/FloodyFluidSimulator.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'source/Simulator/FloodyFluidSimulator.h') diff --git a/source/Simulator/FloodyFluidSimulator.h b/source/Simulator/FloodyFluidSimulator.h index d3fa85fce..dc9ff2557 100644 --- a/source/Simulator/FloodyFluidSimulator.h +++ b/source/Simulator/FloodyFluidSimulator.h @@ -29,10 +29,11 @@ class cFloodyFluidSimulator : typedef cDelayedFluidSimulator super; public: - cFloodyFluidSimulator(cWorld * a_World, BLOCKTYPE a_Fluid, BLOCKTYPE a_StationaryFluid, NIBBLETYPE a_Falloff, int a_TickDelay); + cFloodyFluidSimulator(cWorld * a_World, BLOCKTYPE a_Fluid, BLOCKTYPE a_StationaryFluid, NIBBLETYPE a_Falloff, int a_TickDelay, int a_NumNeighborsForSource); protected: NIBBLETYPE m_Falloff; + int m_NumNeighborsForSource; // cDelayedFluidSimulator overrides: virtual void SimulateBlock(int a_BlockX, int a_BlockY, int a_BlockZ) override; @@ -40,8 +41,11 @@ protected: /// Checks tributaries, if not fed, decreases the block's level and returns true bool CheckTributaries(int a_BlockX, int a_BlockY, int a_BlockZ, const cBlockArea & a_Area, NIBBLETYPE a_MyMeta); - /// Spreads into the specified block, if the block there allows. a_Area is for checking. + /// Spreads into the specified block, if the blocktype there allows. a_Area is for checking. void SpreadToNeighbor(int a_BlockX, int a_BlockY, int a_BlockZ, const cBlockArea & a_Area, NIBBLETYPE a_NewMeta); + + /// Checks if there are enough neighbors to create a source at the coords specified; turns into source and returns true if so + bool CheckNeighborsForSource(int a_BlockX, int a_BlockY, int a_BlockZ, const cBlockArea & a_Area); } ; -- cgit v1.2.3