Cuberite
A lightweight, fast and extensible game server for Minecraft
VaporizeFluidSimulator.h
Go to the documentation of this file.
1 
2 // VaporizeFluidSimulator.h
3 
4 // Declares the cVaporizeFluidSimulator class representing a fluid simulator that replaces all fluid blocks with air
5 // Useful for water simulation in the Nether
6 
7 
8 
9 
10 
11 #pragma once
12 
13 #include "FluidSimulator.h"
14 
15 
16 
17 
18 
20  public cFluidSimulator
21 {
23 
24 public:
25 
26  using Super::Super;
27 
28 private:
29 
30  virtual void SimulateChunk(std::chrono::milliseconds a_Dt, int a_ChunkX, int a_ChunkZ, cChunk * a_Chunk) override;
31  virtual void AddBlock(cChunk & a_Chunk, Vector3i a_Position, BLOCKTYPE a_Block) override;
32  virtual cFluidSimulatorData * CreateChunkData(void) override { return nullptr; }
33 } ;
unsigned char BLOCKTYPE
The datatype used by blockdata.
Definition: ChunkDef.h:41
Definition: Chunk.h:36
This is a base class for all fluid simulator data classes.
cFluidSimulator(cWorld &a_World, BLOCKTYPE a_Fluid, BLOCKTYPE a_StationaryFluid)
cSimulator Super
Base class for all block-based physics simulators (such as fluid, fire, falling blocks etc....
Definition: Simulator.h:22
virtual void AddBlock(cChunk &a_Chunk, Vector3i a_Position, BLOCKTYPE a_Block) override
Called to simulate a new block.
virtual cFluidSimulatorData * CreateChunkData(void) override
Creates a ChunkData object for the simulator to use.
virtual void SimulateChunk(std::chrono::milliseconds a_Dt, int a_ChunkX, int a_ChunkZ, cChunk *a_Chunk) override