diff options
Diffstat (limited to 'src/simulation/tools/Vac.cpp')
| -rw-r--r-- | src/simulation/tools/Vac.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/simulation/tools/Vac.cpp b/src/simulation/tools/Vac.cpp new file mode 100644 index 0000000..aa319e2 --- /dev/null +++ b/src/simulation/tools/Vac.cpp @@ -0,0 +1,22 @@ +#include "simulation/Tools.h" +#include "simulation/Air.h" +//#TPT-Directive ToolClass Tool_Vac TOOL_VAC 2 +Tool_Vac::Tool_Vac() +{ + Identifier = "DEFAULT_TOOL_VAC"; + Name = "VAC"; + Colour = PIXPACK(0x303030); + Description = "Removes air pressure"; +} + +int Tool_Vac::Perform(Simulation * sim, Particle * cpart, int x, int y, float strength) +{ + sim->air->pv[y/CELL][x/CELL] -= 0.03f*strength; + if(sim->air->pv[y/CELL][x/CELL] > 256.0f) + sim->air->pv[y/CELL][x/CELL] = 256.0f; + if(sim->air->pv[y/CELL][x/CELL] < -256.0f) + sim->air->pv[y/CELL][x/CELL] = -256.0f; + return 1; +} + +Tool_Vac::~Tool_Vac() {} |
