summaryrefslogtreecommitdiffstats
path: root/src/Blocks/BlockFluid.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Blocks/BlockFluid.h')
-rw-r--r--src/Blocks/BlockFluid.h72
1 files changed, 39 insertions, 33 deletions
diff --git a/src/Blocks/BlockFluid.h b/src/Blocks/BlockFluid.h
index 05a7c0d62..70aa57a0d 100644
--- a/src/Blocks/BlockFluid.h
+++ b/src/Blocks/BlockFluid.h
@@ -7,7 +7,7 @@
-class cBlockFluidHandler:
+class cBlockFluidHandler :
public cBlockHandler
{
using Super = cBlockHandler;
@@ -16,6 +16,10 @@ public:
using Super::Super;
+protected:
+
+ ~cBlockFluidHandler() = default;
+
private:
virtual cItems ConvertToPickups(NIBBLETYPE a_BlockMeta, const cEntity * a_Digger, const cItem * a_Tool) const override
@@ -32,44 +36,13 @@ private:
{
return true;
}
-
-
-
-
-
- virtual ColourID GetMapBaseColourID(NIBBLETYPE a_Meta) const override
- {
- UNUSED(a_Meta);
- if (IsBlockWater(m_BlockType))
- {
- return 12;
- }
- ASSERT(!"Unhandled blocktype in fluid/water handler!");
- return 0;
- }
-
-
-
-
-
- virtual bool CanSustainPlant(BLOCKTYPE a_Plant) const override
- {
- return (
- (a_Plant == E_BLOCK_BEETROOTS) ||
- (a_Plant == E_BLOCK_CROPS) ||
- (a_Plant == E_BLOCK_CARROTS) ||
- (a_Plant == E_BLOCK_POTATOES) ||
- (a_Plant == E_BLOCK_MELON_STEM) ||
- (a_Plant == E_BLOCK_PUMPKIN_STEM)
- );
- }
} ;
-class cBlockLavaHandler:
+class cBlockLavaHandler final :
public cBlockFluidHandler
{
using Super = cBlockFluidHandler;
@@ -173,3 +146,36 @@ private:
+
+class cBlockWaterHandler final :
+ public cBlockFluidHandler
+{
+public:
+
+ using cBlockFluidHandler::cBlockFluidHandler;
+
+private:
+
+ virtual ColourID GetMapBaseColourID(NIBBLETYPE a_Meta) const override
+ {
+ UNUSED(a_Meta);
+ if (IsBlockWater(m_BlockType))
+ {
+ return 12;
+ }
+ ASSERT(!"Unhandled blocktype in fluid/water handler!");
+ return 0;
+ }
+
+ virtual bool CanSustainPlant(BLOCKTYPE a_Plant) const override
+ {
+ return (
+ (a_Plant == E_BLOCK_BEETROOTS) ||
+ (a_Plant == E_BLOCK_CROPS) ||
+ (a_Plant == E_BLOCK_CARROTS) ||
+ (a_Plant == E_BLOCK_POTATOES) ||
+ (a_Plant == E_BLOCK_MELON_STEM) ||
+ (a_Plant == E_BLOCK_PUMPKIN_STEM)
+ );
+ }
+};