Is there a node that changes value based on ray brightness?
You set the physical properties of a material(s) and let the engine figure out how it effects light which when hitting camera creates the image. Not the other way around - how light affects material - that would mean that material could change (from metal to glass for example) under a light source.

The tail-light cover is made from glass, so for start use a glass shader with a light red color and a warm light source behind.

By modelling the glass thickness, you influence the travel distance of rays through the glass - the more distance the darker and more red the ray will be. The problem is that the default glass shader doesn't behave this way and doesn't absorb the light intensity while it travels through the glass volume.

For this you need to use a volumetric absorption shader with the glass.



PS. There are ways to cheat and actually use materials that magically change etc. but the volumetric solution is the best. You can study the fake absorption shader lineked above and how it does it with Light Path Node.