summaryrefslogtreecommitdiff
path: root/src/simulation/tools/Vac.cpp
diff options
context:
space:
mode:
authorSimon Robertshaw <simon@hardwired.org.uk>2012-11-17 19:44:09 (GMT)
committer Simon Robertshaw <simon@hardwired.org.uk>2012-11-17 19:44:09 (GMT)
commit058a2edd75debbd0297f92572316daa704bd379f (patch)
treead303f091f9a08b209b91eb34a9fcad996a3de69 /src/simulation/tools/Vac.cpp
parente3594aba9e05c6865d396418c028049cda92c2f3 (diff)
parent7a21ae192fe19868539956f3fe28e62b2c7c4429 (diff)
downloadpowder-058a2edd75debbd0297f92572316daa704bd379f.zip
powder-058a2edd75debbd0297f92572316daa704bd379f.tar.gz
Merge branch 'master' of github.com:FacialTurd/PowderToypp
Diffstat (limited to 'src/simulation/tools/Vac.cpp')
-rw-r--r--src/simulation/tools/Vac.cpp22
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() {}