sensor + script
DEF TIME TimeSensor { loop TRUE cycleInterval 5 } #<l++>
DEF COLORS Script {
eventIn SFFloat set_fraction
eventOut SFColor value_changed
url "javascript:
function set_fraction(value) {
if (value < 0.5) value_changed = '0 1 1';
else value_changed = '1 0 0';
}
"
}#<l++>
ROUTE TIME.fraction_changed TO COLORS.set_fraction
ROUTE COLORS.value_changed TO MATERIAL.diffuseColor