summaryrefslogtreecommitdiff
path: root/src/simulation/Simulation.cpp
diff options
context:
space:
mode:
authorSimon Robertshaw <simon@hardwired.org.uk>2012-07-29 11:18:07 (GMT)
committer Simon Robertshaw <simon@hardwired.org.uk>2012-07-29 11:18:07 (GMT)
commit824bde4cebd78aa04c9018171316f7533307e0ce (patch)
treed67afd50f83584e6b8a461193abd34eec929e0db /src/simulation/Simulation.cpp
parent1f914561b2049ac779d8a729d9e910c4915b280b (diff)
downloadpowder-824bde4cebd78aa04c9018171316f7533307e0ce.zip
powder-824bde4cebd78aa04c9018171316f7533307e0ce.tar.gz
clear_sim now clears air and gravity maps better, fixes issue #31
Diffstat (limited to 'src/simulation/Simulation.cpp')
-rw-r--r--src/simulation/Simulation.cpp22
1 files changed, 4 insertions, 18 deletions
diff --git a/src/simulation/Simulation.cpp b/src/simulation/Simulation.cpp
index 41af624..2ac72b2 100644
--- a/src/simulation/Simulation.cpp
+++ b/src/simulation/Simulation.cpp
@@ -1793,12 +1793,6 @@ void Simulation::clear_sim(void)
pfree = 0;
parts_lastActiveIndex = 0;
memset(pmap, 0, sizeof(pmap));
- if(pv)
- memset(pv, 0, (XRES/CELL) * (YRES/CELL)*sizeof(float));
- if(vx)
- memset(vx, 0, (XRES/CELL) * (YRES/CELL)*sizeof(float));
- if(vy)
- memset(vy, 0, (XRES/CELL) * (YRES/CELL)*sizeof(float));
if(fvx)
memset(fvx, 0, sizeof(fvx));
if(fvy)
@@ -1818,18 +1812,10 @@ void Simulation::clear_sim(void)
//memset(fire_b, 0, sizeof(fire_b));
//if(gravmask)
//memset(gravmask, 0xFFFFFFFF, (XRES/CELL)*(YRES/CELL)*sizeof(unsigned));
- if(gravy)
- memset(gravy, 0, (XRES/CELL)*(YRES/CELL)*sizeof(float));
- if(gravx)
- memset(gravx, 0, (XRES/CELL)*(YRES/CELL)*sizeof(float));
- if(gravp)
- memset(gravp, 0, (XRES/CELL)*(YRES/CELL)*sizeof(float));
- if(hv)
- for(x = 0; x < XRES/CELL; x++){
- for(y = 0; y < YRES/CELL; y++){
- hv[y][x] = 273.15f+22.0f; //Set to room temperature
- }
- }
+ if(grav)
+ grav->Clear();
+ if(air)
+ air->Clear();
}
void Simulation::init_can_move()
{