diff --git a/common/const.h b/common/const.h index a7e3d08b..fe4469fa 100644 --- a/common/const.h +++ b/common/const.h @@ -717,6 +717,7 @@ enum kRenderFxExplode, // Scale up really big! kRenderFxGlowShell, // Glowing Shell kRenderFxClampMinScale, // Keep this sprite from getting very small (SPRITES only!) + kRenderFxLightMultiplier, }; typedef int func_t; diff --git a/ref/gl/gl_studio.c b/ref/gl/gl_studio.c index 8932ae51..2b3de57b 100644 --- a/ref/gl/gl_studio.c +++ b/ref/gl/gl_studio.c @@ -1435,6 +1435,13 @@ void R_StudioDynamicLight( cl_entity_t *ent, alight_t *plight ) } } + if( ent->curstate.renderfx == kRenderFxLightMultiplier && ent->curstate.iuser4 != 10 ) + { + light.r *= ent->curstate.iuser4 / 10.0f; + light.g *= ent->curstate.iuser4 / 10.0f; + light.b *= ent->curstate.iuser4 / 10.0f; + } + VectorSet( finalLight, light.r, light.g, light.b ); ent->cvFloorColor = light;