diff --git a/src/Renderer.cpp b/src/Renderer.cpp index c8f301fe1..c1fafaa53 100644 --- a/src/Renderer.cpp +++ b/src/Renderer.cpp @@ -780,15 +780,6 @@ void Renderer::render_parts() cola = 255; if(pixel_mode & (FIREMODE | PMODE_GLOW)) pixel_mode = (pixel_mode & ~(FIREMODE|PMODE_GLOW)) | PMODE_BLUR; } - else if (colour_mode & COLOUR_GRAD) - { - float frequency = 0.05; - int q = sim->parts[i].temp-40; - colr = sin(frequency*q) * 16 + colr; - colg = sin(frequency*q) * 16 + colg; - colb = sin(frequency*q) * 16 + colb; - if(pixel_mode & (FIREMODE | PMODE_GLOW)) pixel_mode = (pixel_mode & ~(FIREMODE|PMODE_GLOW)) | PMODE_BLUR; - } else if(colour_mode & COLOUR_BASC) { colr = PIXR(ptypes[t].pcolors); @@ -798,7 +789,7 @@ void Renderer::render_parts() } //Apply decoration colour - if(!colour_mode) + if(!(colour_mode & ~COLOUR_GRAD)) { if(!(pixel_mode & NO_DECO) && decorations_enable) { @@ -815,6 +806,16 @@ void Renderer::render_parts() } } + if (colour_mode & COLOUR_GRAD) + { + float frequency = 0.05; + int q = sim->parts[i].temp-40; + colr = sin(frequency*q) * 16 + colr; + colg = sin(frequency*q) * 16 + colg; + colb = sin(frequency*q) * 16 + colb; + if(pixel_mode & (FIREMODE | PMODE_GLOW)) pixel_mode = (pixel_mode & ~(FIREMODE|PMODE_GLOW)) | PMODE_BLUR; + } + #ifndef OGLR //All colours are now set, check ranges if(colr>255) colr = 255;