diff options
Diffstat (limited to 'src/elements/plsm.cpp')
| -rw-r--r-- | src/elements/plsm.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/elements/plsm.cpp b/src/elements/plsm.cpp new file mode 100644 index 0000000..c6f7c20 --- /dev/null +++ b/src/elements/plsm.cpp @@ -0,0 +1,20 @@ +#include "element.h" +#include "hmap.h" + +int graphics_PLSM(GRAPHICS_FUNC_ARGS) +{ + int caddress = restrict_flt(restrict_flt((float)cpart->life, 0.0f, 200.0f)*3, 0.0f, (200.0f*3)-3); + *colr = (unsigned char)ren->plasma_data[caddress]; + *colg = (unsigned char)ren->plasma_data[caddress+1]; + *colb = (unsigned char)ren->plasma_data[caddress+2]; + + *firea = 255; + *firer = *colr; + *fireg = *colg; + *fireb = *colb; + + *pixel_mode = PMODE_GLOW | PMODE_ADD; //Clear default, don't draw pixel + *pixel_mode |= FIRE_ADD; + //Returning 0 means dynamic, do not cache + return 0; +} |
