Only multiply light by ambient color if mat update flag set

This is just an idea, and I don't really have enough games to test it properly.

Does not fix the lighting problem in Tales of the World (or affect it at all), nor the different lighting problem in Adventures to Go.  However, it does fix Blade Dancer, which once again shows things.

Kingdom Hearts and several other games still seem to have okay lighting.  The trouble is, I don't have a ton of 3D games.  I think the ambient lighting fixed hair color in Monster Hunter games, certain enemies in some Naruto game(s), and chests in Ghosts and Goblins.  I don't have any of those to test, though.

Also, it's possible this line should be affected (maybe only keeping the alpha?) as well, if this pull is even correct:

```
WRITE(p, "  lowp vec4 lightSum0 = u_ambient * %s + vec4(u_matemissive, 0.0);\n", ambientStr);
```

But, changing that *does* break lighting in games.  This kinda makes me worried this change is not correct.

-[Unknown]