diff options
Diffstat (limited to 'src/graphics/Renderer.cpp')
| -rw-r--r-- | src/graphics/Renderer.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/graphics/Renderer.cpp b/src/graphics/Renderer.cpp index 9c99bfa..3550b41 100644 --- a/src/graphics/Renderer.cpp +++ b/src/graphics/Renderer.cpp @@ -1311,6 +1311,23 @@ void Renderer::render_parts() pixel_mode = PMODE_FLAT; } + if(sim->parts[i].sld) { + int pat; + colr = (colr*15) >> 4; + colg = (colr*15) >> 4; + colb = (colr*15) >> 4; + switch(sim->parts[i].sld & 3) { + case 0: pat = ((nx + ny) & 7) < 4; break; + case 1: pat = ((nx - ny) & 7) < 4; break; + case 2: pat = (nx & 7) < 4; break; + case 3: pat = (ny & 7) < 4; break; + } + if(pat) { + colr += 16; + colg += 16; + } + } + //Apply decoration colour if(!(colour_mode & ~COLOUR_GRAD) && decorations_enable && deca) { |
