summaryrefslogtreecommitdiff
path: root/src/graphics/Renderer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/graphics/Renderer.cpp')
-rw-r--r--src/graphics/Renderer.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/graphics/Renderer.cpp b/src/graphics/Renderer.cpp
index 2924503..f07d548 100644
--- a/src/graphics/Renderer.cpp
+++ b/src/graphics/Renderer.cpp
@@ -41,6 +41,7 @@ void Renderer::RenderBegin()
render_parts();
render_fire();
DrawWalls();
+ draw_other();
draw_grav_zones();
DrawSigns();
@@ -84,6 +85,7 @@ void Renderer::RenderBegin()
}
DrawWalls();
+ draw_other();
draw_grav_zones();
DrawSigns();
if(display_mode & DISPLAY_WARP)
@@ -127,6 +129,7 @@ void Renderer::RenderBegin()
}
DrawWalls();
+ draw_other();
draw_grav_zones();
DrawSigns();
@@ -2025,10 +2028,10 @@ void Renderer::render_parts()
void Renderer::draw_other() // EMP effect
{
int i, j;
- //if (emp_decor>0 && !sys_pause) emp_decor-=emp_decor/25+2; TODO: Render should render only, do not change simulation state
- if (emp_decor>40) emp_decor=40;
+ int emp_decor = sim->emp_decor;
+ if (emp_decor>40) emp_decor = 40;
if (emp_decor<0) emp_decor = 0;
- if (!(display_mode & DISPLAY_EFFE)) // no in nothing mode
+ if (!(render_mode & EFFECT)) // not in nothing mode
return;
if (emp_decor>0)
{
@@ -2485,7 +2488,6 @@ void Renderer::CompileRenderMode()
void Renderer::ClearAccumulation()
{
- emp_decor = 0;
std::fill(fire_r[0]+0, fire_r[(YRES/CELL)-1]+((XRES/CELL)-1), 0);
std::fill(fire_g[0]+0, fire_g[(YRES/CELL)-1]+((XRES/CELL)-1), 0);
std::fill(fire_b[0]+0, fire_b[(YRES/CELL)-1]+((XRES/CELL)-1), 0);