summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSimon Robertshaw <simon@hardwired.org.uk>2012-04-05 22:17:24 (GMT)
committer Simon Robertshaw <simon@hardwired.org.uk>2012-04-05 22:17:24 (GMT)
commit2976936cfd31f67c3ce6c0813abfa40dacba485e (patch)
treeeeecc01347f9b9ea814e2ce19f6c5af88f3174ed /src
parent95c40d9d1e424fdc40ae30f39567f3959fa391ba (diff)
downloadpowder-2976936cfd31f67c3ce6c0813abfa40dacba485e.zip
powder-2976936cfd31f67c3ce6c0813abfa40dacba485e.tar.gz
Glowing BRAY
Diffstat (limited to 'src')
-rw-r--r--src/elements/newgraphics.c2
-rw-r--r--src/graphics.c29
2 files changed, 16 insertions, 15 deletions
diff --git a/src/elements/newgraphics.c b/src/elements/newgraphics.c
index 8cc7822..af332fb 100644
--- a/src/elements/newgraphics.c
+++ b/src/elements/newgraphics.c
@@ -321,7 +321,7 @@ int graphics_BRAY(GRAPHICS_FUNC_ARGS)
}
*cola = trans;
*pixel_mode &= ~PMODE;
- *pixel_mode |= PMODE_BLEND;
+ *pixel_mode |= PMODE_BLEND | PMODE_GLOW;
return 0;
}
int graphics_SWCH(GRAPHICS_FUNC_ARGS)
diff --git a/src/graphics.c b/src/graphics.c
index 8f4a8de..93bea81 100644
--- a/src/graphics.c
+++ b/src/graphics.c
@@ -1877,7 +1877,7 @@ void render_parts(pixel *vid)
if(pixel_mode & PMODE_BLUR && !(render_mode & PMODE_BLUR))
pixel_mode |= PMODE_FLAT;
if(pixel_mode & PMODE_GLOW && !(render_mode & PMODE_GLOW))
- pixel_mode |= PMODE_FLAT;
+ pixel_mode |= PMODE_BLEND;
if (render_mode & PMODE_BLOB)
pixel_mode |= PMODE_BLOB;
@@ -2150,6 +2150,7 @@ void render_parts(pixel *vid)
}
if(pixel_mode & PMODE_GLOW)
{
+ int cola1 = (5*cola)/255;
#ifdef OGLR
glowV[cglowV++] = nx;
glowV[cglowV++] = ny;
@@ -2159,24 +2160,24 @@ void render_parts(pixel *vid)
glowC[cglowC++] = 1.0f;
cglow++;
#else
- addpixel(vid, nx, ny, colr, colg, colb, 192);
- addpixel(vid, nx+1, ny, colr, colg, colb, 96);
- addpixel(vid, nx-1, ny, colr, colg, colb, 96);
- addpixel(vid, nx, ny+1, colr, colg, colb, 96);
- addpixel(vid, nx, ny-1, colr, colg, colb, 96);
+ addpixel(vid, nx, ny, colr, colg, colb, (192*cola)/255);
+ addpixel(vid, nx+1, ny, colr, colg, colb, (96*cola)/255);
+ addpixel(vid, nx-1, ny, colr, colg, colb, (96*cola)/255);
+ addpixel(vid, nx, ny+1, colr, colg, colb, (96*cola)/255);
+ addpixel(vid, nx, ny-1, colr, colg, colb, (96*cola)/255);
for (x = 1; x < 6; x++) {
- addpixel(vid, nx, ny-x, colr, colg, colb, 5);
- addpixel(vid, nx, ny+x, colr, colg, colb, 5);
- addpixel(vid, nx-x, ny, colr, colg, colb, 5);
- addpixel(vid, nx+x, ny, colr, colg, colb, 5);
+ addpixel(vid, nx, ny-x, colr, colg, colb, cola1);
+ addpixel(vid, nx, ny+x, colr, colg, colb, cola1);
+ addpixel(vid, nx-x, ny, colr, colg, colb, cola1);
+ addpixel(vid, nx+x, ny, colr, colg, colb, cola1);
for (y = 1; y < 6; y++) {
if(x + y > 7)
continue;
- addpixel(vid, nx+x, ny-y, colr, colg, colb, 5);
- addpixel(vid, nx-x, ny+y, colr, colg, colb, 5);
- addpixel(vid, nx+x, ny+y, colr, colg, colb, 5);
- addpixel(vid, nx-x, ny-y, colr, colg, colb, 5);
+ addpixel(vid, nx+x, ny-y, colr, colg, colb, cola1);
+ addpixel(vid, nx-x, ny+y, colr, colg, colb, cola1);
+ addpixel(vid, nx+x, ny+y, colr, colg, colb, cola1);
+ addpixel(vid, nx-x, ny-y, colr, colg, colb, cola1);
}
}
#endif